aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/config_default.inc.php262
-rw-r--r--include/functions_metadata.inc.php42
-rw-r--r--include/page_tail.php21
-rw-r--r--include/scripts.js12
-rw-r--r--include/template.php3
5 files changed, 237 insertions, 103 deletions
diff --git a/include/config_default.inc.php b/include/config_default.inc.php
index 62e4a2782..90d2cabf9 100644
--- a/include/config_default.inc.php
+++ b/include/config_default.inc.php
@@ -43,6 +43,10 @@
* table, other parameters are in config_*.inc.php
*/
+// +-----------------------------------------------------------------------+
+// | misc |
+// +-----------------------------------------------------------------------+
+
// order_by : how to change the order of display for images in a category ?
//
// There are several fields that can order the display :
@@ -67,9 +71,6 @@ $conf['order_by'] = ' ORDER BY date_available DESC, file ASC, id ASC';
// during automated slideshow
$conf['slideshow_period'] = 4;
-// last_days : options for X last days to displays for comments
-$conf['last_days'] = array(1,2,3,10,30,365);
-
// file_ext : file extensions (case sensitive) authorized
$conf['file_ext'] = array('jpg','JPG','png','PNG','gif','GIF','mpg','zip',
'avi','mp3','ogg');
@@ -85,6 +86,106 @@ $conf['top_number'] = 15;
// anti-flood_time : number of seconds between 2 comments : 0 to disable
$conf['anti-flood_time'] = 60;
+// calendar_datefield : date field of table "images" used for calendar
+// catgory
+$conf['calendar_datefield'] = 'date_creation';
+
+// rate : enable feature for rating elements
+$conf['rate'] = true;
+
+// newcat_default_commentable : at creation, must a category be commentable
+// or not ?
+$conf['newcat_default_commentable'] = 'true';
+
+// newcat_default_uploadable : at creation, must a category be uploadable or
+// not ?
+$conf['newcat_default_uploadable'] = 'false';
+
+// newcat_default_visible : at creation, must a category be visible or not ?
+// Warning : if the parent category is invisible, the category is
+// automatically create invisible. (invisible = locked)
+$conf['newcat_default_visible'] = 'true';
+
+// newcat_default_status : at creation, must a category be public or private
+// ? Warning : if the parent category is private, the category is
+// automatically create private.
+$conf['newcat_default_status'] = 'public';
+
+// level_separator : character string used for separating a category level
+// to the sub level. Suggestions : ' / ', ' » ', ' → ', ' - ',
+// ' >'
+$conf['level_separator'] = ' / ';
+
+// paginate_pages_around : on paginate navigation bar, how many pages
+// display before and after the current page ?
+$conf['paginate_pages_around'] = 2;
+
+// tn_width : default width for thumbnails creation
+$conf['tn_width'] = 128;
+
+// tn_height : default height for thumbnails creation
+$conf['tn_height'] = 96;
+
+// show_version : shall the version of PhpWebGallery be displayed at the
+// bottom of each page ?
+$conf['show_version'] = true;
+
+// links : list of external links to add in the menu. An example is the best
+// than a long explanation :
+//
+// $conf['links'] = array(
+// 'http://phpwebgallery.net' => 'PWG website',
+// 'http://forum.phpwebgallery.net' => 'PWG forum',
+// 'http://phpwebgallery.net/doc' => 'PWG wiki'
+// );
+//
+// If the array is empty, the "Links" box won't be displayed on the main
+// page.
+$conf['links'] = array();
+
+// show_thumbnail_caption : on thumbnails page, show thumbnail captions ?
+$conf['show_thumbnail_caption'] = true;
+
+// show_picture_name_on_title : on picture presentation page, show picture
+// name ?
+$conf['show_picture_name_on_title'] = true;
+
+// allow_random_representative : do you wish PhpWebGallery to search among
+// categories elements a new representative at each reload ?
+//
+// If false, an element is randomly or manually chosen to represent its
+// category and remains the representative as long as an admin does not
+// change it.
+//
+// Warning : setting this parameter to true is CPU consuming. Each time you
+// change the value of this parameter from false to true, an administrator
+// must update categories informations in screen [Admin > General >
+// Maintenance].
+$conf['allow_random_representative'] = false;
+
+// allow_html_descriptions : authorize administrators to use HTML in
+// category and element description.
+$conf['allow_html_descriptions'] = true;
+
+// gallery_title : Title at top of each page and for RSS feed
+$conf['gallery_title'] = 'PhpWebGallery demonstration site';
+
+// gallery_description : Short description displayed with gallery title
+$conf['gallery_description'] = 'My photos web site';
+
+// galery_url : URL given in RSS feed
+$conf['gallery_url'] = 'http://demo.phpwebgallery.net';
+
+// prefix_thumbnail : string before filename
+$conf['prefix_thumbnail'] = 'TN-';
+
+// +-----------------------------------------------------------------------+
+// | metadata |
+// +-----------------------------------------------------------------------+
+
+// show_iptc: Show IPTC metadata on picture.php if asked by user
+$conf['show_iptc'] = false;
+
// show_iptc_mapping : is used for showing IPTC metadata on picture.php
// page. For each key of the array, you need to have the same key in the
// $lang array. For example, if my first key is 'iptc_keywords' (associated
@@ -101,6 +202,10 @@ $conf['show_iptc_mapping'] = array(
'iptc_caption' => '2#120'
);
+// use_iptc: Use IPTC data during database synchronization with files
+// metadata
+$conf['use_iptc'] = false;
+
// use_iptc_mapping : in which IPTC fields will PhpWebGallery find image
// information ? This setting is used during metadata synchronisation. It
// associates a phpwebgallery_images column name to a IPTC key
@@ -112,6 +217,10 @@ $conf['use_iptc_mapping'] = array(
'comment' => '2#120'
);
+// show_exif: Show EXIF metadata on picture.php (table or line presentation
+// avalaible)
+$conf['show_exif'] = true;
+
// show_exif_fields : in EXIF fields, you can choose to display fields in
// sub-arrays, for example ['COMPUTED']['ApertureFNumber']. for this, add
// 'COMPUTED;ApertureFNumber' in $conf['show_exif_fields']
@@ -124,17 +233,29 @@ $conf['use_iptc_mapping'] = array(
// for PHP version newer than 4.1.2 :
// $conf['show_exif_fields'] = array('CameraMake','CameraModel','DateTime');
//
-$conf['show_exif_fields'] = array('Make',
- 'Model',
- 'DateTime',
- 'COMPUTED;ApertureFNumber');
+$conf['show_exif_fields'] = array(
+ 'Make',
+ 'Model',
+ 'DateTimeOriginal',
+ 'COMPUTED;ApertureFNumber'
+ );
-// calendar_datefield : date field of table "images" used for calendar
-// catgory
-$conf['calendar_datefield'] = 'date_creation';
+// use_exif: Use EXIF data during database synchronization with files
+// metadata
+$conf['use_exif'] = false;
-// rate : enable feature for rating elements
-$conf['rate'] = true;
+// use_exif_mapping: same behaviour as use_iptc_mapping
+$conf['use_exif_mapping'] = array(
+ 'date_creation' => 'DateTimeOriginal'
+ );
+
+// +-----------------------------------------------------------------------+
+// | sessions |
+// +-----------------------------------------------------------------------+
+
+// authorize_remembering : permits user to stay logged for a long time. It
+// creates a cookie on client side.
+$conf['authorize_remembering'] = true;
// remember_me_length : time of validity for "remember me" cookies, in
// seconds.
@@ -153,9 +274,9 @@ $conf['session_length'] = 3600;
//
$conf['session_id_size'] = 10;
-// info_nb_elements_page : number of elements to display per page on
-// admin/infos_images
-$conf['info_nb_elements_page'] = 5;
+// +-----------------------------------------------------------------------+
+// | debug |
+// +-----------------------------------------------------------------------+
// show_queries : for debug purpose, show queries and execution times
$conf['show_queries'] = false;
@@ -163,75 +284,18 @@ $conf['show_queries'] = false;
// show_gt : display generation time at the bottom of each page
$conf['show_gt'] = true;
-// newcat_default_commentable : at creation, must a category be commentable
-// or not ?
-$conf['newcat_default_commentable'] = 'true';
-
-// newcat_default_uploadable : at creation, must a category be uploadable or
-// not ?
-$conf['newcat_default_uploadable'] = 'false';
-
-// newcat_default_visible : at creation, must a category be visible or not ?
-// Warning : if the parent category is invisible, the category is
-// automatically create invisible. (invisible = locked)
-$conf['newcat_default_visible'] = 'true';
-
-// newcat_default_status : at creation, must a category be public or private
-// ? Warning : if the parent category is private, the category is
-// automatically create private.
-$conf['newcat_default_status'] = 'public';
-
-// level_separator : character string used for separating a category level
-// to the sub level. Suggestions : ' / ', ' » ', ' → ', ' - ',
-// ' >'
-$conf['level_separator'] = ' / ';
-
-// paginate_pages_around : on paginate navigation bar, how many pages
-// display before and after the current page ?
-$conf['paginate_pages_around'] = 2;
-
-// tn_width : default width for thumbnails creation
-$conf['tn_width'] = 128;
-
-// tn_height : default height for thumbnails creation
-$conf['tn_height'] = 96;
-
-// show_version : shall the version of PhpWebGallery be displayed at the
-// bottom of each page ?
-$conf['show_version'] = true;
-
-// links : list of external links to add in the menu. An example is the best
-// than a long explanation :
-//
-// $conf['links'] = array(
-// 'http://phpwebgallery.net' => 'PWG website',
-// 'http://forum.phpwebgallery.net' => 'PWG forum',
-// 'http://phpwebgallery.net/doc' => 'PWG wiki'
-// );
-//
-// If the array is empty, the "Links" box won't be displayed on the main
-// page.
-$conf['links'] = array();
-
-// feed_period : how long between two feed refresh ? Possible values are
-// "hour", "half day", "day", "week", "month".
-$conf['feed_period'] = 'week';
-
-// show_thumbnail_caption : on thumbnails page, show thumbnail captions ?
-$conf['show_thumbnail_caption'] = true;
+// debug_l10n : display a warning message each time an unset language key is
+// accessed
+$conf['debug_l10n'] = false;
-// show_picture_name_on_title : on picture presentation page, show picture
-// name ?
-$conf['show_picture_name_on_title'] = true;
+// +-----------------------------------------------------------------------+
+// | authentication |
+// +-----------------------------------------------------------------------+
// apache_authentication : use Apache authentication as reference instead of
// users table ?
$conf['apache_authentication'] = false;
-// debug_l10n : display a warning message each time an unset language key is
-// accessed
-$conf['debug_l10n'] = false;
-
// users_table : which table is the reference for users ? Can be a different
// table than PhpWebGallery table
$conf['users_table'] = $prefixeTable.'users';
@@ -253,30 +317,30 @@ $conf['pass_convert'] = create_function('$s', 'return md5($s);');
// guest_id : id of the anonymous user
$conf['guest_id'] = 2;
-// allow_random_representative : do you wish PhpWebGallery to search among
-// categories elements a new representative at each reload ?
-//
-// If false, an element is randomly or manually chosen to represent its
-// category and remains the representative as long as an admin does not
-// change it.
-//
-// Warning : setting this parameter to true is CPU consuming. Each time you
-// change the value of this parameter from false to true, an administrator
-// must update categories informations in screen [Admin > General >
-// Maintenance].
-$conf['allow_random_representative'] = false;
+// webmaster_id : webmaster'id.
+$conf['webmaster_id'] = 1;
-// allow_html_descriptions : authorize administrators to use HTML in
-// category and element description.
-$conf['allow_html_descriptions'] = true;
+// +-----------------------------------------------------------------------+
+// | upload |
+// +-----------------------------------------------------------------------+
-// gallery_title : Title at top of each page and for RSS feed
-$conf['gallery_title'] = 'PhpWebGallery demonstration site';
+// upload_maxfilesize: maximum filesize for the uploaded pictures. In
+// kilobytes.
+$conf['upload_maxfilesize'] = 200;
-// gallery_description : Short description displayed with gallery title
-$conf['gallery_description'] = 'My photos web site';
+// upload_maxheight: maximum height authorized for the uploaded images. In
+// pixels.
+$conf['upload_maxheight'] = 800;
-// galery_url : URL given in RSS feed
-$conf['gallery_url'] = 'http://demo.phpwebgallery.net';
+// upload_maxwidth: maximum width authorized for the uploaded images. In
+// kilobytes.
+$conf['upload_maxwidth'] = 800;
+
+// upload_maxheight_thumbnail: maximum height authorized for the uploaded
+// thumbnails
+$conf['upload_maxheight_thumbnail'] = 100;
+// upload_maxwidth_thumbnail: maximum width authorized for the uploaded
+// thumbnails
+$conf['upload_maxwidth_thumbnail'] = 150;
?>
diff --git a/include/functions_metadata.inc.php b/include/functions_metadata.inc.php
index 2708810f1..d03327f60 100644
--- a/include/functions_metadata.inc.php
+++ b/include/functions_metadata.inc.php
@@ -91,4 +91,46 @@ function clean_iptc_value($value)
return $value;
}
+
+/**
+ * returns informations from EXIF metadata, mapping is done at the beginning
+ * of the function
+ *
+ * @param string $filename
+ * @return array
+ */
+function get_exif_data($filename, $map)
+{
+ $result = array();
+
+ if (!function_exists('read_exif_data'))
+ {
+ die('Exif extension not available, admin should disable exif use');
+ }
+
+ // Read EXIF data
+ if ($exif = @read_exif_data($filename))
+ {
+ foreach ($map as $key => $field)
+ {
+ if (strpos($field, ';') === false)
+ {
+ if (isset($exif[$field]))
+ {
+ $result[$key] = $exif[$field];
+ }
+ }
+ else
+ {
+ $tokens = explode(';', $field);
+ if (isset($exif[$tokens[0]][$tokens[1]]))
+ {
+ $result[$key] = $exif[$tokens[0]][$tokens[1]];
+ }
+ }
+ }
+ }
+
+ return $result;
+}
?> \ No newline at end of file
diff --git a/include/page_tail.php b/include/page_tail.php
index 5e4a977e6..33f6900cf 100644
--- a/include/page_tail.php
+++ b/include/page_tail.php
@@ -29,13 +29,11 @@ $template->set_filenames(array('tail'=>'footer.tpl'));
$template->assign_vars(
array(
'VERSION' => $conf['show_version'] ? PHPWG_VERSION : '',
- 'MAIL'=>$conf['mail_webmaster'],
'L_GEN_TIME' => $lang['generation_time'],
'L_SQL_QUERIES_IN' => $lang['sql_queries_in'],
'L_SEND_MAIL' => $lang['send_mail'],
'L_TITLE_MAIL' => $lang['title_send_mail'],
- 'L_WEBMASTER'=>$lang['webmaster'],
'L_POWERED_BY'=>$lang['powered_by']
));
//------------------------------------------------------------- generation time
@@ -56,6 +54,25 @@ if ($conf['show_gt'])
'SQL_TIME' => number_format($page['queries_time'],3,'.',' ').' s'));
}
+//--------------------------------------------------------------------- contact
+
+if (!$user['is_the_guest'])
+{
+ $query = '
+SELECT '.$conf['user_fields']['email'].'
+ FROM '.USERS_TABLE.'
+ WHERE '.$conf['user_fields']['id'].' = '.$conf['webmaster_id'].'
+;';
+ list($email) = mysql_fetch_array(pwg_query($query));
+
+ $template->assign_block_vars(
+ 'contact',
+ array(
+ 'MAIL' => $email
+ )
+ );
+}
+
//
// Generate the page
//
diff --git a/include/scripts.js b/include/scripts.js
index 43fb86644..2550233e6 100644
--- a/include/scripts.js
+++ b/include/scripts.js
@@ -29,4 +29,14 @@ for( i=0; i<len; i++)
function phpWGOpenWindow(theURL,winName,features)
{
window.open(theURL,winName,features);
-} \ No newline at end of file
+}
+
+function popuphelp(url)
+{
+ window.open(
+ url,
+ 'dc_popup',
+ 'alwaysRaised=yes,dependent=yes,toolbar=no,height=420,width=500,menubar=no,resizable=yes,scrollbars=yes,status=no'
+ );
+}
+
diff --git a/include/template.php b/include/template.php
index 14f5d4349..f82937d99 100644
--- a/include/template.php
+++ b/include/template.php
@@ -269,7 +269,8 @@ class Template {
function make_filename($filename)
{
// Check if it's an absolute or relative path.
- if (substr($filename, 0, 1) != '/')
+ // if (substr($filename, 0, 1) != '/')
+ if (preg_match('/^[a-z_]/i', $filename))
{
$filename = $this->root.'/'.$filename;
}