Turn off smarty compile check for production
Turn off smarty compile check for production

file:a/index.php -> file:b/index.php
<?php <?php
/* /*
* index.php * index.php
* gitphp: A PHP git repository browser * gitphp: A PHP git repository browser
* Component: Index script * Component: Index script
* *
* Copyright (C) 2006 Christopher Han <xiphux@gmail.com> * Copyright (C) 2006 Christopher Han <xiphux@gmail.com>
*/ */
   
/* /*
* Version * Version
*/ */
include_once('include/version.php'); include_once('include/version.php');
   
/* /*
* Constants * Constants
*/ */
require_once('include/defs.constants.php'); require_once('include/defs.constants.php');
   
/* /*
* Configuration * Configuration
*/ */
require_once('config/gitphp.conf.php'); require_once('config/gitphp.conf.php');
   
$extraoutput = FALSE; $extraoutput = FALSE;
   
/* /*
* Instantiate Smarty * Instantiate Smarty
*/ */
require_once($gitphp_conf['smarty_prefix'] . "Smarty.class.php"); require_once($gitphp_conf['smarty_prefix'] . "Smarty.class.php");
$tpl = new Smarty; $tpl = new Smarty;
if ((!isset($_GET['a'])) || ( if ((!isset($_GET['a'])) || (
($_GET['a'] != "commitdiff_plain") && ($_GET['a'] != "commitdiff_plain") &&
($_GET['a'] != "blob_plain") && ($_GET['a'] != "blob_plain") &&
($_GET['a'] != "blobdiff_plain") && ($_GET['a'] != "blobdiff_plain") &&
($_GET['a'] != "rss") && ($_GET['a'] != "rss") &&
($_GET['a'] != "opml") && ($_GET['a'] != "opml") &&
($_GET['a'] != "snapshot"))) { ($_GET['a'] != "snapshot"))) {
$tpl->load_filter('output','trimwhitespace'); $tpl->load_filter('output','trimwhitespace');
$extraoutput = TRUE; $extraoutput = TRUE;
} }
   
/* /*
* Debug * Debug
*/ */
if ($gitphp_conf['debug']) { if ($gitphp_conf['debug']) {
if ($extraoutput) { if ($extraoutput) {
define('GITPHP_START_TIME', microtime(true)); define('GITPHP_START_TIME', microtime(true));
error_reporting(E_ALL|E_STRICT); error_reporting(E_ALL|E_STRICT);
} }
  }
   
  /*
  * Development
  */
  if (!(isset($gitphp_conf['dev']) && $gitphp_conf['dev'])) {
  $tpl->compile_check = false;
} }
   
/* /*
* Caching * Caching
*/ */
if ($gitphp_conf['cache']) { if ($gitphp_conf['cache']) {
$tpl->caching = 2; $tpl->caching = 2;
if (isset($gitphp_conf['cachelifetime'])) if (isset($gitphp_conf['cachelifetime']))
$tpl->cache_lifetime = $gitphp_conf['cachelifetime']; $tpl->cache_lifetime = $gitphp_conf['cachelifetime'];
if (!(isset($gitphp_conf['cacheexpire']) && ($gitphp_conf['cacheexpire'] === FALSE))) { if (!(isset($gitphp_conf['cacheexpire']) && ($gitphp_conf['cacheexpire'] === FALSE))) {
require_once('include/cache.cache_expire.php'); require_once('include/cache.cache_expire.php');
cache_expire($gitphp_conf['projectroot'], (isset($_GET['p']) ? $_GET['p'] : null), (isset($git_projects) ? $git_projects : null)); cache_expire($gitphp_conf['projectroot'], (isset($_GET['p']) ? $_GET['p'] : null), (isset($git_projects) ? $git_projects : null));
} }
} }
   
