issue60, make sure provided photo id is numeric
[phpfspot.git] / phpfspot_cfg.php.dist
index 65475531a5e41fd5ebe369abe137f38590aecc36..5b70c9919ffc7403ca10e0b87fe7add3fd19cdc6 100644 (file)
@@ -1,5 +1,26 @@
 <?php
 
+/***************************************************************************
+ *
+ * Copyright (c) by Andreas Unterkircher, unki@netshadow.at
+ * All rights reserved
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ ***************************************************************************/
+
 class PHPFSPOT_CFG {
 
    var $page_title = "phpfspot - dynamic PHP gallery for F-Spot";
@@ -7,21 +28,22 @@ class PHPFSPOT_CFG {
    var $product = "phpfspot";
    var $version = "0.1";
 
-   var $base_path = "/var/www/images.netshadow.at/htdocs";
+   var $base_path = "/var/www/htdocs";
 
    var $web_path = "/phpfspot";
 
+   var $theme_name = "default";
+
    /* it's enough if this database is readonly for the webserver */
-   var $fspot_db = "/var/www/images.netshadow.at/f-spot-dbs/photos.db";
+   var $fspot_db = "/var/www/f-spot-dbs/photos.db";
 
    /* this database MUST be writeable for the webserver. Set the directory
       permissions correctly so phpfspot can create this database for you!!
    */
-   var $phpfspot_db = "/var/www/images.netshadow.at/f-spot-dbs/phpfspot.db";
+   var $phpfspot_db = "/var/www/f-spot-dbs/phpfspot.db";
 
    /* don't touch if you haven't changed the base templates */
    var $thumb_width = "150";
-   var $bubble_width = "200";
    var $photo_width = "640";
    var $mini_width = "100";
 
@@ -44,6 +66,94 @@ class PHPFSPOT_CFG {
    */
    var $hide_tags = Array("Favorites", "Hidden", "People", "Places", "Events");
 
+   /* logging = display || errorlog || logfile */
+   var $logging = "display";
+
+   /* set this if you chose logging = logfile */
+   var $log_file = "phpfspot_err.log";
+
+   /* no need to modified anything below this line */
+   var $error_found = 0;
+
+   public function __construct()
+   {
+      if(!isset($this->page_title) || $this->page_title == "")
+         $this->showError("Please set \$page_title in phpfspot_cfg");
+   
+      if(!isset($this->product) || $this->product == "")
+         $this->showError("Please set \$product in phpfspot_cfg");
+
+      if(!isset($this->version) || $this->version == "")
+         $this->showError("Please set \$version in phpfspot_cfg");
+
+      if(!isset($this->base_path) || $this->base_path == "")
+         $this->this->showError("Please set \$base_path in phpfspot_cfg");
+
+      if(!isset($this->web_path) || $this->web_path == "")
+         $this->showError("Please set \$web_path in phpfspot_cfg");
+
+      if(!isset($this->fspot_db) || $this->fspot_db == "")
+         $this->showError("Please set \$fspot_db in phpfspot_cfg");
+
+      if(!isset($this->phpfspot_db) || $this->phpfspot_db == "")
+         $this->showError("Please set \$phpfspot_db in phpfspot_cfg");
+
+      if(!isset($this->thumb_width) || $this->thumb_width == "")
+         $this->showError("Please set \$thumb_width in phpfspot_cfg");
+
+      if(!isset($this->photo_width) || $this->photo_width == "")
+         $this->showError("Please set \$photo_width in phpfspot_cfg");
+
+      if(!isset($this->mini_width) || $this->mini_width == "")
+         $this->showError("Please set \$mini_width in phpfspot_cfg");
+
+      if(!isset($this->thumbs_per_row) || $this->thumbs_per_row == "")
+         $this->showError("Please set \$thumbs_per_row in phpfspot_cfg");
+
+      if(!isset($this->rows_per_page) || $this->rows_per_page == "")
+         $this->showError("Please set \$rows_per_page in phpfspot_cfg");
+
+      if(!isset($this->path_replace_from) || $this->path_replace_from == "")
+         $this->showError("Please set \$path_replace_from in phpfspot_cfg");
+
+      if(!isset($this->path_replace_to) || $this->path_replace_to == "")
+         $this->showError("Please set \$path_replace_to in phpfspot_cfg");
+
+      if(!isset($this->hide_tags))
+         $this->showError("Please set \$hide_tags in phpfspot_cfg");
+
+      if(!isset($this->theme_name))
+         $this->showError("Please set \$theme_name in phpfspot_cfg");
+
+      if(!isset($this->logging))
+         $this->showError("Please set \$logging in phpfspot_cfg");
+
+      if(isset($this->logging) && $this->logging == 'logfile') {
+
+         if(!isset($this->log_file))
+            $this->showError("Please set \$log_file because you set logging = log_file in phpfspot_cfg");
+
+         if(!is_writeable($this->log_file))
+            $this->showError("The specified \$log_file ". $log_file ." is not writeable!");
+
+      }
+
+      if(isset($this->error_found) && $this->error_found)
+         exit(1);
+
+      /* check for pending slash on web_path */
+      if(!preg_match("/\/$/", $this->web_path))
+         $this->web_path.= "/";
+
+   } // __construct()
+
+   private function showError($text)
+   {
+      print $text ."<br />\n";
+      $this->error_found = 1;
+
+   } // showError()
+
 }
 
 ?>