<?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";
- var $product = "phpfspot";
- var $version = "0.1";
-
- var $base_path = "/var/www/htdocs";
+ var $base_path = "/var/www/phpfspot";
var $web_path = "/phpfspot";
+ /* path to the directory to store the generated thumbnails.
+ this path needs not do be directly reachable via the webserver
+ Default it points to a subdirectory of $base_path.
+ */
+ var $thumb_path = "/var/www/phpfspot/thumbs";
+
+ var $theme_name = "default";
+
+ /* database access via "native" sqlite3 support or via "pdo" */
+ var $db_access = "native";
+
+ /* path to Smarty (http://smarty.php.net) installation. this option
+ should directly point to the Smarty main directory containing the
+ sub directories 'libs', 'misc', 'unit_test', ...
+ the default value '/usr/share/php/smarty' is for Debian GNU/Linux
+ where Smarty is installed through as dpkg.
+ */
+ var $smarty_path = "/usr/share/php/smarty";
+
/* it's enough if this database is readonly for the webserver */
var $fspot_db = "/var/www/f-spot-dbs/photos.db";
/* Usually the photo directory differs between your local F-Spot installation
and your webserver. With this you can advice phpfspot to replace all paths
- (they are stored in F-Spot's sqlite3 database
+ (they are stored in F-Spot's sqlite3 database).
*/
var $path_replace_from = "/home/unki";
- var $path_replace_to = "/var/www/images.netshadow.at";
+ var $path_replace_to = "/var/www/phpfspot/Photos";
/* This is not really a security option - it only hides some present F-Spot
tags from the available-tags-list
*/
var $hide_tags = Array("Favorites", "Hidden", "People", "Places", "Events");
+ /* Show only pictures which are tagged with the following tags.
+ Comment out this option with // if you want to show all tags &
+ pictures.
+ */
+ //var $show_tags = Array("Friends", "Holidays");
+
+ /* 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;
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");
+ $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->thumb_path) || $this->thumb_path == "")
+ $this->showError("Please set \$thumb_path in phpfspot_cfg");
+
+ if(!isset($this->smarty_path) || $this->smarty_path == "")
+ $this->showError("Please set \$smarty_path in phpfspot_cfg");
+
if(!isset($this->fspot_db) || $this->fspot_db == "")
$this->showError("Please set \$fspot_db in phpfspot_cfg");
+ if(!isset($this->db_access) || $this->db_access == "")
+ $this->showError("Please set \$db_access in phpfspot_cfg");
+
if(!isset($this->phpfspot_db) || $this->phpfspot_db == "")
$this->showError("Please set \$phpfspot_db 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)