/* /*
* Setup global assigns used everywhere (such as header/footer) * Setup global assigns used everywhere (such as header/footer)
*/ */
$tpl->assign("stylesheet",$gitphp_conf['stylesheet']); $tpl->assign("stylesheet",$gitphp_conf['stylesheet']);
$tpl->assign("version",$gitphp_version); $tpl->assign("version",$gitphp_version);
$tpl->assign("pagetitle",$gitphp_conf['title']); $tpl->assign("pagetitle",$gitphp_conf['title']);
if (isset($_GET['p'])) { if (isset($_GET['p'])) {
$tpl->assign("validproject",TRUE); $tpl->assign("validproject",TRUE);
$tpl->assign("project",$_GET['p']); $tpl->assign("project",$_GET['p']);
require_once('include/gitutil.git_project_descr.php'); require_once('include/gitutil.git_project_descr.php');
$tpl->assign("projectdescription",git_project_descr($gitphp_conf['projectroot'],$_GET['p'])); $tpl->assign("projectdescription",git_project_descr($gitphp_conf['projectroot'],$_GET['p']));
if (isset($_GET['a'])) { if (isset($_GET['a'])) {
$tpl->assign("action",$_GET['a']); $tpl->assign("action",$_GET['a']);
$tpl->assign("validaction", TRUE); $tpl->assign("validaction", TRUE);
} }
} }
if (isset($_GET['st'])) if (isset($_GET['st']))
$tpl->assign("currentsearchtype",$_GET['st']); $tpl->assign("currentsearchtype",$_GET['st']);
else else
$tpl->assign("currentsearchtype","commit"); $tpl->assign("currentsearchtype","commit");
if (isset($_GET['s'])) if (isset($_GET['s']))
$tpl->assign("currentsearch",$_GET['s']); $tpl->assign("currentsearch",$_GET['s']);
if (isset($_GET['hb'])) if (isset($_GET['hb']))
$tpl->assign("currentsearchhash",$_GET['hb']); $tpl->assign("currentsearchhash",$_GET['hb']);
else if (isset($_GET['h'])) else if (isset($_GET['h']))
$tpl->assign("currentsearchhash",$_GET['h']); $tpl->assign("currentsearchhash",$_GET['h']);
if ($gitphp_conf['search']) if ($gitphp_conf['search'])
$tpl->assign("enablesearch",TRUE); $tpl->assign("enablesearch",TRUE);
if ($gitphp_conf['filesearch']) if ($gitphp_conf['filesearch'])
$tpl->assign("filesearch",TRUE); $tpl->assign("filesearch",TRUE);
   
   
if (isset($_GET['a']) && $_GET['a'] == "expire") { if (isset($_GET['a']) && $_GET['a'] == "expire") {
require_once('include/cache.cache_expire.php'); require_once('include/cache.cache_expire.php');
require_once('include/display.git_message.php'); require_once('include/display.git_message.php');
cache_expire(null, null, null, true); cache_expire(null, null, null, true);
git_message("Cache expired"); git_message("Cache expired");
} else if (isset($_GET['a']) && $_GET['a'] == "opml") { } else if (isset($_GET['a']) && $_GET['a'] == "opml") {
require_once('include/display.git_opml.php'); require_once('include/display.git_opml.php');
git_opml($gitphp_conf['projectroot'],$git_projects); git_opml($gitphp_conf['projectroot'],$git_projects);
} else if (isset($_GET['a']) && $_GET['a'] == "project_index") { } else if (isset($_GET['a']) && $_GET['a'] == "project_index") {
require_once('include/display.git_project_index.php'); require_once('include/display.git_project_index.php');
git_project_index($gitphp_conf['projectroot'],$git_projects); git_project_index($gitphp_conf['projectroot'],$git_projects);
} else if (isset($_GET['p'])) { } else if (isset($_GET['p'])) {
if (!is_dir($gitphp_conf['projectroot'] . $_GET['p'])) { if (!is_dir($gitphp_conf['projectroot'] . $_GET['p'])) {
$tpl->assign("validproject",FALSE); $tpl->assign("validproject",FALSE);
require_once('include/display.git_message.php'); require_once('include/display.git_message.php');
git_message("No such directory",TRUE); git_message("No such directory",TRUE);
} else if (!is_file($gitphp_conf['projectroot'] . $_GET['p'] . "/HEAD")) { } else if (!is_file($gitphp_conf['projectroot'] . $_GET['p'] . "/HEAD")) {
$tpl->assign("validproject",FALSE); $tpl->assign("validproject",FALSE);
require_once('include/display.git_message.php'); require_once('include/display.git_message.php');
git_message("No such project",TRUE); git_message("No such project",TRUE);
} else { } else {
if (!isset($_GET['a'])) { if (!isset($_GET['a'])) {
require_once('include/display.git_summary.php'); require_once('include/display.git_summary.php');
git_summary($gitphp_conf['projectroot'],$_GET['p']); git_summary($gitphp_conf['projectroot'],$_GET['p']);
} else { } else {
switch ($_GET['a']) { switch ($_GET['a']) {
case "summary": case "summary":
require_once('include/display.git_summary.php'); require_once('include/display.git_summary.php');
git_summary($gitphp_conf['projectroot'],$_GET['p']); git_summary($gitphp_conf['projectroot'],$_GET['p']);
break; break;
case "tree": case "tree":
require_once('include/display.git_tree.php'); require_once('include/display.git_tree.php');
git_tree($gitphp_conf['projectroot'], $_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL), (isset($_GET['f']) ? $_GET['f'] : NULL), (isset($_GET['hb']) ? $_GET['hb'] : NULL)); git_tree($gitphp_conf['projectroot'], $_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL), (isset($_GET['f']) ? $_GET['f'] : NULL), (isset($_GET['hb']) ? $_GET['hb'] : NULL));
break; break;
case "shortlog": case "shortlog":
require_once('include/display.git_shortlog.php'); require_once('include/display.git_shortlog.php');
git_shortlog($gitphp_conf['projectroot'],$_GET['p'],(isset($_GET['h']) ? $_GET['h'] : NULL), (isset($_GET['pg']) ? $_GET['pg'] : NULL)); git_shortlog($gitphp_conf['projectroot'],$_GET['p'],(isset($_GET['h']) ? $_GET['h'] : NULL), (isset($_GET['pg']) ? $_GET['pg'] : NULL));
break; break;
case "log": case "log":
require_once('include/display.git_log.php'); require_once('include/display.git_log.php');
git_log($gitphp_conf['projectroot'],$_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL), (isset($_GET['pg']) ? $_GET['pg'] : NULL)); git_log($gitphp_conf['projectroot'],$_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL), (isset($_GET['pg']) ? $_GET['pg'] : NULL));
break; break;
case "commit": case "commit":
require_once('include/display.git_commit.php'); require_once('include/display.git_commit.php');
git_commit($gitphp_conf['projectroot'],$_GET['p'],$_GET['h']); git_commit($gitphp_conf['projectroot'],$_GET['p'],$_GET['h']);
break; break;
case "commitdiff": case "commitdiff":
require_once('include/display.git_commitdiff.php'); require_once('include/display.git_commitdiff.php');
git_commitdiff($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'], (isset($_GET['hp']) ? $_GET['hp'] : NULL)); git_commitdiff($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'], (isset($_GET['hp']) ? $_GET['hp'] : NULL));
break; break;
case "commitdiff_plain": case "commitdiff_plain":
require_once('include/display.git_commitdiff_plain.php'); require_once('include/display.git_commitdiff_plain.php');
git_commitdiff_plain($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'],(isset($_GET['hp']) ? $_GET['hp'] : NULL)); git_commitdiff_plain($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'],(isset($_GET['hp']) ? $_GET['hp'] : NULL));
break; break;
case "heads": case "heads":
require_once('include/display.git_heads.php'); require_once('include/display.git_heads.php');
git_heads($gitphp_conf['projectroot'],$_GET['p']); git_heads($gitphp_conf['projectroot'],$_GET['p']);
break; break;
case "tags": case "tags":
require_once('include/display.git_tags.php'); require_once('include/display.git_tags.php');
git_tags($gitphp_conf['projectroot'],$_GET['p']); git_tags($gitphp_conf['projectroot'],$_GET['p']);
break; break;
case "rss": case "rss":
require_once('include/display.git_rss.php'); require_once('include/display.git_rss.php');
git_rss($gitphp_conf['projectroot'],$_GET['p']); git_rss($gitphp_conf['projectroot'],$_GET['p']);
break; break;
case "blob": case "blob":
require_once('include/display.git_blob.php'); require_once('include/display.git_blob.php');
git_blob($gitphp_conf['projectroot'],$_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL), (isset($_GET['f']) ? $_GET['f'] : NULL), (isset($_GET['hb']) ? $_GET['hb'] : NULL)); git_blob($gitphp_conf['projectroot'],$_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL), (isset($_GET['f']) ? $_GET['f'] : NULL), (isset($_GET['hb']) ? $_GET['hb'] : NULL));
break; break;
case "blob_plain": case "blob_plain":
require_once('include/display.git_blob_plain.php'); require_once('include/display.git_blob_plain.php');
git_blob_plain($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'],(isset($_GET['f']) ? $_GET['f'] : NULL)); git_blob_plain($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'],(isset($_GET['f']) ? $_GET['f'] : NULL));
break; break;
case "blobdiff": case "blobdiff":
require_once('include/display.git_blobdiff.php'); require_once('include/display.git_blobdiff.php');
git_blobdiff($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'],$_GET['hb'],$_GET['hp'],(isset($_GET['f']) ? $_GET['f'] : NULL)); git_blobdiff($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'],$_GET['hb'],$_GET['hp'],(isset($_GET['f']) ? $_GET['f'] : NULL));
break; break;
case "blobdiff_plain": case "blobdiff_plain":
require_once('include/display.git_blobdiff_plain.php'); require_once('include/display.git_blobdiff_plain.php');
git_blobdiff_plain($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'],$_GET['hb'],$_GET['hp'], (isset($_GET['f']) ? $_GET['f'] : NULL)); git_blobdiff_plain($gitphp_conf['projectroot'],$_GET['p'],$_GET['h'],$_GET['hb'],$_GET['hp'], (isset($_GET['f']) ? $_GET['f'] : NULL));
break; break;
case "snapshot": case "snapshot":
require_once('include/display.git_snapshot.php'); require_once('include/display.git_snapshot.php');
git_snapshot($gitphp_conf['projectroot'],$_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL)); git_snapshot($gitphp_conf['projectroot'],$_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL));
break; break;
case "history": case "history":
require_once('include/display.git_history.php'); require_once('include/display.git_history.php');
git_history($gitphp_conf['projectroot'],$_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL),$_GET['f']); git_history($gitphp_conf['projectroot'],$_GET['p'], (isset($_GET['h']) ? $_GET['h'] : NULL),$_GET['f']);
break; break;
case "search": case "search":
if (isset($_GET['st']) && ($_GET['st'] == 'file')) { if (isset($_GET['st']) && ($_GET['st'] == 'file')) {
require_once('include/display.git_search_files.php'); require_once('include/display.git_search_files.php');
git_search_files($gitphp_conf['projectroot'],$_GET['p'],(isset($_GET['h']) ? $_GET['h'] : NULL),(isset($_GET['s']) ? $_GET['s'] : NULL),(isset($_GET['pg']) ? $_GET['pg'] : 0)); git_search_files($gitphp_conf['projectroot'],$_GET['p'],(isset($_GET['h']) ? $_GET['h'] : NULL),(isset($_GET['s']) ? $_GET['s'] : NULL),(isset($_GET['pg']) ? $_GET['pg'] : 0));
} else { } else {
require_once('include/display.git_search.php'); require_once('include/display.git_search.php');
git_search($gitphp_conf['projectroot'],$_GET['p'],(isset($_GET['h']) ? $_GET['h'] : NULL),(isset($_GET['s']) ? $_GET['s'] : NULL),(isset($_GET['st']) ? $_GET['st'] : "commit"),(isset($_GET['pg']) ? $_GET['pg'] : 0)); git_search($gitphp_conf['projectroot'],$_GET['p'],(isset($_GET['h']) ? $_GET['h'] : NULL),(isset($_GET['s']) ? $_GET['s'] : NULL),(isset($_GET['st']) ? $_GET['st'] : "commit"),(isset($_GET['pg']) ? $_GET['pg'] : 0));
} }
break; break;
case "tag": case "tag":
require_once('include/display.git_tag.php'); require_once('include/display.git_tag.php');
git_tag($gitphp_conf['projectroot'],$_GET['p'],$_GET['h']); git_tag($gitphp_conf['projectroot'],$_GET['p'],$_GET['h']);
break; break;
default: default:
$tpl->assign("validaction", FALSE); $tpl->assign("validaction", FALSE);
require_once('include/display.git_message.php'); require_once('include/display.git_message.php');
git_message("Unknown action", TRUE); git_message("Unknown action", TRUE);
break; break;
} }
} }
} }
} else { } else {
require_once('include/display.git_project_list.php'); require_once('include/display.git_project_list.php');
git_project_list($gitphp_conf['projectroot'], (isset($git_projects) ? $git_projects : null), (isset($_GET['o']) ? $_GET['o'] : "project")); git_project_list($gitphp_conf['projectroot'], (isset($git_projects) ? $git_projects : null), (isset($_GET['o']) ? $_GET['o'] : "project"));
} }
   
if ($gitphp_conf['debug'] && $extraoutput) if ($gitphp_conf['debug'] && $extraoutput)
echo "Execution time: " . round(microtime(true) - GITPHP_START_TIME, 8) . " sec"; echo "Execution time: " . round(microtime(true) - GITPHP_START_TIME, 8) . " sec";
   
?> ?>
   
comments