diff options
author | gweltas <gweltas@piwigo.org> | 2004-02-07 11:50:26 +0000 |
---|---|---|
committer | gweltas <gweltas@piwigo.org> | 2004-02-07 11:50:26 +0000 |
commit | 65753539220ba870b738866c425c89d73753c727 (patch) | |
tree | 92e77bf4da8946d051f8d46176fbe1ead900c0d8 | |
parent | 1d9b840cf8421ad06d81035f209149eceb1b357f (diff) |
Template modification
Split of the french language file
git-svn-id: http://piwigo.org/svn/trunk@351 68402e56-0260-453c-a942-63ccdbb3a9ee
-rw-r--r-- | about.php | 18 | ||||
-rw-r--r-- | admin/include/isadmin.inc.php | 2 | ||||
-rw-r--r-- | category.php | 428 | ||||
-rw-r--r-- | common.php | 131 | ||||
-rw-r--r-- | include/config.inc.php | 3 | ||||
-rw-r--r-- | include/functions.inc.php | 62 | ||||
-rw-r--r-- | include/page_header.php | 64 | ||||
-rw-r--r-- | include/page_tail.php | 23 | ||||
-rw-r--r-- | include/template.php | 479 | ||||
-rw-r--r-- | include/user.inc.php | 6 | ||||
-rw-r--r-- | language/francais.php | 556 | ||||
-rw-r--r-- | profile.php | 32 | ||||
-rw-r--r-- | template/default/about.tpl (renamed from template/default/about.vtp) | 16 | ||||
-rw-r--r-- | template/default/category.tpl | 112 | ||||
-rw-r--r-- | template/default/category.vtp | 98 | ||||
-rw-r--r-- | template/default/footer.htm | 1 | ||||
-rw-r--r-- | template/default/footer.tpl | 9 | ||||
-rw-r--r-- | template/default/footer.vtp | 8 | ||||
-rw-r--r-- | template/default/header.htm | 1 | ||||
-rw-r--r-- | template/default/header.tpl | 12 | ||||
-rw-r--r-- | template/default/header.vtp | 13 | ||||
-rw-r--r-- | template/default/htmlfunctions.inc.php | 121 |
22 files changed, 1090 insertions, 1105 deletions
@@ -27,17 +27,17 @@ include_once( $phpwg_root_path.'common.php' ); $title= $lang['about_page_title']; include('include/page_header.php'); -$handle = $vtp->Open( './template/'.$user['template'].'/about.vtp' ); +$template->set_filenames(array('about'=>'about.tpl')); initialize_template(); -$tpl = array('about_title','about_message','about_return'); -templatize_array( $tpl, 'lang', $handle ); -$vtp->setVar( $handle, 'user_template', $user['template'] ); +$template->assign_vars(array( + 'PAGE_TITLE' => $title, + 'L_ABOUT' => $lang['about_message'], + 'L_RETURN' => $lang['about_return'], + 'U_RETURN' => add_session_id('./category.php?'.$_SERVER['QUERY_STRING']) + ) + ); -$url = './category.php?'.$_SERVER['QUERY_STRING']; -$vtp->setVar( $handle, 'back_url', add_session_id( $url ) ); -//----------------------------------------------------------- html code display -$code = $vtp->Display( $handle, 0 ); -echo $code; +$template->pparse('about'); include('include/page_tail.php'); ?>
\ No newline at end of file diff --git a/admin/include/isadmin.inc.php b/admin/include/isadmin.inc.php index 14032c566..9e241eed3 100644 --- a/admin/include/isadmin.inc.php +++ b/admin/include/isadmin.inc.php @@ -20,7 +20,7 @@ include( './admin/include/functions.php' ); $isadmin = true; -include_once( './language/'.$user['language'].'.php' ); +include_once( './language/'.$user['language'].'/lang_admin.php' ); if ( $user['status'] != 'admin' ) { diff --git a/category.php b/category.php index 0b93e6d06..25cf3819c 100644 --- a/category.php +++ b/category.php @@ -1,21 +1,21 @@ <?php -/*************************************************************************** - * category.php * - * ------------------- * - * application : PhpWebGallery 1.3 <http://phpwebgallery.net> * - * author : Pierrick LE GALL <pierrick@z0rglub.com> * - * * - * $Id$ - * * - ***************************************************************************/ - -/*************************************************************************** - * * - * 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; * - * * - ***************************************************************************/ +// +-----------------------------------------------------------------------+ +// | category.php | +// +-----------------------------------------------------------------------+ +// | application : PhpWebGallery <http://phpwebgallery.net> | +// | branch : 1.4 | +// | author : Pierrick LE GALL <pierrick@z0rglub.com> | +// +-----------------------------------------------------------------------+ +// | file : $RCSfile$ +// | last update : $Date$ +// | last modifier : $Author$ +// | revision : $Revision$ +// +-----------------------------------------------------------------------+ +// | 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; | +// +-----------------------------------------------------------------------+ + //----------------------------------------------------------- include $phpwg_root_path = './'; include_once( $phpwg_root_path.'common.php' ); @@ -108,154 +108,153 @@ $page['structure'] = update_structure( $page['structure'] ); $title = $page['title']; include('include/page_header.php'); -$handle = $vtp->Open( './template/'.$user['template'].'/category.vtp' ); +$template->set_filenames( array('category'=>'category.tpl') ); initialize_template(); -$tpl = array( - 'categories','hint_category','sub-cat','images_available','total', - 'title_menu','nb_image_category','send_mail','title_send_mail', - 'connected_user','recent_image','days', - 'favorite_cat_hint','favorite_cat','stats','most_visited_cat_hint', - 'most_visited_cat','recent_cat','recent_cat_hint','upload_picture', - 'comments' ); -templatize_array( $tpl, 'lang', $handle ); - -$tpl = array( 'mail_webmaster','webmaster','top_number'); -templatize_array( $tpl, 'conf', $handle ); - -$tpl = array( 'short_period','long_period','lien_collapsed', 'username' ); -templatize_array( $tpl, 'user', $handle ); - -$tpl = array( 'navigation_bar','cat_comment','cat_nb_images' ); -templatize_array( $tpl, 'page', $handle ); - -// special global template vars -$vtp->setGlobalVar( $handle, 'icon_short', get_icon( time() ) ); -$icon_long = get_icon( time() - ( $user['short_period'] * 24 * 60 * 60 + 1 ) ); -$vtp->setGlobalVar( $handle, 'icon_long', $icon_long ); -$nb_total_pictures = count_user_total_images(); -$vtp->setGlobalVar( $handle, 'nb_total_pictures',$nb_total_pictures ); - -//------------------------------------------------------------- categories menu -$vtp->setVar( $handle, 'home_url', add_session_id( 'category.php' ) ); -// normal categories + +//-------------------------------------------------------------- category title +$cat_title = $lang['no_category']; +if ( isset ( $page['cat'] ) ) +{ + if ( is_numeric( $page['cat'] ) ) + { + $cat_title = get_cat_display_name( $page['cat_name'], '<br />', + 'font-style:italic;' ); + } + else + { + if ( $page['cat'] == 'search' ) + { + $page['title'].= ' : <span style="font-style:italic;">'; + $page['title'].= $_GET['search']."</span>"; + } + $page['title'] = replace_space( $page['title'] ); + } +} + +$template->assign_vars(array( + 'NB_PICTURE' => count_user_total_images(), + 'TITLE' => $cat_title, + 'USERNAME' => $user['username'], + + 'S_TOP'=>$conf['top_number'], + 'S_SHORT_PERIOD'=>$user['short_period'], + 'S_LONG_PERIOD'=>$user['long_period'], + 'S_WEBMASTER'=>$conf['webmaster'], + 'S_MAIL'=>$conf['mail_webmaster'], + + 'L_CATEGORIES' => $lang['categories'], + 'L_HINT_CATEGORY' => $lang['hint_category'], + 'L_SUBCAT' => $lang['sub-cat'], + 'L_IMG_AVAILABLE' => $lang['images_available'], + 'L_TOTAL' => $lang['total'], + 'L_FAVORITE_HINT' => $lang['favorite_cat_hint'], + 'L_FAVORITE' => $lang['favorite_cat'], + 'L_STATS' => $lang['stats'], + 'L_MOST_VISITED_HINT' => $lang['most_visited_cat_hint'], + 'L_MOST_VISITED' => $lang['most_visited_cat'], + 'L_RECENT_HINT' => $lang['recent_cat_hint'], + 'L_RECENT' => $lang['recent_cat'], + 'L_SUMMARY' => $lang['title_menu'], + 'L_UPLOAD' => $lang['upload_picture'], + 'L_COMMENT' => $lang['comments'], + 'L_NB_IMG' => $lang['nb_image_category'], + 'L_USER' => $lang['connected_user'], + 'L_RECENT_IMAGE' => $lang['recent_image'], + 'L_DAYS' => $lang['days'], + 'L_SEND_MAIL' => $lang['send_mail'], + 'L_TITLE_MAIL' => $lang['title_send_mail'], + + 'T_COLLAPSED' => $user['lien_collapsed'], + 'T_SHORT'=>get_icon( time() ), + 'T_LONG'=>get_icon( time() - ( $user['short_period'] * 24 * 60 * 60 + 1 ) ), + + 'U_HOME' => add_session_id( 'category.php' ), + 'U_FAVORITE' => add_session_id( './category.php?cat=fav&expand='.$page['expand'] ), + 'U_MOST_VISITED'=>add_session_id( './category.php?cat=most_visited&expand='.$page['expand'] ), + 'U_RECENT'=>add_session_id( './category.php?cat=recent&expand='.$page['expand'] ) + ) +); + foreach ( $page['structure'] as $category ) { // display category is a function relative to the template - display_category( $category, ' ', $handle ); + display_category( $category, ' '); } -// favorites cat + +// favorites management if ( !$user['is_the_guest'] ) { - $vtp->addSession( $handle, 'favorites' ); - $url = './category.php?cat=fav&expand='.$page['expand']; - $vtp->setVar( $handle, 'favorites.url', add_session_id( $url ) ); // searching the number of favorite picture $query = 'SELECT COUNT(*) AS count'; - $query.= ' FROM '.FAVORITES_TABLE; - $query.= ' WHERE user_id = '.$user['id'].';'; + $query.= ' FROM '.FAVORITES_TABLE.' WHERE user_id = '.$user['id'].';'; $result = mysql_query( $query ); $row = mysql_fetch_array( $result ); - $vtp->setVar( $handle, 'favorites.nb_favorites', $row['count'] ); - $vtp->closeSession( $handle, 'favorites' ); + $template->assign_block_vars('favorites', array ('NB_FAV'=>$row['count']) ); } -// most visited pictures category -$url = './category.php?cat=most_visited&expand='.$page['expand']; -$vtp->setGlobalVar( $handle, 'most_visited_url', add_session_id( $url ) ); -// recent pictures -$url = './category.php?cat=recent&expand='.$page['expand']; -$vtp->setGlobalVar( $handle, 'recent_url', add_session_id( $url ) ); //--------------------------------------------------------------------- summary -$vtp->addSession( $handle, 'summary' ); -$vtp->setVar( $handle, 'summary.url', './identification.php' ); +$sum_title = ''; +$sum_name=''; +$sum_url = ''; if ( !$user['is_the_guest'] ) { - $vtp->setVar( $handle, 'summary.title', '' ); - $vtp->setVar( $handle, 'summary.name',replace_space($lang['change_login'])); + $sum_name=replace_space($lang['logout']); + $sum_url = 'category.php?act=logout'; } else { - $vtp->setVar( $handle, 'summary.title', $lang['hint_login'] ); - $vtp->setVar( $handle, 'summary.name', replace_space( $lang['menu_login'])); + $sum_title = $lang['hint_login']; + $sum_name=replace_space( $lang['menu_login']); + $sum_url = 'identification.php'; } -$vtp->closeSession( $handle, 'summary' ); -// links for registered users +$template->assign_block_vars('summary', array( + 'TITLE'=>$sum_title, + 'NAME'=>$sum_name, + 'U_SUMMARY'=>add_session_id( $sum_url ), + ) +); + +// customization link if ( !$user['is_the_guest'] ) { - // logout link - $vtp->addSession( $handle, 'summary' ); - $vtp->setVar( $handle, 'summary.url', './category.php?act=logout' ); - $vtp->setVar( $handle, 'summary.title', '' ); - $vtp->setVar( $handle, 'summary.name', replace_space( $lang['logout'] ) ); - $vtp->closeSession( $handle, 'summary' ); - // customization link - $vtp->addSession( $handle, 'summary' ); - $url = './profile.php'; - if (isset($page['cat']) && isset($page['expand'])) - $url.='?cat='.$page['cat'].'&expand='.$page['expand']; - if ( isset($page['cat']) && $page['cat'] == 'search' ) - { - $url.= '&search='.$_GET['search'].'&mode='.$_GET['mode']; - } - $vtp->setVar( $handle, 'summary.url', add_session_id( $url ) ); - $vtp->setVar( $handle, 'summary.title', $lang['hint_customize'] ); - $vtp->setVar( $handle, 'summary.name', replace_space( $lang['customize'] ) ); - $vtp->closeSession( $handle, 'summary' ); + $template->assign_block_vars('summary', array( + 'TITLE'=>$lang['hint_customize'], + 'NAME'=>$lang['customize'], + 'U_SUMMARY'=>add_session_id('profile.php?'.str_replace( '&', '&', $_SERVER['QUERY_STRING'] )), + )); } + // search link -$vtp->addSession( $handle, 'summary' ); -$vtp->setVar( $handle, 'summary.url', add_session_id( './search.php' ) ); -$vtp->setVar( $handle, 'summary.title', $lang['hint_search'] ); -$vtp->setVar( $handle, 'summary.name', replace_space( $lang['search'] ) ); -$vtp->closeSession( $handle, 'summary' ); +$template->assign_block_vars('summary', array( +'TITLE'=>$lang['hint_search'], +'NAME'=>$lang['search'], +'U_SUMMARY'=>add_session_id( 'search.php' ), +)); + // comments link -$vtp->addSession( $handle, 'summary' ); -$vtp->setVar( $handle, 'summary.url', add_session_id( './comments.php' ) ); -$vtp->setVar( $handle, 'summary.title', $lang['hint_comments'] ); -$vtp->setVar( $handle, 'summary.name', replace_space( $lang['comments'] ) ); -$vtp->closeSession( $handle, 'summary' ); +$template->assign_block_vars('summary', array( +'TITLE'=>$lang['hint_comments'], +'NAME'=>$lang['comments'], +'U_SUMMARY'=>add_session_id( 'comments.php' ), +)); + // about link -$vtp->addSession( $handle, 'summary' ); -$vtp->setVar( $handle, 'summary.url', './about.php?'. - str_replace( '&', '&', $_SERVER['QUERY_STRING'] ) ); -$vtp->setVar( $handle, 'summary.title', $lang['hint_about'] ); -$vtp->setVar( $handle, 'summary.name', replace_space( $lang['about'] ) ); -$vtp->closeSession( $handle, 'summary' ); +$template->assign_block_vars('summary', array( +'TITLE'=>$lang['hint_about'], +'NAME'=>$lang['about'], +'U_SUMMARY'=>add_session_id( 'about.php?'.str_replace( '&', '&', $_SERVER['QUERY_STRING'] ) ) +)); + // administration link if ( $user['status'] == 'admin' ) { - $vtp->addSession( $handle, 'summary' ); - $vtp->setVar( $handle, 'summary.url', - add_session_id( './admin.php' ) ); - $vtp->setVar( $handle, 'summary.title', $lang['hint_admin'] ); - $vtp->setVar( $handle, 'summary.name', replace_space( $lang['admin'] ) ); - $vtp->closeSession( $handle, 'summary' ); -} -//-------------------------------------------------------------- category title -if ( isset ( $page['cat'] ) ) -{ - if ( is_numeric( $page['cat'] ) ) - { - $cat_title = get_cat_display_name( $page['cat_name'], '<br />', - 'font-style:italic;' ); - $vtp->setGlobalVar( $handle, "cat_title", $cat_title ); - } - else - { - if ( $page['cat'] == 'search' ) - { - $page['title'].= ' : <span style="font-style:italic;">'; - $page['title'].= $_GET['search']."</span>"; - } - $page['title'] = replace_space( $page['title'] ); - $vtp->setGlobalVar( $handle, "cat_title", $page['title'] ); - } -} -else -{ - $vtp->setGlobalVar( $handle, "cat_title", - replace_space( $lang['no_category'] ) ); + $template->assign_block_vars('summary', array( + 'TITLE'=>$lang['hint_admin'], + 'NAME'=>$lang['admin'], + 'U_SUMMARY'=>add_session_id( 'admin.php' ) + )); } + //------------------------------------------------------------------ thumbnails -if ( isset( $page['cat'] ) and $page['cat_nb_images'] != 0 ) +if ( isset( $page['cat'] ) && $page['cat_nb_images'] != 0 ) { $array_cat_directories = array(); @@ -269,12 +268,13 @@ if ( isset( $page['cat'] ) and $page['cat_nb_images'] != 0 ) $query.= ';'; $result = mysql_query( $query ); - $vtp->addSession( $handle, 'thumbnails' ); - $vtp->addSession( $handle, 'line' ); + $template->assign_block_vars('thumbnails', array()); + // iteration counter to use a new <tr> every "$nb_image_line" pictures - $cell_number = 1; + $cell_number = 0; // iteration counter to be sure not to create too much lines in the table - $line_number = 1; + $line_number = 0; + while ( $row = mysql_fetch_array( $result ) ) { // retrieving the storage dir of the picture @@ -315,16 +315,27 @@ if ( isset( $page['cat'] ) and $page['cat_nb_images'] != 0 ) // date of availability for creation icon list( $year,$month,$day ) = explode( '-', $row['date_available'] ); $date = mktime( 0, 0, 0, $month, $day, $year ); - // sending vars to display - $vtp->addSession( $handle, 'thumbnail' ); - $vtp->setVar( $handle, 'thumbnail.url', add_session_id( $url_link ) ); - $vtp->setVar( $handle, 'thumbnail.src', $thumbnail_url ); - $vtp->setVar( $handle, 'thumbnail.alt', $row['file'] ); - $vtp->setVar( $handle, 'thumbnail.title', $thumbnail_title ); - $vtp->setVar( $handle, 'thumbnail.name', $name ); - $vtp->setVar( $handle, 'thumbnail.icon', get_icon( $date ) ); - - if ( $conf['show_comments'] and $user['show_nb_comments'] ) + + // sending vars to display + if (!$cell_number && ( $line_number< $user['nb_line_page'])) + { + $template->assign_block_vars('thumbnails.line', array()); + $cell_number = 0; + $line_number++; + } + if ( $cell_number++ == $user['nb_image_line'] -1) $cell_number = 0; + + $template->assign_block_vars('thumbnails.line.thumbnail', array( + 'IMAGE'=>$thumbnail_url, + 'IMAGE_ALT'=>$row['file'], + 'IMAGE_TITLE'=>$thumbnail_title, + 'IMAGE_NAME'=>$name, + 'IMAGE_TS'=>get_icon( $date ), + + 'U_IMG_LINK'=>add_session_id( $url_link ) + )); + + if ( $conf['show_comments'] && $user['show_nb_comments'] ) { $vtp->addSession( $handle, 'nb_comments' ); $query = 'SELECT COUNT(*) AS nb_comments'; @@ -335,41 +346,21 @@ if ( isset( $page['cat'] ) and $page['cat_nb_images'] != 0 ) $vtp->setVar( $handle, 'nb_comments.nb', $row['nb_comments'] ); $vtp->closeSession( $handle, 'nb_comments' ); } - - $vtp->closeSession( $handle, 'thumbnail' ); - - if ( $cell_number++ == $user['nb_image_line'] ) - { - // creating a new line - $vtp->closeSession( $handle, 'line' ); - // the number of the next cell is 1 - $cell_number = 1; - // we only create a new line if it does not exceed the maximum line - // per page for the logged user - if ( $line_number++ < $user['nb_line_page'] ) - { - $vtp->addSession( $handle, 'line' ); - } - } } - $vtp->closeSession( $handle, 'thumbnails' ); } //-------------------------------------------------------------- empty category -elseif ( ( isset( $page['cat'] ) - and is_numeric( $page['cat'] ) - and $page['cat_nb_images'] == 0 - and $page['plain_structure'][$page['cat']]['nb_sub_categories'] > 0) - or (!isset($_GET['cat']))) +else { - $vtp->addSession( $handle, 'thumbnails' ); - $vtp->addSession( $handle, 'line' ); - $subcats=array(); if (isset($page['cat'])) $subcats = get_non_empty_subcat_ids( $page['cat'] ); else $subcats = get_non_empty_subcat_ids( '' ); - $cell_number = 1; + $cell_number = 0; $i = 0; - foreach ( $subcats as $subcat_id => $non_empty_id ) { + + $template->assign_block_vars('thumbnails', array()); + + foreach ( $subcats as $subcat_id => $non_empty_id ) + { $name = '<img src="'.$user['lien_collapsed'].'" style="border:none;"'; $name.= ' alt=">"/> '; $name.= '[ <span style="font-weight:bold;">'; @@ -420,79 +411,66 @@ elseif ( ( isset( $page['cat'] ) $date = $page['plain_structure'][$subcat_id]['date_last']; // sending vars to display - $vtp->addSession( $handle, 'thumbnail' ); - $vtp->setVar( $handle, 'thumbnail.url', add_session_id( $url_link ) ); - $vtp->setVar( $handle, 'thumbnail.src', $thumbnail_link ); - $vtp->setVar( $handle, 'thumbnail.alt', $image_row['file'] ); - $vtp->setVar( $handle, 'thumbnail.title', $thumbnail_title ); - $vtp->setVar( $handle, 'thumbnail.name', $name ); - $vtp->setVar( $handle, 'thumbnail.icon', get_icon( $date ) ); - $vtp->closeSession( $handle, 'thumbnail' ); - - if ( $cell_number++ == $user['nb_image_line'] ) + if (!$cell_number && $i < count( $subcats )) { - $vtp->closeSession( $handle, 'line' ); - $cell_number = 1; - // we open a new line if the subcat was not the last one - if ( $i++ < count( $subcats ) - 1 ) - { - $vtp->addSession( $handle, 'line' ); - } + $template->assign_block_vars('thumbnails.line', array()); + $cell_number = 0; + $i++; } + if ( $cell_number++ == $user['nb_image_line'] -1) $cell_number = 0; + + $template->assign_block_vars('thumbnails.line.thumbnail', array( + 'IMAGE'=>$thumbnail_link, + 'IMAGE_ALT'=>$image_row['file'], + 'IMAGE_TITLE'=>$thumbnail_title, + 'IMAGE_NAME'=>$name, + 'IMAGE_TS'=>get_icon( $date ), + + 'U_IMG_LINK'=>add_session_id( $url_link ) + )); } - if ( $i < count( $subcats ) - 1 ) - { - $vtp->closeSession( $handle, 'line' ); - } - $vtp->closeSession( $handle, 'thumbnails' ); } //------------------------------------------------------- category informations if ( isset ( $page['cat'] ) ) { - $vtp->addSession( $handle, 'cat_infos' ); - // navigation bar - if ( $page['navigation_bar'] != '' ) - { - $vtp->addSession( $handle, 'navigation' ); - $vtp->closeSession( $handle, 'navigation' ); - } - // category comment - if ( isset( $page['comment'] ) and $page['comment'] != '' ) - { - $vtp->addSession( $handle, 'comment' ); - $vtp->setVar( $handle, 'comment.cat_comment', $page['comment'] ); - $vtp->closeSession( $handle, 'comment' ); - } + $cat_name=''; // total number of pictures in the category if ( is_numeric( $page['cat'] ) ) { - $vtp->setVar( $handle, 'cat_infos.cat_name', - get_cat_display_name( $page['cat_name'], ' - ', - 'font-style:italic;' ) ); + $cat_name=get_cat_display_name( $page['cat_name'],' - ','font-style:italic;' ); // upload a picture in the category if ( $page['cat_site_id'] == 1 and $conf['upload_available'] and $page['cat_uploadable'] ) { - $vtp->addSession( $handle, 'upload' ); $url = './upload.php?cat='.$page['cat'].'&expand='.$page['expand']; - $vtp->setVar( $handle, 'upload.url', add_session_id( $url ) ); - $vtp->closeSession( $handle, 'upload' ); + $template->assign_block_vars('upload',array('U_UPLOAD'=>add_session_id( $url ))); } } else { - $vtp->setVar( $handle, 'cat_infos.cat_name', $page['title'] ); + $cat_name= $page['title']; + } + $template->assign_block_vars('cat_infos',array( + 'CAT_NAME'=>$cat_name, + 'NB_IMG_CAT' => $page['cat_nb_images'] + )); + + // navigation bar + if ( $page['navigation_bar'] != '' ) + { + $template->assign_block_vars('cat_infos.navigation',array('NAV_BAR' => $page['navigation_bar'])); + } + // category comment + if ( isset( $page['comment'] ) and $page['comment'] != '' ) + { + $template->assign_block_vars('cat_infos.navigation',array('COMMENTS' => $page['cat_comment'])); } - - $vtp->closeSession( $handle, 'cat_infos' ); } //------------------------------------------------------------ log informations pwg_log( 'category', $page['title'] ); mysql_close(); -//----------------------------------------------------------- html code display -$code = $vtp->Display( $handle, 0 ); -echo $code; +$template->pparse('category'); include('include/page_tail.php'); ?>
\ No newline at end of file diff --git a/common.php b/common.php index 017749bae..9c30982f9 100644 --- a/common.php +++ b/common.php @@ -30,65 +30,65 @@ set_magic_quotes_runtime(0); // Disable magic_quotes_runtime // if( !get_magic_quotes_gpc() ) { - if( is_array($HTTP_GET_VARS) ) - { - while( list($k, $v) = each($HTTP_GET_VARS) ) - { - if( is_array($HTTP_GET_VARS[$k]) ) - { - while( list($k2, $v2) = each($HTTP_GET_VARS[$k]) ) - { - $HTTP_GET_VARS[$k][$k2] = addslashes($v2); - } - @reset($HTTP_GET_VARS[$k]); - } - else - { - $HTTP_GET_VARS[$k] = addslashes($v); - } + if( is_array($HTTP_GET_VARS) ) + { + while( list($k, $v) = each($HTTP_GET_VARS) ) + { + if( is_array($HTTP_GET_VARS[$k]) ) + { + while( list($k2, $v2) = each($HTTP_GET_VARS[$k]) ) + { + $HTTP_GET_VARS[$k][$k2] = addslashes($v2); } - @reset($HTTP_GET_VARS); + @reset($HTTP_GET_VARS[$k]); + } + else + { + $HTTP_GET_VARS[$k] = addslashes($v); + } } - - if( is_array($HTTP_POST_VARS) ) + @reset($HTTP_GET_VARS); + } + + if( is_array($HTTP_POST_VARS) ) + { + while( list($k, $v) = each($HTTP_POST_VARS) ) { - while( list($k, $v) = each($HTTP_POST_VARS) ) + if( is_array($HTTP_POST_VARS[$k]) ) + { + while( list($k2, $v2) = each($HTTP_POST_VARS[$k]) ) { - if( is_array($HTTP_POST_VARS[$k]) ) - { - while( list($k2, $v2) = each($HTTP_POST_VARS[$k]) ) - { - $HTTP_POST_VARS[$k][$k2] = addslashes($v2); - } - @reset($HTTP_POST_VARS[$k]); - } - else - { - $HTTP_POST_VARS[$k] = addslashes($v); - } + $HTTP_POST_VARS[$k][$k2] = addslashes($v2); } - @reset($HTTP_POST_VARS); - } + @reset($HTTP_POST_VARS[$k]); + } + else + { + $HTTP_POST_VARS[$k] = addslashes($v); + } + } + @reset($HTTP_POST_VARS); + } - if( is_array($HTTP_COOKIE_VARS) ) - { - while( list($k, $v) = each($HTTP_COOKIE_VARS) ) - { - if( is_array($HTTP_COOKIE_VARS[$k]) ) - { - while( list($k2, $v2) = each($HTTP_COOKIE_VARS[$k]) ) - { - $HTTP_COOKIE_VARS[$k][$k2] = addslashes($v2); - } - @reset($HTTP_COOKIE_VARS[$k]); - } - else - { - $HTTP_COOKIE_VARS[$k] = addslashes($v); - } - } - @reset($HTTP_COOKIE_VARS); - } + if( is_array($HTTP_COOKIE_VARS) ) + { + while( list($k, $v) = each($HTTP_COOKIE_VARS) ) + { + if( is_array($HTTP_COOKIE_VARS[$k]) ) + { + while( list($k2, $v2) = each($HTTP_COOKIE_VARS[$k]) ) + { + $HTTP_COOKIE_VARS[$k][$k2] = addslashes($v2); + } + @reset($HTTP_COOKIE_VARS[$k]); + } + else + { + $HTTP_COOKIE_VARS[$k] = addslashes($v); + } + } + @reset($HTTP_COOKIE_VARS); + } } // @@ -111,6 +111,7 @@ if( !defined("PHPWG_INSTALLED") ) include($phpwg_root_path . 'include/constants.php'); include($phpwg_root_path . 'include/functions.inc.php'); +include($phpwg_root_path . 'include/template.php'); include($phpwg_root_path . 'include/vtemplate.class.php'); include($phpwg_root_path . 'include/config.inc.php'); @@ -128,19 +129,19 @@ mysql_select_db( $cfgBase ) // if( getenv('HTTP_X_FORWARDED_FOR') != '' ) { - $client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR ); + $client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR ); - if ( preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", getenv('HTTP_X_FORWARDED_FOR'), $ip_list) ) - { - $private_ip = array('/^0\./', '/^127\.0\.0\.1/', '/^192\.168\..*/', '/^172\.16\..*/', '/^10.\.*/', '/^224.\.*/', '/^240.\.*/'); - $client_ip = preg_replace($private_ip, $client_ip, $ip_list[1]); - } + if ( preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", getenv('HTTP_X_FORWARDED_FOR'), $ip_list) ) + { + $private_ip = array('/^0\./', '/^127\.0\.0\.1/', '/^192\.168\..*/', '/^172\.16\..*/', '/^10.\.*/', '/^224.\.*/', '/^240.\.*/'); + $client_ip = preg_replace($private_ip, $client_ip, $ip_list[1]); + } } else { - $client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR ); + $client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR ); } -//$user_ip = encode_ip($client_ip); +$user_ip = encode_ip($client_ip); // // Setup forum wide options, if this fails @@ -150,7 +151,7 @@ else $sql = "SELECT * FROM " . CONFIG_TABLE; if( !($result = mysql_query($sql)) ) { - die("Could not query config information"); + die("Could not query config information"); } $row =mysql_fetch_array($result); @@ -191,12 +192,6 @@ if (file_exists('install.php') && !DEBUG) include($phpwg_root_path . 'include/user.inc.php'); -// calculation of the number of picture to display per page -$user['nb_image_page'] = $user['nb_image_line'] * $user['nb_line_page']; - -$isadmin = false; -if ($user['status'] == 'admin') $isadmin =true; -include_once( './language/'.$user['language'].'.php' ); // displaying the username in the language of the connected user, instead of // "guest" as you can find in the database if ( $user['is_the_guest'] ) $user['username'] = $lang['guest']; diff --git a/include/config.inc.php b/include/config.inc.php index ada80a650..74cfb70c5 100644 --- a/include/config.inc.php +++ b/include/config.inc.php @@ -45,4 +45,7 @@ $conf['top_number'] = 10; $conf['anti-flood_time'] = 60; // seconds between 2 comments : 0 to disable $conf['max_LOV_categories'] = 50; +$conf['default_lang'] = 'francais'; +$conf['default_style'] = 'default'; + ?>
\ No newline at end of file diff --git a/include/functions.inc.php b/include/functions.inc.php index 67416291a..edaa1b057 100644 --- a/include/functions.inc.php +++ b/include/functions.inc.php @@ -257,13 +257,9 @@ function get_languages( $rep_language ) { while ( $file = readdir ( $opendir ) ) { - if ( is_file ( $rep_language.$file ) - and $file != "index.php" - and strrchr ( $file, "." ) == ".php" ) + if ( is_dir ( $rep_language.$file )&& !substr_count($file,'.') ) { - $languages[$i++] = - substr ( $file, 0, strlen ( $file ) - - strlen ( strrchr ( $file, "." ) ) ); + $languages[$i++] =$file; } } } @@ -454,4 +450,58 @@ function pwg_debug( $string ) $debug.= $count_queries.' queries] : '.$string; $debug.= "\n"; } + +// +// Initialise user settings on page load +function init_userprefs($userdata) +{ + global $conf, $template, $lang, $phpwg_root_path; + + $style = $conf['default_style']; + if ( !$userdata['is_the_guest'] ) + { + if ( !empty($userdata['language'])) + { + $conf['default_lang'] = $userdata['language']; + } + if ( !empty($userdata['template'])) + { + $style = $userdata['template']; + } + } + + if ( !file_exists(@realpath($phpwg_root_path . 'language/' . $conf['default_lang'] . '/lang_main.php')) ) + { + $conf['default_lang'] = 'english'; + } + + include_once($phpwg_root_path . 'language/' . $conf['default_lang'] . '/lang_main.php'); + $template= setup_style($style); + + return; +} + +function setup_style($style) +{ + global $phpwg_root_path; + + $template_path = 'template/' ; + $template_name = $style ; + + $template = new Template($phpwg_root_path . $template_path . $template_name); + return $template; +} + +function encode_ip($dotquad_ip) +{ + $ip_sep = explode('.', $dotquad_ip); + return sprintf('%02x%02x%02x%02x', $ip_sep[0], $ip_sep[1], $ip_sep[2], $ip_sep[3]); +} + +function decode_ip($int_ip) +{ + $hexipbang = explode('.', chunk_split($int_ip, 2, '.')); + return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.' . hexdec($hexipbang[2]) . '.' . hexdec($hexipbang[3]); +} + ?>
\ No newline at end of file diff --git a/include/page_header.php b/include/page_header.php index 68bb17993..45382e4e1 100644 --- a/include/page_header.php +++ b/include/page_header.php @@ -1,30 +1,58 @@ <?php +/*************************************************************************** + * page_header.php * + * ------------------ * + * application : PhpWebGallery 1.4 <http://phpwebgallery.net> * + * author : Pierrick LE GALL <pierrick@z0rglub.com> * + * * + * $Id$ + * * + ***************************************************************************/ +/*************************************************************************** + * * + * 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; * + * * + ***************************************************************************/ + // // Start output of page // -$vtp = new VTemplate; -$handle = $vtp->Open( './template/'.$user['template'].'/header.vtp' ); -$vtp->setGlobalVar( $handle, 'charset', $lang['charset'] ); -$vtp->setGlobalVar( $handle, 'style', './template/'.$user['template'].'/'.$user['template'].'.css'); +$template->set_filenames(array('header'=>'header.tpl')); - // refresh - if ( isset( $refresh ) && $refresh >0 && isset($url_link)) +$template->assign_vars(array( + 'S_CONTENT_ENCODING' => $lang['charset'], + 'T_STYLE' => './template/'.$user['template'].'/'.$user['template'].'.css', + 'PAGE_TITLE' => $title) + ); + +// refresh +if ( isset( $refresh ) && $refresh >0 && isset($url_link)) { - $vtp->addSession( $handle, 'refresh' ); - $vtp->setVar( $handle, 'refresh.time', $refresh ); $url = $url_link.'&slideshow='.$refresh; - $vtp->setVar( $handle, 'refresh.url', add_session_id( $url ) ); - $vtp->closeSession( $handle, 'refresh' ); + $template->assign_vars(array( + 'S_REFRESH_TIME' => $refresh, + 'U_REFRESH' => add_session_id( $url ) + ) + ); + $template->assign_block_vars('refresh', array()); } - -$vtp->setGlobalVar( $handle, 'title', $title ); -$vtp->setVarF( $handle, 'header', './template/'.$user['template'].'/header.htm' ); -// -// Generate the page -// +// Work around for "current" Apache 2 + PHP module which seems to not +// cope with private cache control setting +if (!empty($HTTP_SERVER_VARS['SERVER_SOFTWARE']) && strstr($HTTP_SERVER_VARS['SERVER_SOFTWARE'], 'Apache/2')) +{ + header ('Cache-Control: no-cache, pre-check=0, post-check=0, max-age=0'); +} +else +{ + header ('Cache-Control: private, pre-check=0, post-check=0, max-age=0'); +} +header ('Expires: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT'); +header ('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); -$code = $vtp->Display( $handle, 0 ); -echo $code; +$template->pparse('header'); +$vtp=new VTemplate; ?>
\ No newline at end of file diff --git a/include/page_tail.php b/include/page_tail.php index d4548f170..e960ab983 100644 --- a/include/page_tail.php +++ b/include/page_tail.php @@ -1,19 +1,26 @@ <?php -$handle = $vtp->Open( './template/'.$user['template'].'/footer.vtp' ); +$template->set_filenames(array('tail'=>'footer.tpl')); //------------------------------------------------------------- generation time + $time = get_elapsed_time( $t2, get_moment() ); -$vtp->setGlobalVar( $handle, 'time', $time ); -$vtp->setGlobalVar( $handle, 'generation_time', $lang['generation_time'] ); -$vtp->setGlobalVar( $handle, 'version', $conf['version'] ); -$vtp->setGlobalVar( $handle, 'site_url', $conf['site_url'] ); -$vtp->setVarF( $handle, 'footer', './template/'.$user['template'].'/footer.htm' ); +$template->assign_vars(array( + 'L_GEN_TIME' => $lang['generation_time'], + 'S_TIME' => $time, + 'S_VERSION' => $conf['version'], + 'U_SITE' => add_session_id( $conf['site_url'] ) + ) + ); + +if (DEBUG) +{ + $template->assign_block_vars('debug', array()); +} // // Generate the page // -$code = $vtp->Display( $handle, 0 ); -echo $code; +$template->pparse('tail'); ?>
\ No newline at end of file diff --git a/include/template.php b/include/template.php new file mode 100644 index 000000000..22543ab7f --- /dev/null +++ b/include/template.php @@ -0,0 +1,479 @@ +<?php +/*************************************************************************** + * template.php + * ------------------- + * begin : Saturday, Feb 13, 2001 + * copyright : (C) 2001 The phpBB Group + * email : support@phpbb.com + * + * $Id$ + * + * + ***************************************************************************/ + +/*************************************************************************** + * + * 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 + * (at your option) any later version. + * + ***************************************************************************/ + +/** + * Template class. By Nathan Codding of the phpBB group. + * The interface was originally inspired by PHPLib templates, + * and the template file formats are quite similar. + * + */ + +class Template { + var $classname = "Template"; + + // variable that holds all the data we'll be substituting into + // the compiled templates. + // ... + // This will end up being a multi-dimensional array like this: + // $this->_tpldata[block.][iteration#][child.][iteration#][child2.][iteration#][variablename] == value + // if it's a root-level variable, it'll be like this: + // $this->_tpldata[.][0][varname] == value + var $_tpldata = array(); + + // Hash of filenames for each template handle. + var $files = array(); + + // Root template directory. + var $root = ""; + + // this will hash handle names to the compiled code for that handle. + var $compiled_code = array(); + + // This will hold the uncompiled code for that handle. + var $uncompiled_code = array(); + + /** + * Constructor. Simply sets the root dir. + * + */ + function Template($root = ".") + { + $this->set_rootdir($root); + } + + /** + * Destroys this template object. Should be called when you're done with it, in order + * to clear out the template data so you can load/parse a new template set. + */ + function destroy() + { + $this->_tpldata = array(); + } + + /** + * Sets the template root directory for this Template object. + */ + function set_rootdir($dir) + { + if (!is_dir($dir)) + { + return false; + } + + $this->root = $dir; + return true; + } + + /** + * Sets the template filenames for handles. $filename_array + * should be a hash of handle => filename pairs. + */ + function set_filenames($filename_array) + { + if (!is_array($filename_array)) + { + return false; + } + + reset($filename_array); + while(list($handle, $filename) = each($filename_array)) + { + $this->files[$handle] = $this->make_filename($filename); + } + + return true; + } + + + /** + * Load the file for the handle, compile the file, + * and run the compiled code. This will print out + * the results of executing the template. + */ + function pparse($handle) + { + if (!$this->loadfile($handle)) + { + die("Template->pparse(): Couldn't load template file for handle $handle"); + } + + // actually compile the template now. + if (!isset($this->compiled_code[$handle]) || empty($this->compiled_code[$handle])) + { + // Actually compile the code now. + $this->compiled_code[$handle] = $this->compile($this->uncompiled_code[$handle]); + } + + // Run the compiled code. + //echo ("<!-- ".$this->compiled_code[$handle]." -->"); + eval($this->compiled_code[$handle]); + return true; + } + + /** + * Inserts the uncompiled code for $handle as the + * value of $varname in the root-level. This can be used + * to effectively include a template in the middle of another + * template. + * Note that all desired assignments to the variables in $handle should be done + * BEFORE calling this function. + */ + function assign_var_from_handle($varname, $handle) + { + if (!$this->loadfile($handle)) + { + die("Template->assign_var_from_handle(): Couldn't load template file for handle $handle"); + } + + // Compile it, with the "no echo statements" option on. + $_str = ""; + $code = $this->compile($this->uncompiled_code[$handle], true, '_str'); + + // evaluate the variable assignment. + eval($code); + // assign the value of the generated variable to the given varname. + $this->assign_var($varname, $_str); + + return true; + } + + /** + * Block-level variable assignment. Adds a new block iteration with the given + * variable assignments. Note that this should only be called once per block + * iteration. + */ + function assign_block_vars($blockname, $vararray) + { + if (strstr($blockname, '.')) + { + // Nested block. + $blocks = explode('.', $blockname); + $blockcount = sizeof($blocks) - 1; + $str = '$this->_tpldata'; + for ($i = 0; $i < $blockcount; $i++) + { + $str .= '[\'' . $blocks[$i] . '.\']'; + eval('$lastiteration = sizeof(' . $str . ') - 1;'); + $str .= '[' . $lastiteration . ']'; + } + // Now we add the block that we're actually assigning to. + // We're adding a new iteration to this block with the given + // variable assignments. + $str .= '[\'' . $blocks[$blockcount] . '.\'][] = $vararray;'; + + // Now we evaluate this assignment we've built up. + eval($str); + } + else + { + // Top-level block. + // Add a new iteration to this block with the variable assignments + // we were given. + $this->_tpldata[$blockname . '.'][] = $vararray; + } + + return true; + } + + /** + * Root-level variable assignment. Adds to current assignments, overriding + * any existing variable assignment with the same name. + */ + function assign_vars($vararray) + { + reset ($vararray); + while (list($key, $val) = each($vararray)) + { + $this->_tpldata['.'][0][$key] = $val; + } + + return true; + } + + /** + * Root-level variable assignment. Adds to current assignments, overriding + * any existing variable assignment with the same name. + */ + function assign_var($varname, $varval) + { + $this->_tpldata['.'][0][$varname] = $varval; + + return true; + } + + + /** + * Generates a full path+filename for the given filename, which can either + * be an absolute name, or a name relative to the rootdir for this Template + * object. + */ + function make_filename($filename) + { + // Check if it's an absolute or relative path. + if (substr($filename, 0, 1) != '/') + { + $filename = realpath($this->root . '/' . $filename); + } + + if (!file_exists($filename)) + { + die("Template->make_filename(): Error - file $filename does not exist"); + } + + return $filename; + } + + + /** + * If not already done, load the file for the given handle and populate + * the uncompiled_code[] hash with its code. Do not compile. + */ + function loadfile($handle) + { + // If the file for this handle is already loaded and compiled, do nothing. + if (isset($this->uncompiled_code[$handle]) && !empty($this->uncompiled_code[$handle])) + { + return true; + } + + // If we don't have a file assigned to this handle, die. + if (!isset($this->files[$handle])) + { + die("Template->loadfile(): No file specified for handle $handle"); + } + + $filename = $this->files[$handle]; + + $str = implode("", @file($filename)); + if (empty($str)) + { + die("Template->loadfile(): File $filename for handle $handle is empty"); + } + + $this->uncompiled_code[$handle] = $str; + + return true; + } + + + + /** + * Compiles the given string of code, and returns + * the result in a string. + * If "do_not_echo" is true, the returned code will not be directly + * executable, but can be used as part of a variable assignment + * for use in assign_code_from_handle(). + */ + function compile($code, $do_not_echo = false, $retvar = '') + { + // replace \ with \\ and then ' with \'. + $code = str_replace('\\', '\\\\', $code); + $code = str_replace('\'', '\\\'', $code); + + // change template varrefs into PHP varrefs + + // This one will handle varrefs WITH namespaces + $varrefs = array(); + preg_match_all('#\{(([a-z0-9\-_]+?\.)+?)([a-z0-9\-_]+?)\}#is', $code, $varrefs); + $varcount = sizeof($varrefs[1]); + for ($i = 0; $i < $varcount; $i++) + { + $namespace = $varrefs[1][$i]; + $varname = $varrefs[3][$i]; + $new = $this->generate_block_varref($namespace, $varname); + + $code = str_replace($varrefs[0][$i], $new, $code); + } + + // This will handle the remaining root-level varrefs + $code = preg_replace('#\{([a-z0-9\-_]*?)\}#is', '\' . ( ( isset($this->_tpldata[\'.\'][0][\'\1\']) ) ? $this->_tpldata[\'.\'][0][\'\1\'] : \'\' ) . \'', $code); + + // Break it up into lines. + $code_lines = explode("\n", $code); + + $block_nesting_level = 0; + $block_names = array(); + $block_names[0] = "."; + + // Second: prepend echo ', append ' . "\n"; to each line. + $line_count = sizeof($code_lines); + for ($i = 0; $i < $line_count; $i++) + { + $code_lines[$i] = chop($code_lines[$i]); + if (preg_match('#<!-- BEGIN (.*?) -->#', $code_lines[$i], $m)) + { + $n[0] = $m[0]; + $n[1] = $m[1]; + + // Added: dougk_ff7-Keeps templates from bombing if begin is on the same line as end.. I think. :) + if ( preg_match('#<!-- END (.*?) -->#', $code_lines[$i], $n) ) + { + $block_nesting_level++; + $block_names[$block_nesting_level] = $m[1]; + if ($block_nesting_level < 2) + { + // Block is not nested. + $code_lines[$i] = '$_' . $n[1] . '_count = ( isset($this->_tpldata[\'' . $n[1] . '.\']) ) ? sizeof($this->_tpldata[\'' . $n[1] . '.\']) : 0;'; + $code_lines[$i] .= "\n" . 'for ($_' . $n[1] . '_i = 0; $_' . $n[1] . '_i < $_' . $n[1] . '_count; $_' . $n[1] . '_i++)'; + $code_lines[$i] .= "\n" . '{'; + } + else + { + // This block is nested. + + // Generate a namespace string for this block. + $namespace = implode('.', $block_names); + // strip leading period from root level.. + $namespace = substr($namespace, 2); + // Get a reference to the data array for this block that depends on the + // current indices of all parent blocks. + $varref = $this->generate_block_data_ref($namespace, false); + // Create the for loop code to iterate over this block. + $code_lines[$i] = '$_' . $n[1] . '_count = ( isset(' . $varref . ') ) ? sizeof(' . $varref . ') : 0;'; + $code_lines[$i] .= "\n" . 'for ($_' . $n[1] . '_i = 0; $_' . $n[1] . '_i < $_' . $n[1] . '_count; $_' . $n[1] . '_i++)'; + $code_lines[$i] .= "\n" . '{'; + } + + // We have the end of a block. + unset($block_names[$block_nesting_level]); + $block_nesting_level--; + $code_lines[$i] .= '} // END ' . $n[1]; + $m[0] = $n[0]; + $m[1] = $n[1]; + } + else + { + // We have the start of a block. + $block_nesting_level++; + $block_names[$block_nesting_level] = $m[1]; + if ($block_nesting_level < 2) + { + // Block is not nested. + $code_lines[$i] = '$_' . $m[1] . '_count = ( isset($this->_tpldata[\'' . $m[1] . '.\']) ) ? sizeof($this->_tpldata[\'' . $m[1] . '.\']) : 0;'; + $code_lines[$i] .= "\n" . 'for ($_' . $m[1] . '_i = 0; $_' . $m[1] . '_i < $_' . $m[1] . '_count; $_' . $m[1] . '_i++)'; + $code_lines[$i] .= "\n" . '{'; + } + else + { + // This block is nested. + + // Generate a namespace string for this block. + $namespace = implode('.', $block_names); + // strip leading period from root level.. + $namespace = substr($namespace, 2); + // Get a reference to the data array for this block that depends on the + // current indices of all parent blocks. + $varref = $this->generate_block_data_ref($namespace, false); + // Create the for loop code to iterate over this block. + $code_lines[$i] = '$_' . $m[1] . '_count = ( isset(' . $varref . ') ) ? sizeof(' . $varref . ') : 0;'; + $code_lines[$i] .= "\n" . 'for ($_' . $m[1] . '_i = 0; $_' . $m[1] . '_i < $_' . $m[1] . '_count; $_' . $m[1] . '_i++)'; + $code_lines[$i] .= "\n" . '{'; + } + } + } + else if (preg_match('#<!-- END (.*?) -->#', $code_lines[$i], $m)) + { + // We have the end of a block. + unset($block_names[$block_nesting_level]); + $block_nesting_level--; + $code_lines[$i] = '} // END ' . $m[1]; + } + else + { + // We have an ordinary line of code. + if (!$do_not_echo) + { + $code_lines[$i] = 'echo \'' . $code_lines[$i] . '\' . "\\n";'; + } + else + { + $code_lines[$i] = '$' . $retvar . '.= \'' . $code_lines[$i] . '\' . "\\n";'; + } + } + } + + // Bring it back into a single string of lines of code. + $code = implode("\n", $code_lines); + return $code ; + + } + + + /** + * Generates a reference to the given variable inside the given (possibly nested) + * block namespace. This is a string of the form: + * ' . $this->_tpldata['parent'][$_parent_i]['$child1'][$_child1_i]['$child2'][$_child2_i]...['varname'] . ' + * It's ready to be inserted into an "echo" line in one of the templates. + * NOTE: expects a trailing "." on the namespace. + */ + function generate_block_varref($namespace, $varname) + { + // Strip the trailing period. + $namespace = substr($namespace, 0, strlen($namespace) - 1); + + // Get a reference to the data block for this namespace. + $varref = $this->generate_block_data_ref($namespace, true); + // Prepend the necessary code to stick this in an echo line. + + // Append the variable reference. + $varref .= '[\'' . $varname . '\']'; + + $varref = '\' . ( ( isset(' . $varref . ') ) ? ' . $varref . ' : \'\' ) . \''; + + return $varref; + + } + + + /** + * Generates a reference to the array of data values for the given + * (possibly nested) block namespace. This is a string of the form: + * $this->_tpldata['parent'][$_parent_i]['$child1'][$_child1_i]['$child2'][$_child2_i]...['$childN'] + * + * If $include_last_iterator is true, then [$_childN_i] will be appended to the form shown above. + * NOTE: does not expect a trailing "." on the blockname. + */ + function generate_block_data_ref($blockname, $include_last_iterator) + { + // Get an array of the blocks involved. + $blocks = explode(".", $blockname); + $blockcount = sizeof($blocks) - 1; + $varref = '$this->_tpldata'; + // Build up the string with everything but the last child. + for ($i = 0; $i < $blockcount; $i++) + { + $varref .= '[\'' . $blocks[$i] . '.\'][$_' . $blocks[$i] . '_i]'; + } + // Add the block reference for the last child. + $varref .= '[\'' . $blocks[$blockcount] . '.\']'; + // Add the iterator for the last child if requried. + if ($include_last_iterator) + { + $varref .= '[$_' . $blocks[$blockcount] . '_i]'; + } + + return $varref; + } + +} + +?> diff --git a/include/user.inc.php b/include/user.inc.php index d25f26b7a..711cc6c9e 100644 --- a/include/user.inc.php +++ b/include/user.inc.php @@ -116,4 +116,10 @@ foreach ( $infos as $info ) { // special for $user['restrictions'] array $user['restrictions'] = explode( ',', $user['forbidden_categories'] ); if ( $user['restrictions'][0] == '' ) $user['restrictions'] = array(); +$isadmin = false; +if ($user['status'] == 'admin') $isadmin =true; +// calculation of the number of picture to display per page +$user['nb_image_page'] = $user['nb_image_line'] * $user['nb_line_page']; + +init_userprefs($user); ?>
\ No newline at end of file diff --git a/language/francais.php b/language/francais.php deleted file mode 100644 index 342695618..000000000 --- a/language/francais.php +++ /dev/null @@ -1,556 +0,0 @@ -<?php -/*************************************************************************** - * francais.php * - * ------------------- * - * application : PhpWebGallery 1.4 <http://phpwebgallery.net> * - * author : Pierrick LE GALL <pierrick@z0rglub.com> * - * * - * $Id$ - * * - ***************************************************************************/ - -/*************************************************************************** - * * - * 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; * - * * - ***************************************************************************/ - -$lang['only_members'] = 'Seuls les membres du site peuvent accéder à cette page'; -$lang['invalid_pwd'] = 'le mot de passe rentré n\'est pas valide'; -$lang['access_forbiden'] = 'Vous n\'êtes pas autorisé à aller dans cette section'; -$lang['submit'] = 'Valider'; -$lang['login'] = 'login'; -$lang['password'] = 'mot de passe'; -$lang['new'] = 'nouveau'; -$lang['delete'] = 'supprimer'; -$lang['category'] = 'catégorie'; -$lang['thumbnail'] = 'miniature'; -$lang['date'] = 'date'; -$lang['diapo_default_page_title'] = 'Aucune catégorie séléctionnée'; -$lang['thumbnails'] = 'Miniatures'; -$lang['categories'] = 'Rubriques'; -$lang['hint_category'] = 'affiche les images à la racine de cette catégorie'; -$lang['total_images'] = 'total'; -$lang['title_menu'] = 'Sommaire'; -$lang['change_login'] = 'changer de login'; -$lang['hint_login'] = 's'identifier permet de personnaliser l'apparence du site'; -$lang['logout'] = 'se déconnecter'; -$lang['customize'] = 'personnalisation'; -$lang['hint_customize'] = 'personnaliser votre affichage'; -$lang['hint_search'] = 'lancer une recherche'; -$lang['search'] = 'rechercher'; -$lang['favorite_cat'] = 'favoris'; -$lang['favorite_cat_hint'] = 'afficher vos favoris'; -$lang['about'] = 'à propos'; -$lang['hint_about'] = 'des infos sur PhpWebGallery...'; -$lang['admin'] = 'admin'; -$lang['hint_admin'] = 'accessible uniquement aux administrateurs'; -$lang['no_category'] = 'Aucune rubrique n\'est selectionnée,<br />veuillez en choisir une dans le menu.'; -$lang['page_number'] = 'numéro de page'; -$lang['previous_page'] = 'Précédente'; -$lang['next_page'] = 'Suivante'; -$lang['nb_image_category'] = 'nombre d\'images dans la catégorie'; -$lang['recent_image'] = 'image datant de moins de'; -$lang['days'] = 'jours'; -$lang['send_mail'] = 'Une remarque : mailez moi'; -$lang['title_send_mail'] = '[phpwebgallery] une remarque sur ton site'; -$lang['sub-cat'] = 'sous-catégories'; -$lang['images_available'] = 'images dans cette catégorie'; -$lang['total'] = 'images'; -$lang['upload_picture'] = 'Ajouter une image'; -$lang['registration_date'] = 'enregistré le'; -$lang['creation_date'] = 'créé le'; -$lang['comment'] = 'commentaire'; -$lang['author'] = 'auteur'; -$lang['size'] = 'dimensions'; -$lang['filesize'] = 'poids'; -$lang['file'] = 'fichier'; -$lang['generation_time'] = 'Page générée en'; -$lang['favorites'] = 'Favoris'; -$lang['search_result'] = 'Résultats de la recherche'; -$lang['about_page_title'] = 'A propos de PhpWebGallery'; -$lang['about_title'] = 'A propos...'; -$lang['about_return'] = 'Retour'; -$lang['ident_page_title'] = 'Identification'; -$lang['ident_title'] = 'Identification'; -$lang['ident_register'] = 'S\'enregistrer'; -$lang['ident_forgotten_password'] = 'Mot de passe oublié ?'; -$lang['ident_guest_visit'] = 'Parcourir la galerie en tant que visiteur'; -$lang['customize_page_title'] = 'Personnalisation'; -$lang['customize_title'] = 'Personnalisation'; -$lang['customize_nb_image_per_row'] = 'nombre d\'images par ligne'; -$lang['customize_nb_row_per_page'] = 'nombre de lignes par page'; -$lang['customize_language'] = 'langue'; -$lang['maxwidth'] = 'largeur maximum des images'; -$lang['maxheight'] = 'hauteur maximum des images'; -$lang['err_maxwidth'] = 'la largeur maximum des images doit être un entier supérieur à 50'; -$lang['err_maxheight'] = 'la hauteur maximum des images doit être un entier supérieur à 50'; -$lang['previous_image'] = 'Précédent'; -$lang['next_image'] = 'Suivant'; -$lang['back'] = 'Cliquez sur l\'image pour revenir à la page des miniatures'; -$lang['info_image_title'] = 'Informations'; -$lang['link_info_image'] = 'Modifier les informations de cette image'; -$lang['true_size'] = 'Taille réelle'; -$lang['comments_title'] = 'Commentaires des visiteurs du site'; -$lang['comments_del'] = 'supprimer ce message'; -$lang['comments_add'] = 'Ajouter un commentaire'; -$lang['month'][1] = 'Janvier'; -$lang['month'][2] = 'Février'; -$lang['month'][3] = 'Mars'; -$lang['month'][4] = 'Avril'; -$lang['month'][5] = 'Mai'; -$lang['month'][6] = 'Juin'; -$lang['month'][7] = 'Juillet'; -$lang['month'][8] = 'Août'; -$lang['month'][9] = 'Septembre'; -$lang['month'][10] = 'Octobre'; -$lang['month'][11] = 'Novembre'; -$lang['month'][12] = 'Décembre'; -$lang['day'][0] = 'Dimanche'; -$lang['day'][1] = 'Lundi'; -$lang['day'][2] = 'Mardi'; -$lang['day'][3] = 'Mercredi'; -$lang['day'][4] = 'Jeudi'; -$lang['day'][5] = 'Vendredi'; -$lang['day'][6] = 'Samedi'; -$lang['add_favorites_alt'] = 'Ajouter aux favoris'; -$lang['add_favorites_hint'] = 'ajouter cette image à vos favoris'; -$lang['del_favorites_alt'] = 'Retirer des favoris'; -$lang['del_favorites_hint'] = 'supprimer cette image de vos favoris'; -$lang['register_page_title'] = 'Enregistrement'; -$lang['register_title'] = 'Enregistrement'; -$lang['reg_err_login1'] = 'veuillez rentrer un pseudo'; -$lang['reg_err_login2'] = 'le pseudo ne doit pas se terminer par un espace'; -$lang['reg_err_login3'] = 'le pseudo ne doit pas commencer par un espace'; -$lang['reg_err_login4'] = 'le pseudo ne doit pas comporter les caractère " et \''; -$lang['reg_err_login5'] = 'ce pseudo est déjà utilisé'; -$lang['reg_err_pass'] = 'veuillez retaper le mot de passe'; -$lang['reg_confirm'] = 'confirmer'; -$lang['reg_err_mail_address'] = 'l\'adresse mail doit être de la forme xxx@yyy.eee (exemple : jack@altern.org)'; -$lang['search_title'] = 'Recherche'; -$lang['search_field_search'] = 'Rechercher'; -$lang['search_return_main_page'] = 'Retour à la page des miniatures'; -$lang['upload_forbidden'] = 'On ne peut pas ajouter d\'image dans cette catégorie'; -$lang['upload_file_exists'] = 'Une image du même nom existe déjà'; -$lang['upload_filenotfound'] = 'vous devez choisir un fichier image pour la photo'; -$lang['upload_cannot_upload'] = 'impossible d\'uploader la photo sur le serveur'; -$lang['upload_title'] = 'Ajouter une image'; -$lang['upload_advise'] = 'Choisissez une image à placer dans la catégorie : '; -$lang['upload_advise_thumbnail'] = 'Optionnel, mais recommandé : Choisissez la miniature à associer à '; -$lang['upload_advise_filesize'] = 'le poids de l\'image ne doit pas dépasser : '; -$lang['upload_advise_width'] = 'la largeur de l\'image ne doit pas dépasser : '; -$lang['upload_advise_height'] = 'la hauteur de l\'image ne doit pas dépasser : '; -$lang['upload_advise_filetype'] = 'l\'image doit être au format jpg, gif ou png'; -$lang['upload_err_username'] = 'le nom de l\'utilisateur doit être renseigné'; -$lang['upload_username'] = 'Nom d\'utilisateur'; -$lang['upload_successful'] = 'Image uploadée avec succès, un administrateur validera celle-ci dès que possible.'; -// new or modified in release 1.3 -$lang['charset'] = 'iso-8859-1'; -$lang['no'] = 'non'; -$lang['yes'] = 'oui'; -$lang['guest'] = 'visiteur'; -$lang['mail_address'] = 'adresse mail'; -$lang['public'] = 'publique'; -$lang['private'] = 'privée'; -$lang['add'] = 'ajouter'; -$lang['dissociate'] = 'dissocier'; -$lang['mandatory'] = 'obligatoire'; -$lang['err_date'] = 'date erronée'; -$lang['picture'] = 'image'; -$lang['IP'] = 'IP'; -$lang['close'] = 'fermer'; -$lang['open'] = 'ouvrir'; -$lang['keywords'] = 'mots-clefs'; -$lang['errors_title'] = 'Erreurs'; -$lang['infos_title'] = 'Informations'; -$lang['default'] = 'défaut'; -$lang['comments'] = 'commentaires'; -$lang['category_representative'] = 'représentant'; -$lang['title_comments'] = 'Commentaires des visiteurs'; -$lang['stats_last_days'] = 'derniers jours'; -$lang['menu_login'] = 'se connecter'; -$lang['connected_user'] = 'utilisateur connecté'; -$lang['hint_comments'] = 'Voir les derniers commentaires des visiteurs'; -$lang['stats'] = 'statistiques'; -$lang['most_visited_cat_hint'] = 'affiche les images les plus visitées'; -$lang['most_visited_cat'] = 'plus vues'; -$lang['best_rated_cat_hint'] = 'affiche les images les mieux notées'; -$lang['best_rated_cat'] = 'mieux notées'; -$lang['recent_cat_hint'] = 'affiche les images les plus récentes'; -$lang['recent_cat'] = 'plus récentes'; -$lang['recent_cat_title'] = 'Images récentes'; -$lang['visited'] = 'visité'; -$lang['times'] = 'fois'; -$lang['customize_expand'] = 'développer toutes les catégories'; -$lang['customize_show_nb_comments'] = 'montrer le nombre de commentaires'; -$lang['customize_short_period'] = 'période courte'; -$lang['customize_long_period'] = 'période longue'; -$lang['customize_template'] = 'template'; -$lang['err_periods'] = 'les périodes doivent être des entiers'; -$lang['err_periods_2'] = 'les périodes doivent être supérieures à 0, la période longue doit être plus grande que la période courte'; -$lang['create_cookie'] = 'créer un cookie'; -$lang['customize_day'] = 'jour'; -$lang['customize_week'] = 'semaine'; -$lang['customize_month'] = 'mois'; -$lang['customize_year'] = 'an'; -$lang['slideshow'] = 'diaporama'; -$lang['period_seconds'] = 'secondes par image'; -$lang['slideshow_stop'] = 'stopper le diaporama'; -$lang['comment_added'] = 'Votre commentaire a été enregistré'; -$lang['comment_to_validate'] = 'Un administrateur doit valider votre commentaire pour qu\'il soit visible'; -$lang['comment_anti-flood'] = 'Système anti-flood : attendez un moment avant de déposer un message'; -$lang['comment_user_exists'] = 'Ce pseudo appartient à un autre utilisateur'; -$lang['invalid_search'] = 'Les mots recherchés doivent comporter plus de 3 caractères et ne doivent pas inclure de caractères de ponctuation'; -$lang['search_mode_or'] = 'au moins un mot'; -$lang['search_mode_and'] = 'tous les mots'; -$lang['search_comments'] = 'séparer les différents mots avec un espace'; -$lang['upload_name'] = 'Nom de l\'image'; -$lang['upload_author'] = 'Auteur (eg "Pierrick LE GALL")'; -$lang['upload_creation_date'] = 'Date de création (JJ/MM/AAAA)'; -$lang['upload_comment'] = 'Commentaire'; -$lang['mail_hello'] = 'Bonjour,'; -$lang['mail_new_upload_subject'] = 'Nouvelle image sur le site'; -$lang['mail_new_upload_content'] = 'Une nouvelle image a été placée sur la galerie. Elle est en attente de validation. RDV dans la section d\'administration pour valider ou supprimer cette image.'; -$lang['mail_new_comment_subject'] = 'Nouveau commentaire sur le site'; -$lang['mail_new_comment_content'] = 'Un nouveau commentaire a été posté sur la galerie. Si vous avez activé la validation des commentaires, il faut d\'abord valider le commentaire dans la zone d\'administration pour le voir apparaître.'."\n\n".'Vous avez accès aux derniers commentaires dans la zone d\'administration.'; -if (isset($conf)) -$lang['about_message'] = '<div style="text-align:center;font-weigh:bold;">Informations sur le PhpWebGallery</div> -<ul> - <li>Ce site utilise la version '.$conf['version'].' de <a href="'.$conf['site_url'].'" style="text-decoration:underline">PhpWebGallery</a>. PhpWebGallery est une application web permettant de créer simplement une galerie d\'images en ligne.</li> - <li>D\'un point de vue technique, PhpWebGallery est entièrement développé en PHP (l\'elePHPant) avec une base de données MySQL(le mySQreuiL).</li> - <li>Si vous avez des suggestions ou des commentaires, n\'hésitez pas à visiter le site de <a href="'.$conf['site_url'].'" style="text-decoration:underline">PhpWebGallery</a> et son <a href="'.$conf['forum_url'].'" style="text-decoration:underline">forum</a>.</li> -</ul>'; -$lang['customize_theme'] = 'theme de l\'interface'; - -//-------------------------------------------------------------- administration -if ( $isadmin ) -{ - $lang['title_liste_users'] = 'Liste des utilisateurs'; - $lang['title_history'] = 'Historique'; - $lang['title_update'] = 'Mise à jour de la base de données'; - $lang['title_configuration'] = 'Configuration de PhpWebGallery'; - $lang['title_instructions'] = 'Instructions'; - $lang['title_categories'] = 'Gestion des catégories'; - $lang['title_edit_cat'] = 'Editer une catégorie'; - $lang['title_info_images'] = 'Modifier les informations sur les images d\'une catégorie'; - $lang['title_thumbnails'] = 'Création des miniatures'; - $lang['title_thumbnails_2'] = 'pour'; - $lang['title_default'] = 'Administration de PhpWebGallery'; - $lang['menu_title'] = 'Administration'; - $lang['menu_config'] = 'Configuration'; - $lang['menu_users'] = 'Utilisateurs'; - $lang['menu_add_user'] = 'ajout'; - $lang['menu_list_user'] = 'liste'; - $lang['menu_categories'] = 'Catégories'; - $lang['menu_update'] = 'MaJ base d\'images'; - $lang['menu_thumbnails'] = 'Miniatures'; - $lang['menu_history'] = 'Historique'; - $lang['menu_instructions'] = 'Instructions'; - $lang['menu_back'] = 'Page diapo'; - $lang['title_waiting'] = 'Images en attente de validation'; - $lang['menu_waiting'] = 'En attente'; - $lang['default_message'] = 'Zone d\'administration de PhpWebGallery'; - $lang['conf_err_prefixe'] = 'le préfixe des thumbnails ne doit pas comporter d\'accent'; - $lang['conf_err_mail'] = 'mail refusé, il doit être de la forme nom@serveur.com'; - $lang['conf_err_sid_size'] = 'la taille de l\'identifiant de session doit être un entier supérieur ou égal à 4 et inférieur à 50'; - $lang['conf_err_sid_time'] = 'la durée de la session doit être comprise entre 5 et 60 minutes'; - $lang['conf_err_max_user_listbox'] = 'le nombre max utilisateur listbox doit être un entier compris entre 0 et 255'; - $lang['conf_confirmation'] = 'Informations enregistrées dans la base de données'; - $lang['conf_general_title'] = 'Configuration générale'; - $lang['conf_general_webmaster'] = 'pseudo webmaster'; - $lang['conf_general_webmaster_info'] = 'Il apparaîtra à tous vos visiteurs. Il vous sert pour administrer le site'; - $lang['conf_general_mail'] = 'mail webmaster'; - $lang['conf_general_mail_info'] = 'Les visiteurs pourront vous contacter par ce mail'; - $lang['conf_general_prefix'] = 'préfixe thumbnail'; - $lang['conf_general_prefix_info'] = 'Les noms des fichiers miniatures en sont préfixé. Laissez vide en cas de doute.'; - $lang['conf_general_access'] = 'type d\'acces'; - $lang['conf_general_access_1'] = 'libre'; - $lang['conf_general_access_2'] = 'restreint'; - $lang['conf_general_access_info'] = '- libre : n\'importe qui peut accéder à vos photos, tous les visiteurs peuvent se créer un compte pour pouvoir personnaliser l\'affichage<br />- restreint : l\'administrateur s\'occupe de créer des comptes, seuls les personnes membres peuvent accéder au site'; - $lang['conf_general_max_user_listbox'] = 'nombre max utilisateur listbox'; - $lang['conf_general_max_user_listbox_info'] = '- c\'est le nombre maximum d\'utilisateurs pour lequel on affiche une liste déroulante sur la page d\'identification<br />- mettez un nombre entier entre 0 et 255, 0 signifiant que vous ne voulez jamais qu\'on affiche de liste déroulante'; - $lang['conf_comments'] = 'commentaires utilisateurs'; - $lang['conf_comments_title'] = 'Configuration des '.$lang['conf_comments']; - $lang['conf_comments_show_comments'] = $lang['conf_comments']; - $lang['conf_comments_show_comments_info'] = 'afficher les commentaires utilisateurs sous chaque images ?'; - $lang['conf_comments_comments_number'] = 'nombre de commentaires par page'; - $lang['conf_comments_comments_number_info'] = 'nombre de commentaire à afficher sur chaque page. Le nombre de commentaires pour une image reste illimité. Entrer un nombre entre 5 et 50.'; - $lang['conf_err_comment_number'] = 'le nombre de commentaires par page doit être compris entre 5 et 50 inclus.'; - $lang['conf_remote_site_delete_info'] = 'Supprimer un site revient à supprimer toutes les images et les catégories en relation avec ce site.'; - $lang['conf_upload_title'] = 'Configurer l\'upload des utilisateurs'; - $lang['conf_upload_available'] = 'autoriser l\'ajout d\'images'; - $lang['conf_upload_maxfilesize'] = 'poids maximum'; - $lang['conf_upload_maxfilesize_info'] = 'Poids maximum autorisé pour les images uploadées. Celui-ci doit être un entier compris entre 10 et 1000, en Ko.'; - $lang['conf_err_upload_maxfilesize'] = 'Le poids maximum pour les images uploadés doit être un entier compris entre 10 et 1000.'; - $lang['conf_upload_maxwidth'] = 'largeur maximum'; - $lang['conf_upload_maxwidth_info'] = 'Largeur maximum autorisée pour les images. Celle-ci doit être un entier supérieur à 10, en pixels.'; - $lang['conf_err_upload_maxwidth'] = 'la largeur maximum des images uploadées doit être un entier supérieur à 10.'; - $lang['conf_upload_maxheight'] = 'hauteur maximum'; - $lang['conf_upload_maxheight_info'] = 'Hauteur maximum autorisée pour les images. Celle-ci doit être un entier supérieur à 10, en pixels.'; - $lang['conf_err_upload_maxwidth'] = 'la hauteur maximum des images uploadées doit être un entier supérieur à 10.'; - $lang['conf_upload_maxwidth_thumbnail'] = 'largeur maximum miniatures.'; - $lang['conf_upload_maxwidth_thumbnail_info'] = 'Largeur maximum autorisée pour les miniatures. Celle-ci doit être un entier supérieur à 10, en pixels.'; - $lang['conf_err_upload_maxwidth_thumbnail'] = 'la largeur maximum des miniatures uploadées doit être un entier supérieur à 10.'; - $lang['conf_upload_maxheight_thumbnail'] = 'hauteur maximum miniatures'; - $lang['conf_upload_maxheight_thumbnail_info'] = 'Hauteur maximum autorisée pour les miniatures. Celle-ci doit être un entier supérieur à 10, en pixels.'; - $lang['conf_err_upload_maxheight_thumbnail'] = 'la hauteur maximum des miniatures uploadées doit être un entier supérieur à 10.'; - $lang['conf_default_title'] = 'Affichage par défaut pour les visiteurs non enregistrés et les nouveaux comptes'; - $lang['conf_default_language_info'] = 'langue par défaut'; - $lang['conf_default_theme_info'] = 'thème par défaut'; - $lang['conf_session_title'] = 'Configuration des sessions'; - $lang['conf_session_size'] = 'taille de l\'identifiant'; - $lang['conf_session_size_info'] = '- plus votre identifiant de session est grand, plus la sécurité est bonne<br />- mettez une valeur entre 4 et 50'; - $lang['conf_session_time'] = 'durée de validité'; - $lang['conf_session_time_info'] = '- plus votre durée de validité de la session est petite, plus la sécurité est bonne<br />- elle doit supérieur à 5 et inférieur à 60, en minutes'; - $lang['conf_session_key'] = 'mot-clef'; - $lang['conf_session_key_info'] = '- le mot-clef de session permet d\'améliorer le cryptage des identifiants de session.<br />- mettez n\'importe quelle chaîne de moins de 255 caractères.'; - $lang['conf_session_delete'] = 'supprimer les sessions périmées'; - $lang['conf_session_delete_info'] = 'il est recommandé de vider sa table de sessions car les sessions périmées restent enregistrées (mais ça ne pose pas de problème de sécurité)'; - $lang['user_err_modify'] = 'Cet utilisateur ne peut pas être modifé ou supprimé'; - $lang['user_err_unknown'] = 'Cet utilisateur n\'existe pas dans la base de données'; - $lang['adduser_info_message'] = 'Informations enregistrées dans la base de données concernant '; - $lang['adduser_info_password_updated'] = '(mot de passe modifié)'; - $lang['adduser_info_back'] = 'retour liste utilisateurs'; - $lang['adduser_fill_form'] = 'Veuillez remplir les champs suivants'; - $lang['adduser_unmodify'] = 'non modifiable'; - $lang['adduser_status'] = 'status'; - $lang['adduser_status_admin'] = 'admin'; - $lang['adduser_status_guest'] = 'visiteur'; - $lang['permuser_info_message'] = 'Permissions enregistrées'; - $lang['permuser_title'] = 'Restrictions pour l\'utilisateur'; - $lang['permuser_warning'] = 'Attention : un "<span style="font-weight:bold;">accès interdit</span>" à la racine d\'une catégorie empêche l\'accès à toute la catégorie'; - $lang['permuser_authorized'] = 'autorisé'; - $lang['permuser_forbidden'] = 'interdit'; - $lang['permuser_parent_forbidden'] = 'catégorie parente interdite'; - $lang['listuser_confirm'] = 'Etes-vous sûr de vouloir supprimer l\'utilisateur'; - $lang['listuser_info_deletion'] = 'a été supprimé de la base de données'; - $lang['listuser_user_group'] = 'Utilisateurs'; - $lang['listuser_modify'] = 'modifier'; - $lang['listuser_modify_hint'] = 'modifier les infos de'; - $lang['listuser_permission'] = 'permissions'; - $lang['listuser_permission_hint'] = 'modifier les permissions de'; - $lang['listuser_delete'] = 'supprimer'; - $lang['listuser_delete_hint'] = 'supprimer'; - $lang['listuser_button_all'] = 'tous'; - $lang['listuser_button_invert'] = 'inverser'; - $lang['listuser_button_create_address'] = 'générer adresse mail'; - $lang['cat_invisible'] = 'invisible'; - $lang['cat_edit'] = 'Editer'; - $lang['cat_up'] = 'Monter'; - $lang['cat_down'] = 'Descendre'; - $lang['cat_image_info'] = 'infos images'; - $lang['cat_total'] = 'total'; - $lang['editcat_confirm'] = 'Informations enregistrées dans la base de données'; - $lang['editcat_back'] = 'catégories'; - $lang['editcat_title1'] = 'Options pour la catégorie'; - $lang['editcat_name'] = 'Nom'; - $lang['editcat_comment'] = 'Commentaire'; - $lang['editcat_status'] = 'Status'; - $lang['infoimage_general'] = 'Options générale pour la catégorie'; - $lang['infoimage_useforall'] = 'utiliser pour toutes les images ?'; - $lang['infoimage_creation_date'] = 'date de création'; - $lang['infoimage_detailed'] = 'Options pour chaque image / photo'; - $lang['infoimage_title'] = 'titre'; - $lang['infoimage_comment'] = 'commentaire'; - $lang['update_missing_tn'] = 'il manque la miniature pour'; - $lang['update_disappeared_tn'] = 'la miniature a disparu'; - $lang['update_disappeared'] = 'a disparu'; - $lang['update_part_deletion'] = 'Suppression des images de la base qui n\'ont pas de thumbnail ou qui n\'existent pas'; - $lang['update_deletion_conclusion'] = 'images supprimées de la base de données'; - $lang['update_part_research'] = 'Recherche des nouvelles images dans les répertoires'; - $lang['update_research_added'] = 'ajouté'; - $lang['update_research_tn_ext'] = 'miniature en'; - $lang['update_research_conclusion'] = 'images ajoutées à la base de données'; - $lang['update_default_title'] = 'Choisir une option'; - $lang['update_only_cat'] = 'mettre à jour les catégories, mais pas les images'; - $lang['update_all'] = 'mettre tout à jour'; - $lang['tn_width'] = 'largeur'; - $lang['tn_height'] = 'hauteur'; - $lang['tn_no_support'] = 'Image inexistante ou aucun support'; - $lang['tn_format'] = 'pour le format'; - $lang['tn_thisformat'] = 'pour ce format de fichier'; - $lang['tn_err_width'] = 'la largeur doit être un entier supérieur à'; - $lang['tn_err_height'] = 'la hauteur doit être un entier supérieur à'; - $lang['tn_results_title'] = 'Résultats de la miniaturisation'; - $lang['tn_picture'] = 'image'; - $lang['tn_results_gen_time'] = 'généré en'; - $lang['tn_stats'] = 'Statistiques générales'; - $lang['tn_stats_nb'] = 'nombre d\'images miniaturisées'; - $lang['tn_stats_total'] = 'temps total'; - $lang['tn_stats_max'] = 'temps max'; - $lang['tn_stats_min'] = 'temps min'; - $lang['tn_stats_mean'] = 'temps moyen'; - $lang['tn_err'] = 'Vous avez commis des erreurs'; - $lang['tn_params_title'] = 'Paramètres de miniaturisation'; - $lang['tn_params_GD'] = 'version de GD'; - $lang['tn_params_GD_info'] = '- GD est la bibliothèque de manipulation graphique pour PHP<br />- cochez la version de GD installée sur le serveur. Si vous choisissez l\'une et que vous obtenez ensuite des messages d\'erreur, choisissez l\'autre version. Si aucune version ne marche, cela signifie que GD n\'est pas installé sur le serveur.'; - $lang['tn_params_width_info'] = 'largeur maximum que peut prendre les miniatures'; - $lang['tn_params_height_info'] = 'hauteur maximum que peut prendre les miniatures'; - $lang['tn_params_create'] = 'en créer'; - $lang['tn_params_create_info'] = 'N\'essayez pas de lancer directement un grand nombre de miniaturisation.<br />En effet la miniaturisation est coûteuse en ressources processeur pour le serveur. Si vous êtes chez un hébergeur gratuit, une trop forte occupation processeur peut amener l\'hébergeur à supprimer votre compte.'; - $lang['tn_params_format'] = 'format'; - $lang['tn_params_format_info'] = 'seul le format jpeg est supporté pour la création des miniatures'; - $lang['tn_alone_title'] = 'images sans miniatures (format jpg et png uniquement)'; - $lang['tn_dirs_title'] = 'Liste des répertoires'; - $lang['tn_dirs_alone'] = 'images sans miniatures'; - $lang['help_images_title'] = 'Ajout d\'images'; - $lang['help_images_intro'] = 'Voici comment il faut placer les images dans vos répertoires'; - $lang['help_images'][0] = 'dans le répertoire "galleries" placer des repertoires qui vont représenter vos futures catégories'; - $lang['help_images'][1] = 'dans chacun de ces répertoires, vous avez le droit de créer autant de niveau de sous-répertoire que vous le souhaitez'; - $lang['help_images'][2] = 'vous avez le droit à un nombre illimité de catégories et de sous catégories pour chaque catégorie'; - $lang['help_images'][3] = 'les fichiers images doivent être au format jpg (extension jpg ou JPG), gif (GIF ou gif) ou encore png (PNG ou png)'; - $lang['help_images'][4] = 'Evitez d\'utiliser des espaces " " ou des tirets "-" dans les noms de fichiers ou de catégorie, je conseille d\'utiliser le caractère underscore "_" qui est géré par l\'application et donnera des résultats plus appréciables'; - $lang['help_thumbnails_title'] = 'Miniatures'; - $lang['help_thumbnails'][0] = 'dans chaque répertoire contenant des images à afficher sur le site, il y a un sous-répertoire nommé "thumbnail", s\'il n\'existe pas, créez-le pour placer vos miniatures dedans'; - $lang['help_thumbnails'][1] = 'les miniatures n\'ont pas besoin d\'avoir la même extension que les images associées (une image en .jpg peut avoir sa miniature en .GIF par exemple)'; - $lang['help_thumbnails'][2] = 'la miniature associée à une image doit être préfixée par le préfixe donné sur la page de configuration générale (image.jpg -> TN_image.GIF par exemple).'; - $lang['help_thumbnails'][3] = 'il est conseillé d\'utiliser le module pour windows téléchargeable sur le site de PhpWebGallery pour la création des miniatures.'; - $lang['help_thumbnails'][4] = 'vous pouvez utilisez la gestion de création de miniatures, intégrée à PhpWebGallery, mais ce n\'est pas conseillé, car la qualité des miniatures sera moindre qu\'avec un véritable outil de manipulation d\'images et que cela consommera des ressources sur le serveur, ce qui peut se révéler gênant pour un hébergement gratuit.'; - $lang['help_thumbnails'][5] = 'si vous choisissez d\'utiliser votre hébergeur pour créer les miniatures, il faut avant cela passer le répertoire "galleries" en 775 ainsi que tous ses sous-répertoires.'; - $lang['help_database_title'] = 'Remplissage de la base de données'; - $lang['help_database'][0] = 'Une fois les fichiers placés correctement et les miniatures placées ou créées, cliquez sur "MaJ base d\'images" dans le menu de la zone d\'administration.'; - $lang['help_remote_title'] = 'Site distant'; - $lang['help_remote'][0] = 'PhpWebGallery offre la possibilité d\'utiliser plusieurs serveurs pour stocker les images qui composeront votre galerie. Cela peut être utile si votre galerie est installée sur une espace limité et que vous avez une grande quantité d\'images à montrer. Suivez la procédure suivante :'; - $lang['help_remote'][1] = '1. éditez le fichier "create_listing_file.php" (vous le trouverez dans le répertoire "admin"), en modifiant la ligne "$prefix_thumbnail = "TN-";" si le préfixe pour vos miniatures n\'est pas "TN-".'; - $lang['help_remote'][2] = '2. placez le fichier "create_listing_file.php" modifié sur votre site distant, dans le répertoire racine de vos répertoires d\'images (comme le répertoire "galleries" du présent site) par ftp.'; - $lang['help_remote'][3] = '3. lancez le script en allant à l\'url http://domaineDistant/repGalerie/create_listing_file.php, un fichier listing.xml vient de se créer.'; - $lang['help_remote'][4] = '4. récupérez le fichier listing.xml de votre site distant pour le placer dans le répertoire "admin" du présent site.'; - $lang['help_remote'][5] = '5. lancez une mise à jour de la base d\'images par l\'interface d\'administration, une fois le fichier listing.xml utilisé, supprimez le du répertoire "admin".'; - $lang['help_remote'][6] = 'Vous pouvez mettre à jour le contenu d\'un site distant en refaisant la manipulation décrite. Vous pouvez également supprimer un site distant en choisissant l\'option dans la section configuration du panneau d\'administration.'; - $lang['help_upload_title'] = 'Ajout d\'images par les utilisateurs'; - $lang['help_upload'][0] = 'PhpWebGallery offre la possibilité aux visiteurs d\'uploader des images. Pour cela :'; - $lang['help_upload'][1] = '1. autorisez l\'option dans la zone configuration du panneau d\'administration'; - $lang['help_upload'][2] = '2. autorisez les droits en écriture sur les répertoires d\'images'; - $lang['help_infos_title'] = 'Informations complémentaires'; - $lang['help_infos'][1] = 'Dès que vous avez créé votre galerie, allez dans la gestion des utilisateurs et modifiez les permissions pour l\'utilisateur visiteur. En effet, tous les utilisateurs qui s\'enregistrent eux-même auront par défaut les mêmes permissions que l\'utilisateur "visiteur".'; - $lang['install_message'] = 'Message'; - $lang['step1_confirmation'] = 'Les paramètres rentrés sont corrects'; - $lang['step1_err_db'] = 'La connexion au serveur est OK, mais impossible de se connecter à cette base de données'; - $lang['step1_err_server'] = 'Impossible de se connecter au serveur'; - $lang['step1_err_copy_2'] = 'La configuration du reste de l\'application est maintenant possible'; - $lang['step1_err_copy_next'] = 'prochaine étape'; - $lang['step1_title'] = 'Etape 1 sur 2'; - $lang['step1_host'] = 'Hôte MySQL'; - $lang['step1_host_info'] = 'localhost, sql.multimania.com, toto.freesurf.fr'; - $lang['step1_user'] = 'Utilisateur'; - $lang['step1_user_info'] = 'nom d\'utilisateur pour votre hébergeur'; - $lang['step1_pass'] = 'Password'; - $lang['step1_pass_info'] = 'celui fourni par votre hébergeur'; - $lang['step1_database'] = 'Nom de la base'; - $lang['step1_database_info'] = 'celui fourni par votre hébergeur'; - $lang['step1_prefix'] = 'Préfixe des noms de table'; - $lang['step1_prefix_info'] = 'le nom des tables apparaîtra avec ce préfixe (permet de mieux gérer sa base de données)'; - $lang['step2_err_login1'] = 'veuillez rentrer un pseudo pour le webmaster'; - $lang['step2_err_login3'] = 'le pseudo du webmaster ne doit pas comporter les caractère " et \''; - $lang['step2_err_pass'] = 'veuillez retaper votre mot de passe'; - $lang['step2_err_mail'] = $lang['conf_err_mail']; - $lang['install_end_title'] = 'Installation terminée'; - $lang['step2_title'] = 'Etape 2 sur 2'; - $lang['step2_pwd'] = 'password webmaster'; - $lang['step2_pwd_info'] = 'Il doit rester confidentiel, il permet d\'accéder au panneau d\'administration.'; - $lang['step2_pwd_conf'] = 'confirmer password'; - $lang['step2_pwd_conf_info'] = 'Vérification'; - // new or modified in release 1.3 - $lang['remote_site'] = 'Site distant'; - $lang['title_add'] = 'Ajouter un utilisateur'; - $lang['title_modify'] = 'Modifier un utilisateur'; - $lang['title_groups'] = 'Gestion des groupes'; - $lang['title_user_perm'] = 'Modifier les permissions pour l\'utilisateur'; - $lang['title_cat_perm'] = 'Modifier les permissions pour la catégorie'; - $lang['title_group_perm'] = 'Modifier les permissions pour le groupe'; - $lang['title_picmod'] = 'Modifier les informations d\'une image'; - $lang['menu_groups'] = 'Groupes'; - $lang['menu_comments'] = 'Commentaires'; - $lang['waiting_update'] = 'Les images validées ne seront visibles qu\'après mise à jour de la base d\'images.'; - $lang['conf_general_log'] = 'historique'; - $lang['conf_general_log_info'] = 'historiser les visites sur le site ? Les visites seront visibles dans l\'historique de l\'administration'; - $lang['conf_general_mail_notification'] = 'Notification par mail'; - $lang['conf_general_mail_notification_info'] = 'Notification automatique par mail des administrateurs (seuls les administrateurs) lors de l\'ajout d\'un commentaire, ou lors de l\'ajout d\'une image.'; - $lang['conf_comments_validation'] = 'validation'; - $lang['conf_comments_validation_info'] = 'L\'administrateur valide les commentaires avant qu\'ils apparaissent sur le site'; - $lang['conf_comments_forall'] = 'pour tous ?'; - $lang['conf_comments_forall_info'] = 'Même les invités non enregistrés peuvent déposer les messages'; - $lang['conf_default_nb_image_per_row_info'] = 'nombre d\'images par ligne par défaut'; - $lang['conf_default_nb_row_per_page_info'] = 'nombre de lignes par page par défaut'; - $lang['conf_default_short_period_info'] = 'En nombre de jours. Période pendant laquelle l\'image est notée avec une marque rouge. La période courte fait au minimum 1 jour.'; - $lang['conf_default_long_period_info'] = 'En nombre de jours. Période pendant laquelle l\'image est notée avec une marque verte. La période longue doit être plus grande que la période courte.'; - $lang['conf_default_expand_info'] = 'développer toutes les catégories par défaut dans le menu ?'; - $lang['conf_default_show_nb_comments_info'] = 'montrer le nombre de commentaires pour chaque image sur la page des miniatures'; - $lang['conf_default_maxwidth_info'] = 'Largeur maximum affichable pour les images : les images ne seront redimensionnées que pour l\'affichage, les fichiers images resteront intacts. Laisser vide si vous ne souhaitez pas mettre de limite.'; - $lang['conf_default_maxheight_info'] = 'idem mais pour la hauteur des images'; - $lang['conf_session_cookie'] = 'autoriser les cookies'; - $lang['conf_session_cookie_info'] = 'les utilisateurs ne seront plus obligés de s\'identifier à chaque visite. Méthode moins sécurisée'; - $lang['adduser_associate'] = 'Associer au groupe'; - $lang['group_add'] = 'Ajouter un groupe'; - $lang['group_add_error1'] = 'Le nom du groupe ne doit pas comporter de " ou de \''; - $lang['group_add_error2'] = 'Ce nom de groupe est déjà utilisé'; - $lang['group_confirm'] = 'Etes-vous sûr de vouloir supprimer le groupe'; - $lang['group_list_title'] = 'Liste des groupes existants'; - $lang['group_err_unknown'] = 'Ce groupe n\'existe pas dans la base de données'; - $lang['permuser_only_private'] = 'Seules les catégories privées sont représentées'; - $lang['cat_permission'] = 'permissions'; - $lang['cat_update'] = 'mettre à jour'; - $lang['cat_add'] = 'Ajouter une catégorie virtuelle'; - $lang['cat_parent'] = 'catégorie parente'; - $lang['cat_error_name'] = 'Le nom d\'une catégorie ne doit pas être nul'; - $lang['cat_virtual'] = 'virtuelle'; - $lang['cat_first'] = 'Premier'; - $lang['cat_last'] = 'Dernier'; - $lang['editcat_visible_info'] = '(invisible sauf pour les administrateurs)'; - $lang['editcat_visible'] = 'Visible'; - $lang['editcat_uploadable'] = 'Ajout d\'images par les visiteurs'; - $lang['infoimage_keyword_separation'] = '(séparer avec des ",")'; - $lang['infoimage_addtoall'] = 'ajouter à tous'; - $lang['infoimage_removefromall'] = 'retirer à tous'; - $lang['infoimage_associate'] = 'Associer à la catégorie'; - $lang['update_wrong_dirname'] = 'le nom des fichiers et répertoires ne doivent être composé que de lettres, de chiffres et "-", "_" ou ".".'; - $lang['stats_pages_seen'] = 'pages vues'; - $lang['stats_visitors'] = 'visiteurs'; - $lang['stats_empty'] = 'vider l\'historique'; - $lang['stats_pages_seen_graph_title'] = 'Nombre de pages vues par jour'; - $lang['stats_visitors_graph_title'] = 'Nombre de visiteurs par jour'; - $lang['comments_last_title'] = 'Derniers commentaires'; - $lang['comments_non_validated_title'] = 'Commentaires non validés'; - $lang['help_database'][1] = 'Afin d\'éviter la mise à jour d\'un trop grand nombre d\'images, commencez par mettre à jour uniquement les catégories, puis sur la page des catégories, mettre à jour chaque catégorie individuellement grâce au lien "mise à jour"'; - $lang['help_upload'][3] = 'La catégorie doit elle-même être autorisée pour l\'upload.'; - $lang['help_upload'][4] = 'Les images uploadées par les visiteurs ne sont pas directement visibles sur le site, elles doivent être validées par un administrateur. Pour cela, un administrateur doit se rendre sur la page "en attente" du panneau d\'administration, valider ou refuser les images proposée, puis lancer une mise à jour de la base d\'images.'; - $lang['help_virtual_title'] = 'Liens images vers catégories et catégories virtuelles'; - $lang['help_virtual'][0] = 'PhpWebGallery permet de dissocier les catégories où sont stockées les images et les catégories où les images apparaissent.'; - $lang['help_virtual'][1] = 'Par défaut, les images apparaissent uniquement dans leurs catégories réelles : celles qui correspondent à des répertoires sur le serveur web.'; - $lang['help_virtual'][2] = 'Pour lier une image à une catégorie, il suffit de l\'y associer via la page de modification d\'une image ou par lot sur la page de modification des images d\'une catégorie.'; - $lang['help_virtual'][3] = 'En partant de ce principe, il est possible de créer des catégories virtuelles dans PhpWebGallery : aucun répertoire "réel" n\'y est rattaché sur le disque du serveur. Il suffit simplement de créer la catégorie sur la page de la liste des catégories existantes dans la zone d\'administration.'; - $lang['help_groups_title'] = 'Groupes d\'utilisateurs'; - $lang['help_groups'][0] = 'PhpWebGallery permet de gérer des groupes d\'utilisateurs, cela est très utile pour regrouper les autorisations d\'accès aux catégories privées.'; - $lang['help_groups'][1] = '1. Créez un groupe "famille" sur la page des groupes de la zone d\'administration.'; - $lang['help_groups'][2] = '2. Sur la page de la liste des utilisateurs, en éditer un, et l\'associer au groupe "famille".'; - $lang['help_groups'][3] = '3. En modifiant les permissions pour une catégorie, ou pour un groupe, vous verrez que toutes les catégories autorisées à un groupe le sont pour les membres de ce groupe.'; - $lang['help_groups'][4] = 'Un utilisateurs peut appartenir à plusieurs groupes. L\'autorisation est plus forte que l\'interdiction : si l\'utilisateur "paul" appartient au groupe "famille" et "amis", et que seule le groupe "famille" est autorisée à consulter la catégorie privée "Noël 2003", alors "paul" y aura accès.'; - $lang['help_access_title'] = 'Autorisations d\'accès'; - $lang['help_access'][0] = 'PhpWebGallery dispose d\'un système de restrictions d\'accès aux catégories souhaitées. Les catégories sont soit publiques, soit privées. Pour interdire l\'accès par défaut à une catégorie :'; - $lang['help_access'][1] = '1. Editez la catégorie (depuis la page des catégories dans la zone d\'administration) et rendez la "privée".'; - $lang['help_access'][2] = '2. Sur les pages des permissions (d\'un groupe, d\'utilisateur) la catégorie apparaîtra et vous pourrez autoriser l\'accès ou non.'; - $lang['help_infos'][2] = 'Pour n\'importe quelle question, n\'hésitez pas à consulter le forum ou à y poser une question, sur le site'; -if (isset($conf)) - $lang['help_infos'][2] = 'Pour n\'importe quelle question, n\'hésitez pas à consulter le <a href="'.$conf['forum_url'].'" style="text-decoration:underline">forum</a> ou à y poser une question, sur le site'; - $lang['step1_err_copy'] = 'Copiez le texte en bleu entre les tirets et collez-le dans le fichier mysql.inc.php qui se trouve dans le répertoire "include" à la base de l\'endroit où vous avez installé PhpWebGallery (le fichier mysql.inc.php ne doit comporter QUE ce qui est en bleu entre les tirets, aucun retour à la ligne ou espace n\'est autorisé)'; - $lang['conf_upload_available_info'] = 'Autoriser l\'ajout d\'image par les utilisateurs dans les catégories du site (pas sur un site distant). Ceci est un paramètre général, il est nécessaire pour autoriser l\'upload catégorie par catégorie.'; - $lang['install_help'] = 'Besoin d\'aide ? Posez votre question sur le <a href="http://forum.phpwebgallery.net">forum de PhpWebGallery</a>.'; - // new or modified in release 1.3.1 - $lang['cat_unknown_id'] = 'Cette catégorie n\'existe pas dans la base de données'; - } - - -// new or modified in release 1.4 - $lang['install_end_message'] = 'La configuration de l\'application s\'est correctement déroulée, place à la prochaine étape<br /><br /> -Par mesure de sécurité, merci de supprimer le fichier "install.php"<br /> -Un fois ce fichier supprimé, veuillez suivre ces indications : -<ul> - <li>allez sur la page d\'identification : [ <a href="./identification.php">identification</a> ] et connectez-vous avec le pseudo donné pour le webmaster</li> - <li>celui-ci vous permet d\'accéder à la partie administration et aux instructions pour placer les images dans les répertoires.</li> -</ul>'; - $lang['install_warning'] = 'Le fichier "install.php" est encore présent sur votre serveur. Merci de le supprimer. Il pourrait être utilisé par un tiers à des fins malveillantes.'; - - -?>
\ No newline at end of file diff --git a/profile.php b/profile.php index 3fc16bbe3..3b27d57cb 100644 --- a/profile.php +++ b/profile.php @@ -1,21 +1,21 @@ <?php -/*************************************************************************** - * profile.php * - * ------------------- * - * application : PhpWebGallery 1.3 <http://phpwebgallery.net> * - * author : Pierrick LE GALL <pierrick@z0rglub.com> * - * * - * $Id$ - * * - ***************************************************************************/ +// +-----------------------------------------------------------------------+ +// | profile.php | +// +-----------------------------------------------------------------------+ +// | application : PhpWebGallery <http://phpwebgallery.net> | +// | branch : 1.4 | +// | author : Pierrick LE GALL <pierrick@z0rglub.com> | +// +-----------------------------------------------------------------------+ +// | file : $RCSfile$ +// | last update : $Date$ +// | last modifier : $Author$ +// | revision : $Revision$ +// +-----------------------------------------------------------------------+ +// | 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; | +// +-----------------------------------------------------------------------+ -/*************************************************************************** - * * - * 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; * - * * - ***************************************************************************/ // customize appearance of the site for a user //----------------------------------------------------------- include $phpwg_root_path = './'; diff --git a/template/default/about.vtp b/template/default/about.tpl index 5b416d1b8..a309e3dc2 100644 --- a/template/default/about.vtp +++ b/template/default/about.tpl @@ -1,20 +1,20 @@ <table style="width:100%;height:100%"> <tr align="center" valign="middle"> <td> - {#frame_start}1px{#frame_begin} - <div class="titrePage">{#about_title}</div> - {#frame_end} + {F_START}1px{F_BEGIN} + <div class="titrePage">{PAGE_TITLE}</div> + {F_END} <div style="margin-bottom:5px;"> </div> - {#frame_start}50%{#frame_begin} + {F_START}50%{F_BEGIN} <div class="menu" style="white-space:normal;margin:10px;"> - {#about_message} + {L_ABOUT} </div> - {#frame_end} + {F_END} <div style="text-align:center;margin:5px;"> - <a href="{#back_url}">{#about_return}</a> + <a href="{U_RETURN}">{L_RETURN}</a> </div> <div style="text-align:center;margin:5px;"> - <img src="./template/{#user_template}/images/php_sqreuil_artistes.gif" alt="php logo" /> + <img src="./template/default/images/php_sqreuil_artistes.gif" alt="php logo" /> </div> </td> </tr> diff --git a/template/default/category.tpl b/template/default/category.tpl new file mode 100644 index 000000000..7feb34da3 --- /dev/null +++ b/template/default/category.tpl @@ -0,0 +1,112 @@ +<table style="width:100%;"> + <tr> + <td valign="top" style="width:1%;padding:10px;"> + {F_START}100%{F_BEGIN} + <div class="titreMenu"> + <a href="{U_HOME}">{L_CATEGORIES}</a> + </div> + <div class="menu"> + <!-- BEGIN category --> + {category.INDENT} + <!-- BEGIN bulletlink --> + <a href="{category.bulletlink.U_BULLET_LINK}"><img src="{category.bulletlink.BULLET_IMAGE}" style="border:none;" alt="" /></a> + <!-- END bulletlink --> + <!-- BEGIN bulletnolink --> + <img src="{category.bulletnolink.BULLET_IMAGE}" style="border:none;" alt="" /> + <!-- END bulletnolink --> + <a href="{category.U_LINK}"><span title='{L_HINT_CATEGORY}' style="{category.T_NAME}">{category.LINK_NAME}</span> + <span class="menuInfoCat">[ + <!-- BEGIN subcat --> + <span title="{category.NB_SUBCATS} {L_SUBCAT}">{category.NB_SUBCATS}</span> - + <!-- END subcat --> + <span title="{category.TOTAL_CAT} {L_IMG_AVAILABLE}">{category.TOTAL_CAT}</span> ]</span></a>{category.CAT_ICON}<br /> + <!-- END category --> + + <div class="totalImages">[ {NB_PICTURE} {L_TOTAL} ]</div> + <!-- BEGIN favorites --> + <br /> <img src="{T_COLLAPSED}" alt='' /> <a href="{U_FAVORITE}"><span title="{L_FAVORITE_HINT}" style="font-weight:bold;">{L_FAVORITE}</span></a> <span class="menuInfoCat">[ {favorites.NB_FAV} ]</span> + <!-- END favorites --> + <br /> <img src="{T_COLLAPSED}" alt='' /> <span style="font-weight:bold;">{L_STATS}</span> + <br /> <img src="{T_COLLAPSED}" alt='' /> <a href="{U_MOST_VISITED}"><span title="{L_MOST_VISITED_HINT}" style="font-weight:bold;">{S_TOP} {L_MOST_VISITED}</span></a> + <br /> <img src="{T_COLLAPSED}" alt='' /> <a href="{U_RECENT}"><span title="{L_RECENT_HINT}" style="font-weight:bold;">{L_RECENT}</span></a> {T_SHORT} + </div> + {F_END} + <div style="margin-bottom:5px;"> </div> + {F_START}100%{F_BEGIN} + <div class="titreMenu">{L_SUMMARY}</div> + <div class="menu"> + <!-- BEGIN summary --> + <img src="{T_COLLAPSED}" alt=''/> <a href="{summary.U_SUMMARY}" title="{summary.TITLE}">{summary.NAME}</a><br /> + <!-- END summary --> + <!-- BEGIN upload --> + <br /> <img src="{T_COLLAPSED}" alt=''/> <a href="{upload.U_UPLOAD}">{L_UPLOAD}</a> + <!-- END upload --> + </div> + {F_END} + </td> + <td style="padding:5px;width:99%;" valign="top"> + <table style="width:100%;"> + <tr> + <td align="center"> + {F_START}1%{F_BEGIN} + <div class="titrePage">{TITLE}</div> + {F_END} + <div style="margin-bottom:5px;"> </div> + <!-- BEGIN thumbnails --> + <table class="thumbnail"> + <!-- BEGIN line --> + <tr> + <!-- BEGIN thumbnail --> + <td valign="bottom" class="thumbnail"> + <a href="{thumbnails.line.thumbnail.U_IMG_LINK}" class="back"> + <img src="{thumbnails.line.thumbnail.IMAGE}" + alt="{thumbnails.line.thumbnail.IMAGE_ALT}" + title="{thumbnails.line.thumbnail.IMAGE_TITLE}" + class="imgLink" /> + <br /> + {thumbnails.line.thumbnail.IMAGE_NAME}</a> + {thumbnails.line.thumbnail.IMAGE_TS} + <!-- BEGIN nb_comments --> + <br />{thumbnails.line.thumbnail.NB_COMMENTS} {L_COMMENTS} + <!-- END nb_comments --> + </td> + <!-- END thumbnail --> + </tr> + <!-- END line --> + </table> + <!-- END thumbnails --> + </td> + </tr> + <tr> + <td align="left"> + <!-- BEGIN cat_infos --> + <!-- BEGIN navigation --> + <div class="navigationBar">{cat_infos.navigation.NAV_BAR}</div> + <!-- END navigation --> + <!-- BEGIN comment --> + <div class="comments">{cat_infos.comment.COMMENTS}</div> + <!-- END comment --> + <div class="infoCat"> + {L_NB_IMG} "{cat_infos.CAT_NAME}" : {cat_infos.NB_IMG_CAT} + </div> + <!-- END cat_infos --> + </td> + </tr> + <tr> + <td align="right"> + {F_START}1%{F_BEGIN} + <div class="info"> + {L_USER} {USERNAME}<br /> + {L_RECENT_IMG} {S_SHORT_PERIOD} {L_DAYS} + {T_SHORT}<br /> + {L_RECENT_IMAGE} {S_LONG_PERIOD} {L_DAYS} + {T_LONG}<br /> + {L_SEND_MAIL} <a href="mailto:{S_MAIL}?subject={L_TITLE_MAIL}"><span style="font-weight:bold;">{S_WEBMASTER}</span></a> + </div> + {F_END} + </td> + </tr> + </table> + </td> + </tr> +</table>
\ No newline at end of file diff --git a/template/default/category.vtp b/template/default/category.vtp deleted file mode 100644 index bab094d54..000000000 --- a/template/default/category.vtp +++ /dev/null @@ -1,98 +0,0 @@ - <table style="width:100%;"> - <tr> - <td valign="top" style="width:1%;padding:10px;"> - {#frame_start}100%{#frame_begin} - <div class="titreMenu"> - <a href="{#home_url}">{#categories}</a> - </div> - <div class="menu"> - <!--VTP_category-->{#indent}<!--VTP_bullet_w_link--><a href="{#bullet_link}"><img src="{#bullet_url}" style="border:none;" alt=">" /></a><!--/VTP_bullet_w_link--><!--VTP_bullet_wo_link--><img src="{#bullet_url}" style="border:none;" alt=">" /><!--/VTP_bullet_wo_link--> <a href="{#link_url}"><span title="{#hint_category}" style="{#name_style}">{#link_name}</span> <span class="menuInfoCat">[ <!--VTP_subcat--><span title="{#nb_subcats} {#sub-cat}">{#nb_subcats}</span> - <!--/VTP_subcat--><span title="{#total_cat} {#images_available}">{#total_cat}</span> ]</span></a>{#cat_icon}<br /> - <!--/VTP_category--> - <div class="totalImages">[ {#nb_total_pictures} {#total} ]</div> - <!--VTP_favorites--> - <br /> <img src="{#lien_collapsed}" alt=">" /> <a href="{#url}"><span title="{#favorite_cat_hint}" style="font-weight:bold;">{#favorite_cat}</span></a> <span class="menuInfoCat">[ {#nb_favorites} ]</span> - <!--/VTP_favorites--> - <br /> <img src="{#lien_collapsed}" alt=">" /> <span style="font-weight:bold;">{#stats}</span> - <br /> <img src="{#lien_collapsed}" alt=">" /> <a href="{#most_visited_url}"><span title="{#most_visited_cat_hint}" style="font-weight:bold;">{#top_number} {#most_visited_cat}</span></a> - <br /> <img src="{#lien_collapsed}" alt=">" /> <a href="{#recent_url}"><span title="{#recent_cat_hint}" style="font-weight:bold;">{#recent_cat}</span></a> {#icon_short} - </div> - {#frame_end} - <div style="margin-bottom:5px;"> </div> - {#frame_start}100%{#frame_begin} - <div class="titreMenu">{#title_menu}</div> - <div class="menu"> - <!--VTP_summary--> - <img src="{#lien_collapsed}" alt=">"/> <a href="{#url}" title="{#title}">{#name}</a><br /> - <!--/VTP_summary--> - <!--VTP_upload--> - <br /> <img src="{#lien_collapsed}" alt=">"/> <a href="{#url}">{#upload_picture}</a> - <!--/VTP_upload--> - </div> - {#frame_end} - </td> - <td style="padding:5px;width:99%;" valign="top"> - <table style="width:100%;"> - <tr> - <td align="center"> - {#frame_start}1%{#frame_begin} - <div class="titrePage">{#cat_title}</div> - {#frame_end} - <div style="margin-bottom:5px;"> </div> - <!--VTP_thumbnails--> - <table class="thumbnail"> - <!--VTP_line--> - <tr> - <!--VTP_thumbnail--> - <td valign="bottom" class="thumbnail"> - <a href="{#url}" class="back"> - <img src="{#src}" - alt="{#alt}" - title="{#title}" - class="imgLink"/></a> - <br /> - <a href="{#url}" class="back">{#name}</a> - {#icon} - <!--VTP_nb_comments--> - <br />{#nb} {#comments} - <!--/VTP_nb_comments--> - </td> - <!--/VTP_thumbnail--> - </tr> - <!--/VTP_line--> - </table> - <!--/VTP_thumbnails--> - </td> - </tr> - <tr> - <td align="left"> - <!--VTP_cat_infos--> - <!--VTP_navigation--> - <div class="navigationBar">{#navigation_bar}</div> - <!--/VTP_navigation--> - <!--VTP_comment--> - <div class="comments">{#cat_comment}</div> - <!--/VTP_comment--> - <div class="infoCat"> - {#nb_image_category} "{#cat_name}" : {#cat_nb_images} - </div> - <!--/VTP_cat_infos--> - </td> - </tr> - <tr> - <td align="right"> - {#frame_start}1%{#frame_begin} - <div class="info"> - {#connected_user} {#username}<br /> - {#recent_image} {#short_period} {#days} - {#icon_short}<br /> - {#recent_image} {#long_period} {#days} - {#icon_long}<br /> - {#send_mail} <a href="mailto:{#mail_webmaster}?subject={#title_send_mail}"><span style="font-weight:bold;">{#webmaster}</span></a> - </div> - {#frame_end} - </td> - </tr> - </table> - </td> - </tr> - </table>
\ No newline at end of file diff --git a/template/default/footer.htm b/template/default/footer.htm deleted file mode 100644 index 501782eac..000000000 --- a/template/default/footer.htm +++ /dev/null @@ -1 +0,0 @@ -<!-- footer -->
\ No newline at end of file diff --git a/template/default/footer.tpl b/template/default/footer.tpl new file mode 100644 index 000000000..f62f6e1f1 --- /dev/null +++ b/template/default/footer.tpl @@ -0,0 +1,9 @@ +<!-- BEGIN debug --> + <div class="copyright">{L_GEN_TIME} {S_TIME}</div> +<!-- END debug --> + <!-- Please, do not remove this copyright. If you really want to, + contact me pierrick@z0rglub.com to find a solution on how + to show the origin of the script...--> + <div class="copyright">Powered by <a href="{U_SITE}" class="back">PhpWebGallery</a> {S_VERSION}</div> + </body> +</html>
\ No newline at end of file diff --git a/template/default/footer.vtp b/template/default/footer.vtp deleted file mode 100644 index 1cf62a5d5..000000000 --- a/template/default/footer.vtp +++ /dev/null @@ -1,8 +0,0 @@ - <div class="copyright">{#generation_time} {#time}</div> - <!-- Please, do not remove this copyright. If you really want to, - contact me pierrick@z0rglub.com to find a solution on how - to show the origin of the script...--> - <div class="copyright">Powered by <a href="{#site_url}" class="back">PhpWebGallery</a> {#version}</div> - {#footer} - </body> -</html>
\ No newline at end of file diff --git a/template/default/header.htm b/template/default/header.htm deleted file mode 100644 index 962fe8b58..000000000 --- a/template/default/header.htm +++ /dev/null @@ -1 +0,0 @@ -<!-- header --> diff --git a/template/default/header.tpl b/template/default/header.tpl new file mode 100644 index 000000000..b3bb96501 --- /dev/null +++ b/template/default/header.tpl @@ -0,0 +1,12 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" /> +<meta http-equiv="Content-Style-Type" content="text/css" /> +<!-- BEGIN refresh --> +<meta http-equiv="refresh" content="{S_REFRESH_TIME};url={U_REFRESH}"> +<!-- END refresh --> +<title>{PAGE_TITLE}</title> +<link rel="stylesheet" href="{T_STYLE}" type="text/css" /> +</head> +<body> diff --git a/template/default/header.vtp b/template/default/header.vtp deleted file mode 100644 index e97197576..000000000 --- a/template/default/header.vtp +++ /dev/null @@ -1,13 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> -<head> -<meta http-equiv="Content-Type" content="text/html; charset={#charset}" /> -<meta http-equiv="Content-Style-Type" content="text/css" /> -<!--VTP_refresh--> -<meta http-equiv="refresh" content="{#time};url={#url}"> -<!--/VTP_refresh--> -<title>{#title}</title> -<link rel="stylesheet" href="{#style}" type="text/css" /> -</head> -<body> -{#header} diff --git a/template/default/htmlfunctions.inc.php b/template/default/htmlfunctions.inc.php index ad52bfc13..a3365b4a5 100644 --- a/template/default/htmlfunctions.inc.php +++ b/template/default/htmlfunctions.inc.php @@ -17,10 +17,8 @@ * * ***************************************************************************/ -//include( PREFIX_INCLUDE.'./template/'.$user['template'].'/theme/conf.php' ); $user['lien_expanded']='./template/'.$user['template'].'/theme/expanded.gif'; $user['lien_collapsed']='./template/'.$user['template'].'/theme/collapsed.gif'; -//include_once( PREFIX_INCLUDE.'./template/'.$user['template'].'/style.inc.php'); function get_icon( $date_comparaison ) { @@ -104,22 +102,6 @@ function get_frame_start() { return '<table style="width:'; } -/* -function get_frame_begin() -{ - return ';"> - <tr> - <td style="border:1px dashed gray;width:100%;padding:5px;background-color:white;">'; -} - -function get_frame_end() -{ - return ' - </td> - </tr> - </table>'; -} -*/ function get_frame_begin() { @@ -158,86 +140,87 @@ function get_frame_end() function initialize_template() { - global $vtp, $handle, $user, $lang; + global $template, $user, $lang; + + $template->assign_vars(array( + 'F_START' => get_frame_start(), + 'F_BEGIN' => get_frame_begin(), + 'F_END' => get_frame_end() + ) + ); + - // $vtp->setGlobalVar( $handle, 'charset', $lang['charset'] ); - //$vtp->setGlobalVar( $handle, 'style', $user['style'] ); + global $vtp, $handle; + if (isset($handle)) + { $vtp->setGlobalVar( $handle, 'frame_start', get_frame_start() ); $vtp->setGlobalVar( $handle, 'frame_begin', get_frame_begin() ); $vtp->setGlobalVar( $handle, 'frame_end', get_frame_end() ); - //$vtp->setVarF( $handle, 'header', - // './template/'.$user['template'].'/header.htm' ); - //$vtp->setVarF( $handle, 'footer', - // './template/'.$user['template'].'/footer.htm' ); + } } -function display_category( $category, $indent, $handle ) +function display_category( $category, $indent ) { - global $user,$lang,$vtp; + global $user,$lang,$template, $vtp, $handle; + + $style=''; + $url = './category.php?cat='.$category['id']; + $url.= '&expand='.$category['expand_string']; + $name = $category['name']; + if ( $name == '' ) $name = str_replace( '_', ' ', $category['dir'] ); + if ( $category['id_uppercat'] == '' ) + { + $style = 'font-weight:bold;'; + } + + $template->assign_block_vars('category', array( + 'LINK_NAME' => $name, + 'INDENT' => $indent, + 'NB_SUBCATS'=>$category['nb_sub_categories'], + 'TOTAL_CAT'=>$category['nb_images'], + 'CAT_ICON'=>get_icon($category['date_last']), + + 'T_NAME'=>$style, + 'U_LINK' => add_session_id($url))); - $vtp->addSession( $handle, 'category' ); - $vtp->setVar( $handle, 'category.indent', $indent ); if ( $user['expand'] or $category['nb_sub_categories'] == 0 ) { - $vtp->addSession( $handle, 'bullet_wo_link' ); - $vtp->setVar( $handle, 'bullet_wo_link.bullet_url', - $user['lien_collapsed'] ); - $vtp->closeSession( $handle, 'bullet_wo_link' ); + $template->assign_block_vars('category.bulletnolink', array('BULLET_IMAGE' => $user['lien_collapsed'])); } else { - $vtp->addSession( $handle, 'bullet_w_link' ); - $url = './category.php'; - if (isset($page['cat'])) + $url = './category.php'; + if (isset($page['cat'])) { - $url .='?cat='.$page['cat']; - $url.= '&expand='.$category['expand_string']; + $url .='?cat='.$page['cat']; + $url.= '&expand='.$category['expand_string']; } else if ($category['expand_string']<>'') { - $url.= '?expand='.$category['expand_string']; + $url.= '?expand='.$category['expand_string']; } - $vtp->setVar( $handle, 'bullet_w_link.bullet_link', add_session_id($url) ); - if ( $category['expanded'] ) + + if ( $category['expanded'] ) { - $vtp->setVar( $handle, 'bullet_w_link.bullet_url', - $user['lien_expanded'] ); + $img=$user['lien_expanded']; } else { - $vtp->setVar( $handle, 'bullet_w_link.bullet_url', - $user['lien_collapsed'] ); + $img=$user['lien_collapsed']; } - $vtp->closeSession( $handle, 'bullet_w_link' ); - } - - $url = './category.php?cat='.$category['id']; - $url.= '&expand='.$category['expand_string']; - $vtp->setVar( $handle, 'category.link_url', add_session_id( $url ) ); - - $name = $category['name']; - if ( $name == '' ) $name = str_replace( '_', ' ', $category['dir'] ); - $vtp->setVar( $handle, 'category.link_name', $name ); - - if ( $category['id_uppercat'] == '' ) - { - $vtp->setVar( $handle, 'category.name_style', 'font-weight:bold;' ); - } - if ( $category['nb_sub_categories'] > 0 ) - { - $vtp->addSession( $handle, 'subcat' ); - $vtp->setVar( $handle,'subcat.nb_subcats',$category['nb_sub_categories'] ); - $vtp->closeSession( $handle, 'subcat' ); + + $template->assign_block_vars('category.bulletlink', array( + 'BULLET_IMAGE' => $img, + 'U_BULLET_LINK'=> add_session_id($url) + )); } - $vtp->setVar( $handle, 'category.total_cat', $category['nb_images'] ); - $vtp->setVar( $handle, 'category.cat_icon',get_icon($category['date_last'])); - $vtp->closeSession( $handle, 'category' ); // recursive call if ( $category['expanded'] ) { foreach ( $category['subcats'] as $subcat ) { - display_category( $subcat, $indent.str_repeat( ' ', 2 ), $handle ); + $template->assign_block_vars('category.subcat', array()); + display_category( $subcat, $indent.str_repeat( ' ', 2 )); } } } |