Changeset 1784

Show
Ignore:
Timestamp:
02/06/07 23:55:12 (6 years ago)
Author:
rub
Message:

Issue 0000598: NBM: Add new informations

Notification by mail:
Add new informations about last categories and last images like new feature of RSS notification.

2 parts:

  • Possibility to send HTML mail
  • Include last categories and last images on HTML format into notification mail

ccs & HTML experts! Please! Check, fix, improve and enhance HTML mail content!

Location:
trunk
Files:
9 added
1 removed
11 modified
2 moved

Legend:

Unmodified
Added
Removed
  • trunk

    • Property svn:ignore
      •  

        old new  
        22gal2 
        33feed.xml 
         4testmail 
  • trunk/admin/include/functions_notification_by_mail.inc.php

    r1699 r1784  
    33// | PhpWebGallery - a PHP based picture gallery                           | 
    44// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | 
    5 // | Copyright (C) 2003-2006 PhpWebGallery Team - http://phpwebgallery.net | 
    6 // | Copyright (C) 2006 Ruben ARNAUD - team@phpwebgallery.net              | 
     5// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | 
     6// | Copyright (C) 2006-2007 Ruben ARNAUD - team@phpwebgallery.net         | 
    77// +-----------------------------------------------------------------------+ 
    88// | branch        : BSF (Best So Far) 
     
    204204  { 
    205205    // Init mail configuration 
     206    $env_nbm['email_format'] = get_str_email_format($conf['nbm_send_html_mail']); 
    206207    $env_nbm['send_as_name'] = ((isset($conf['nbm_send_mail_as']) and !empty($conf['nbm_send_mail_as'])) ? $conf['nbm_send_mail_as'] : $conf['gallery_title']); 
    207208    $env_nbm['send_as_mail_address'] = get_webmaster_mail_address(); 
     
    230231  $lang_info = $env_nbm['save_lang_info']; 
    231232  $lang = $env_nbm['save_lang']; 
    232 } 
    233  
    234 /* 
    235  * Set user_id on nbm enviromnent 
    236  * 
    237  * Return none 
    238  */ 
    239 function set_user_id_on_env_nbm($user_id) 
     233 
     234  if ($env_nbm['is_to_send_mail']) 
     235  { 
     236    unset($env_nbm['email_format']); 
     237    unset($env_nbm['send_as_name']); 
     238    unset($env_nbm['send_as_mail_address']); 
     239    unset($env_nbm['send_as_mail_formated']); 
     240    // Don t unset counter 
     241    //unset($env_nbm['error_on_mail_count']); 
     242    //unset($env_nbm['sent_mail_count']); 
     243    unset($env_nbm['msg_info']); 
     244    unset($env_nbm['msg_error']); 
     245  } 
     246 
     247  unset($env_nbm['save_user']); 
     248  unset($env_nbm['save_lang_info']); 
     249  unset($env_nbm['save_lang']); 
     250  unset($env_nbm['last_language']); 
     251  unset($env_nbm['is_to_send_mail']); 
     252 
     253} 
     254 
     255/* 
     256 * Set user on nbm enviromnent 
     257 * 
     258 * Return none 
     259 */ 
     260function set_user_on_env_nbm($user_id, $is_action_send) 
    240261{ 
    241262  global $user, $lang, $lang_info, $env_nbm; 
     
    261282    @include(get_language_filepath('local.lang.php')); 
    262283  } 
     284   
     285  if ($is_action_send) 
     286  { 
     287    $env_nbm['mail_template'] = get_mail_template($env_nbm['email_format']); 
     288    $env_nbm['mail_template']->set_filename('notification_by_mail', 'admin/notification_by_mail.tpl'); 
     289  } 
     290} 
     291 
     292/* 
     293 * Unset user on nbm enviromnent 
     294 * 
     295 * Return none 
     296 */ 
     297function unset_user_on_env_nbm() 
     298{ 
     299  global $env_nbm; 
     300 
     301  unset($env_nbm['mail_template']); 
    263302} 
    264303 
     
    300339  if ($env_nbm['error_on_mail_count'] != 0) 
    301340  { 
    302     array_push($page['errors'], sprintf(l10n('nbm_msg_no_mail_to_send'), $env_nbm['error_on_mail_count'])); 
     341    array_push($page['errors'], l10n_dec('nbm_msg_n_mail_not_send', 'nbm_msg_n_mails_not_send', $env_nbm['error_on_mail_count'])); 
    303342    if ($env_nbm['sent_mail_count'] != 0) 
    304       array_push($page['infos'], sprintf(l10n('nbm_msg_n_mails_sent'), $env_nbm['sent_mail_count'])); 
     343      array_push($page['infos'], l10n_dec('nbm_msg_n_mail_sent', 'nbm_msg_n_mails_sent', $env_nbm['sent_mail_count'])); 
    305344  } 
    306345  else 
     
    309348      array_push($page['infos'], l10n('nbm_no_mail_to_send')); 
    310349    else 
    311       array_push($page['infos'], sprintf(l10n('nbm_msg_n_mails_sent'), $env_nbm['sent_mail_count'])); 
    312   } 
    313 } 
    314  
    315 function get_mail_content_subscribe_unsubcribe($nbm_user) 
     350      array_push($page['infos'], l10n_dec('nbm_msg_n_mail_sent', 'nbm_msg_n_mails_sent', $env_nbm['sent_mail_count'])); 
     351  } 
     352} 
     353 
     354function assign_vars_nbm_mail_content($nbm_user) 
    316355{ 
    317356  global $env_nbm; 
    318    
    319   $content = "\n\n\n"; 
    320    
     357 
    321358  set_make_full_url(); 
    322    
    323   $content .= "___________________________________________________\n\n"; 
    324   $content .= sprintf(l10n('nbm_content_unsubscribe_link'), add_url_params(get_root_url().'nbm.php', array('unsubscribe' => $nbm_user['check_key'])))."\n"; 
    325   $content .= sprintf(l10n('nbm_content_subscribe_link'), add_url_params(get_root_url().'nbm.php', array('subscribe' => $nbm_user['check_key'])))."\n"; 
    326   $content .= sprintf(l10n('nbm_content_subscribe_unsubscribe_contact'), $env_nbm['send_as_mail_address'])."\n"; 
    327   $content .= "___________________________________________________\n\n\n\n"; 
     359 
     360  $env_nbm['mail_template']->assign_vars 
     361  ( 
     362    array 
     363    ( 
     364      'USERNAME' => $nbm_user['username'], 
     365 
     366      'SEND_AS_NAME' => $env_nbm['send_as_name'], 
     367 
     368      'UNSUBSCRIBE_LINK' => add_url_params(get_root_url().'nbm.php', array('unsubscribe' => $nbm_user['check_key'])), 
     369      'SUBSCRIBE_LINK' => add_url_params(get_root_url().'nbm.php', array('subscribe' => $nbm_user['check_key'])), 
     370      'CONTACT_EMAIL' => $env_nbm['send_as_mail_address'] 
     371    ) 
     372  ); 
    328373 
    329374  unset_make_full_url(); 
    330  
    331   return $content; 
    332375} 
    333376 
     
    387430      { 
    388431        // set env nbm user 
    389         set_user_id_on_env_nbm($nbm_user['user_id']); 
    390  
    391         $message = ''; 
     432        set_user_on_env_nbm($nbm_user['user_id'], true); 
    392433 
    393434        $subject = '['.$conf['gallery_title'].']: '.($is_subscribe ? l10n('nbm_object_subcribe'): l10n('nbm_object_unsubcribe')); 
    394         $message .= sprintf(l10n('nbm_content_hello'), $nbm_user['username']).",\n\n"; 
    395  
    396         if ($is_subscribe) 
    397         { 
    398           $message .= l10n($is_admin_request ? 'nbm_content_subscribe_by_admin' : 'nbm_content_subscribe_by_himself'); 
    399         } 
    400         else 
    401         { 
    402           $message .= l10n($is_admin_request ? 'nbm_content_unsubscribe_by_admin' : 'nbm_content_unsubscribe_by_himself'); 
    403         } 
    404  
    405         $message .= "\n\n"; 
    406         $message .= l10n('nbm_content_byebye')."\n   ".$env_nbm['send_as_name']."\n\n"; 
    407  
    408         $message .= get_mail_content_subscribe_unsubcribe($nbm_user); 
    409  
    410         if (pwg_mail(format_email($nbm_user['username'], $nbm_user['mail_address']), $env_nbm['send_as_mail_formated'], $subject, $message)) 
     435 
     436        // Assign current var for nbm mail 
     437        assign_vars_nbm_mail_content($nbm_user); 
     438 
     439        $section_action_by = ($is_subscribe ? 'subscribe_by_' : 'unsubscribe_by_'); 
     440        $section_action_by .= ($is_admin_request ? 'admin' : 'himself'); 
     441        $env_nbm['mail_template']->assign_block_vars 
     442        ( 
     443          $section_action_by, array('DUMMY' => 'dummy') 
     444        ); 
     445 
     446        if (pwg_mail( 
     447              format_email($nbm_user['username'], $nbm_user['mail_address']), 
     448              $env_nbm['send_as_mail_formated'], 
     449              $subject, 
     450              $env_nbm['mail_template']->parse('notification_by_mail', true), 
     451              $env_nbm['email_format'], $env_nbm['email_format'] 
     452              )) 
    411453        { 
    412454          inc_mail_sent_success($nbm_user); 
     
    417459          $do_update = false; 
    418460        } 
     461 
     462        // unset env nbm user 
     463        unset_user_on_env_nbm(); 
     464 
    419465      } 
    420466 
     
    457503  } 
    458504 
    459   array_push($page['infos'], sprintf(l10n('nbm_user_change_enabled_updated_data_count'), $updated_data_count)); 
     505  array_push($page['infos'], l10n_dec('nbm_user_change_enabled_updated_data_count', 'nbm_users_change_enabled_updated_data_count', $updated_data_count)); 
    460506  if ($error_on_updated_data_count != 0) 
    461507  { 
    462     array_push($page['errors'], sprintf(l10n('nbm_user_change_enabled_error_on_updated_data_count'), $error_on_updated_data_count)); 
     508    array_push($page['errors'], 
     509      l10n_dec('nbm_user_change_enabled_error_on_updated_data_count', 
     510               'nbm_users_change_enabled_error_on_updated_data_count', 
     511               $error_on_updated_data_count)); 
    463512  } 
    464513 
  • trunk/admin/notification_by_mail.php

    r1748 r1784  
    8585 
    8686      $must_repost = true; 
    87       array_push($page['errors'], sprintf(l10n('nbm_background_treatment_redirect'), $time_refresh)); 
     87      array_push($page['errors'], 
     88        l10n_dec('nbm_background_treatment_redirect_second',  
     89                 'nbm_background_treatment_redirect_seconds', 
     90                  $time_refresh)); 
    8891    } 
    8992  } 
     
    271274 
    272275          // set env nbm user 
    273           set_user_id_on_env_nbm($nbm_user['user_id']); 
     276          set_user_on_env_nbm($nbm_user['user_id'], $is_action_send); 
    274277 
    275278          if ($is_action_send) 
    276279          { 
     280            set_make_full_url(); 
    277281            // Fill return list of "treated" check_key for 'send' 
    278282            array_push($return_list, $nbm_user['check_key']); 
    279             $message = ''; 
    280283 
    281284            if ($conf['nbm_send_detailed_content']) 
    282285            { 
    283                $news = news($nbm_user['last_send'], $dbnow); 
     286               $news = news($nbm_user['last_send'], $dbnow, false, $conf['nbm_send_html_mail']); 
    284287               $exist_data = count($news) > 0; 
    285288            } 
     
    292295            { 
    293296              $subject = '['.$conf['gallery_title'].']: '.l10n('nbm_object_news'); 
    294               $message .= sprintf(l10n('nbm_content_hello'), $nbm_user['username']).",\n\n"; 
     297 
     298              // Assign current var for nbm mail 
     299              assign_vars_nbm_mail_content($nbm_user); 
     300 
     301              $end_punct = ($conf['nbm_send_detailed_content'] ? ':' : '.'); 
    295302 
    296303              if (!is_null($nbm_user['last_send'])) 
    297                 $message .= sprintf(l10n('nbm_content_new_elements_between'), $nbm_user['last_send'], $dbnow); 
    298               else 
    299                 $message .= sprintf(l10n('nbm_content_new_elements'), $dbnow); 
    300  
    301               if ($conf['nbm_send_detailed_content']) 
    302304              { 
    303                 $message .= ":\n"; 
    304  
    305                 foreach ($news as $line) 
    306                 { 
    307                   $message .= '  o '.$line."\n"; 
    308                 } 
    309                 $message .= "\n"; 
     305                $env_nbm['mail_template']->assign_block_vars 
     306                ( 
     307                  'content_new_elements_between', 
     308                  array 
     309                  ( 
     310                    'DATE_BETWEEN_1' => $nbm_user['last_send'],  
     311                    'DATE_BETWEEN_2' => $dbnow, 
     312                    'END_PUNCT' => $end_punct 
     313                  ) 
     314                ); 
    310315              } 
    311316              else 
    312317              { 
    313                 $message .= ".\n"; 
     318                $env_nbm['mail_template']->assign_block_vars 
     319                ( 
     320                  'content_new_elements_single', 
     321                  array 
     322                  ( 
     323                    'DATE_SINGLE' => $dbnow, 
     324                    'END_PUNCT' => $end_punct 
     325                  ) 
     326                ); 
    314327              } 
    315328 
    316               $message .= sprintf(l10n('nbm_content_goto'), $conf['gallery_title'], $conf['gallery_url'])."\n\n"; 
    317               $message .= $customize_mail_content."\n\n"; 
    318               $message .= l10n('nbm_content_byebye')."\n   ".$env_nbm['send_as_name']."\n\n"; 
    319  
    320               $message .= get_mail_content_subscribe_unsubcribe($nbm_user); 
    321  
    322               if (pwg_mail(format_email($nbm_user['username'], $nbm_user['mail_address']), $env_nbm['send_as_mail_formated'], $subject, $message)) 
     329              if ($conf['nbm_send_detailed_content']) 
     330              { 
     331                foreach ($news as $data) 
     332                { 
     333                  $env_nbm['mail_template']->assign_block_vars 
     334                  ( 
     335                    'global_new_line.new_line', array('DATA' => $data) 
     336                  ); 
     337                } 
     338              } 
     339 
     340              if (!empty($customize_mail_content)) 
     341              { 
     342                $env_nbm['mail_template']->assign_block_vars 
     343                ( 
     344                  'custom', array('CUSTOMIZE_MAIL_CONTENT' => $customize_mail_content) 
     345                ); 
     346              } 
     347 
     348              if ($conf['nbm_send_html_mail'] and $conf['nbm_send_recent_post_dates']) 
     349              { 
     350                $recent_post_dates = get_recent_post_dates(7, 5, 9); 
     351                foreach ($recent_post_dates as $date_detail) 
     352                { 
     353                  $env_nbm['mail_template']->assign_block_vars 
     354                  ( 
     355                    'recent_post.recent_post_block', 
     356                    array 
     357                    ( 
     358                      'TITLE' => get_title_recent_post_date($date_detail), 
     359                      'HTML_DATA' => get_html_description_recent_post_date($date_detail) 
     360                    ) 
     361                  ); 
     362                } 
     363              } 
     364 
     365              $env_nbm['mail_template']->assign_block_vars 
     366              ( 
     367                'goto', 
     368                array 
     369                ( 
     370                  'GALLERY_TITLE' => $conf['gallery_title'], 
     371                  'GALLERY_URL' => $conf['gallery_url'] 
     372                ) 
     373              ); 
     374 
     375              $env_nbm['mail_template']->assign_block_vars 
     376              ( 
     377                'byebye', array('SEND_AS_NAME' => $env_nbm['send_as_name']) 
     378              ); 
     379 
     380              if (pwg_mail( 
     381                    format_email($nbm_user['username'], $nbm_user['mail_address']), 
     382                    $env_nbm['send_as_mail_formated'], 
     383                    $subject, 
     384                    $env_nbm['mail_template']->parse('notification_by_mail', true), 
     385                    $env_nbm['email_format'], $env_nbm['email_format'] 
     386                    )) 
    323387              { 
    324388                inc_mail_sent_success($nbm_user); 
     
    332396                inc_mail_sent_failed($nbm_user); 
    333397              } 
     398 
     399              unset_make_full_url(); 
    334400            } 
    335401          } 
     
    342408            } 
    343409          } 
     410           
     411          // unset env nbm user 
     412          unset_user_on_env_nbm(); 
    344413        } 
    345414 
     
    438507      } 
    439508     
    440       array_push($page['infos'], sprintf(l10n('nbm_updated_param_count'), $updated_param_count)); 
     509      array_push($page['infos'], 
     510        l10n_dec('nbm_updated_param_count', 'nbm_updated_params_count', 
     511          $updated_param_count)); 
    441512 
    442513      // Reload conf with new values 
     
    543614      $page['mode'], 
    544615      array( 
     616        'SEND_HTML_MAIL_YES' => ($conf['nbm_send_html_mail'] ? 'checked="checked"' : ''), 
     617        'SEND_HTML_MAIL_NO' => (!$conf['nbm_send_html_mail'] ? 'checked="checked"' : ''), 
    545618        'SEND_MAIL_AS' => $conf['nbm_send_mail_as'], 
    546619        'SEND_DETAILED_CONTENT_YES' => ($conf['nbm_send_detailed_content'] ? 'checked="checked"' : ''), 
    547620        'SEND_DETAILED_CONTENT_NO' => (!$conf['nbm_send_detailed_content'] ? 'checked="checked"' : ''), 
    548         'COMPLEMENTARY_MAIL_CONTENT' => $conf['nbm_complementary_mail_content'] 
     621        'COMPLEMENTARY_MAIL_CONTENT' => $conf['nbm_complementary_mail_content'], 
     622        'SEND_RECENT_POST_DATES_YES' => ($conf['nbm_send_recent_post_dates'] ? 'checked="checked"' : ''), 
     623        'SEND_RECENT_POST_DATES_NO' => (!$conf['nbm_send_recent_post_dates'] ? 'checked="checked"' : '') 
    549624        )); 
    550625    break; 
  • trunk/feed.php

    r1750 r1784  
    3333// |                               functions                               | 
    3434// +-----------------------------------------------------------------------+ 
    35  
    36 /** 
    37  * explodes a MySQL datetime format (2005-07-14 23:01:37) in fields "year", 
    38  * "month", "day", "hour", "minute", "second". 
    39  * 
    40  * @param string mysql datetime format 
    41  * @return array 
    42  */ 
    43 function explode_mysqldt($mysqldt) 
    44 { 
    45   $date = array(); 
    46   list($date['year'], 
    47        $date['month'], 
    48        $date['day'], 
    49        $date['hour'], 
    50        $date['minute'], 
    51        $date['second']) 
    52     = preg_split('/[-: ]/', $mysqldt); 
    53  
    54   return $date; 
    55 } 
    5635 
    5736/** 
     
    186165} 
    187166 
    188 $dates = get_recent_post_dates( 5, 6, 6); 
     167$dates = get_recent_post_dates(5, 6, 6); 
    189168 
    190 foreach($dates as  $date_detail) 
     169foreach($dates as $date_detail) 
    191170{ // for each recent post date we create a feed item 
     171  $item = new FeedItem(); 
    192172  $date = $date_detail['date_available']; 
    193   $exploded_date = explode_mysqldt($date); 
    194   $item = new FeedItem(); 
    195   $item->title = l10n_dec('%d new element', '%d new elements', $date_detail['nb_elements']); 
    196   $item->title .= ' ('.$lang['month'][(int)$exploded_date['month']].' '.$exploded_date['day'].')'; 
     173  $item->title = get_title_recent_post_date($date_detail); 
    197174  $item->link = make_index_url( 
    198175        array( 
     
    207184    '<a href="'.make_index_url().'">'.$conf['gallery_title'].'</a><br/> '; 
    208185 
    209   $item->description .= 
    210         '<li>' 
    211         .l10n_dec('%d new element', '%d new elements', $date_detail['nb_elements']) 
    212         .' (' 
    213         .'<a href="'.make_index_url(array('section'=>'recent_pics')).'">' 
    214           .l10n('recent_pics_cat').'</a>' 
    215         .')' 
    216         .'</li>'; 
    217  
    218   foreach( $date_detail['elements'] as $element ) 
    219   { 
    220     $tn_src = get_thumbnail_url($element); 
    221     $item->description .= '<img src="'.$tn_src.'"/>'; 
    222   } 
    223   $item->description .= '...<br/>'; 
    224  
    225   $item->description .= 
    226         '<li>' 
    227         .l10n_dec('%d category updated', '%d categories updated', 
    228                   $date_detail['nb_cats']) 
    229         .'</li>'; 
    230  
    231   $item->description .= '<ul>'; 
    232   foreach( $date_detail['categories'] as $cat ) 
    233   { 
    234     $item->description .= 
    235           '<li>' 
    236           .get_cat_display_name_cache($cat['uppercats']) 
    237           .' ('. 
    238           l10n_dec('%d new element', 
    239                    '%d new elements', $cat['img_count']).')' 
    240           .'</li>'; 
    241   } 
    242   $item->description .= '</ul>'; 
     186  $item->description .= get_html_description_recent_post_date($date_detail); 
    243187 
    244188  $item->descriptionHtmlSyndicated = true; 
  • trunk/include/functions_mail.inc.php

    r1726 r1784  
    6565    format_email($conf['gallery_title'], $conf_mail['email_webmaster']); 
    6666 
    67   // what to display at the bottom of each mail ? 
    68   $conf_mail['text_footer'] = 
    69     "\n\n-- \nPhpWebGallery ".($conf['show_version'] ? PHPWG_VERSION : ''); 
    70    
    7167  return $conf_mail; 
    7268} 
     
    106102 * @param none 
    107103 */ 
    108 function get_mail_template() 
     104function get_mail_template($email_format) 
    109105{ 
    110106  global $conf; 
     
    113109  list($tmpl, $thm) = explode('/', $conf['default_template']); 
    114110  $mail_template = new Template(PHPWG_ROOT_PATH.'template/'.$tmpl, $thm); 
     111  $mail_template->set_rootdir(PHPWG_ROOT_PATH.'template/'.$tmpl.'/mail/'.$email_format); 
    115112 
    116113  return $mail_template; 
     
    118115 
    119116/** 
     117 * Return string email format (html or not)  
     118 * 
     119 * @param string format 
     120 */ 
     121function get_str_email_format($is_html) 
     122{ 
     123  return ($is_html ? 'text/html' : 'text/plain'); 
     124} 
     125 
     126/** 
    120127 * sends an email, using PhpWebGallery specific informations 
    121128 */ 
    122129function pwg_mail($to, $from = '', $subject = 'PhpWebGallery', $infos = '', $format_infos = 'text/plain', $email_format = null) 
    123130{ 
    124   global $conf, $conf_mail, $lang_info, $user, $page; 
     131  global $conf, $conf_mail, $lang_info, $page; 
    125132 
    126133  $cvt7b_subject = str_translate_to_ascii7bits($subject); 
     
    171178  $content = ''; 
    172179 
    173   if (!isset($conf_mail[$email_format][$lang_info['charset']]['header'])) 
    174   { 
    175     if ($email_format == 'text/html') 
    176     { 
    177       $mail_template = get_mail_template(); 
    178  
    179       $mail_template->set_filenames(array('mail_header'=>'mail/header.tpl')); 
    180  
    181       $mail_template->assign_vars( 
    182         array( 
    183           'BODY_ID' => 
    184             isset($page['body_id']) ? 
    185               $page['body_id'] : '', 
    186  
    187           'CONTENT_ENCODING' => $lang_info['charset'], 
    188           'LANG' => $lang_info['code'], 
    189           'DIR' => $lang_info['direction'] 
    190           )); 
    191  
    192       $conf_mail[$email_format][$lang_info['charset']]['header'] = 
    193         $mail_template->parse('mail_header', true); 
    194     } 
    195     else 
    196     { 
    197       $conf_mail[$email_format][$lang_info['charset']]['header'] = ''; 
    198     } 
     180  if (!isset($conf_mail[$email_format][$lang_info['charset']])) 
     181  { 
     182    if (!isset($mail_template)) 
     183    { 
     184      $mail_template = get_mail_template($email_format); 
     185    } 
     186 
     187    $mail_template->set_filename('mail_header', 'header.tpl'); 
     188    $mail_template->set_filename('mail_footer', 'footer.tpl'); 
     189 
     190    $mail_template->assign_vars( 
     191      array( 
     192        //Header 
     193        'BODY_ID' => 
     194          isset($page['body_id']) ? 
     195            $page['body_id'] : '', 
     196 
     197        'CONTENT_ENCODING' => $lang_info['charset'], 
     198        'LANG' => $lang_info['code'], 
     199        'DIR' => $lang_info['direction'], 
     200         
     201        // Footer 
     202        'GALLERY_URL' => 
     203          isset($page['gallery_url']) ? 
     204                $page['gallery_url'] : $conf['gallery_url'], 
     205        'GALLERY_TITLE' => 
     206          isset($page['gallery_title']) ? 
     207                $page['gallery_title'] : $conf['gallery_title'], 
     208        'VERSION' => $conf['show_version'] ? PHPWG_VERSION : '', 
     209        'PHPWG_URL' => PHPWG_URL, 
     210 
     211        'TITLE_MAIL' => urlencode(l10n('title_send_mail')), 
     212        'MAIL' => get_webmaster_mail_address() 
     213        )); 
     214 
     215    // what are displayed on the header of each mail ? 
     216    $conf_mail[$email_format][$lang_info['charset']]['header'] = 
     217      $mail_template->parse('mail_header', true); 
     218 
     219    // what are displayed on the footer of each mail ? 
     220    $conf_mail[$email_format][$lang_info['charset']]['footer'] = 
     221      $mail_template->parse('mail_footer', true); 
    199222  } 
    200223 
     
    208231  { 
    209232    $content.= $infos; 
    210   } 
    211  
    212   if (!isset($conf_mail[$email_format][$lang_info['charset']]['footer'])) 
    213   { 
    214     if ($email_format == 'text/html') 
    215     { 
    216       $mail_template->set_filenames(array('mail_footer'=>'mail/footer.tpl')); 
    217  
    218       $mail_template->assign_vars( 
    219         array( 
    220           'GALLERY_URL' => 
    221             isset($page['gallery_url']) ? 
    222                   $page['gallery_url'] : $conf['gallery_url'], 
    223           'GALLERY_TITLE' => 
    224             isset($page['gallery_title']) ? 
    225                   $page['gallery_title'] : $conf['gallery_title'], 
    226           'VERSION' => $conf['show_version'] ? PHPWG_VERSION : '', 
    227           'PHPWG_URL' => PHPWG_URL, 
    228  
    229           'TITLE_MAIL' => urlencode(l10n('title_send_mail')), 
    230           'MAIL' => get_webmaster_mail_address() 
    231           )); 
    232  
    233       $conf_mail[$email_format][$lang_info['charset']]['footer'] = 
    234         $mail_template->parse('mail_footer', true); 
    235     } 
    236     else 
    237     { 
    238       $conf_mail[$email_format][$lang_info['charset']]['footer'] = $conf_mail['text_footer']; 
    239     } 
    240233  } 
    241234 
     
    248241  } 
    249242 
     243  /*Testing block 
     244  { 
     245    global $user; 
     246    @mkdir(PHPWG_ROOT_PATH.'testmail'); 
     247    $filename = PHPWG_ROOT_PATH.'testmail/mail.'.$user['username']; 
     248    if ($format_infos == 'text/plain') 
     249    { 
     250      $filename .= '.txt'; 
     251    } 
     252    else 
     253    { 
     254      $filename .= '.html'; 
     255    } 
     256    $file = fopen($filename, 'w+'); 
     257    fwrite($file, $content); 
     258    fclose($file); 
     259    return true; 
     260  } 
     261  */ 
     262 
    250263  if ($conf_mail['mail_options']) 
    251264  { 
  • trunk/include/functions_notification.inc.php

    r1677 r1784  
    408408  { 
    409409    add_news_line( $news, 
    410       nb_new_elements($start, $end), '%d new element', '%d new elements'); 
     410      nb_new_elements($start, $end), '%d new element', '%d new elements', 
     411      get_root_url().'index.php?/recent_pics', $add_url ); 
    411412  } 
    412413 
     
    414415  { 
    415416    add_news_line( $news, 
    416       nb_updated_categories($start, $end), '%d category updated', '%d categories updated'); 
     417      nb_updated_categories($start, $end), '%d category updated', '%d categories updated', 
     418      get_root_url().'/index.php?/recent_cats', $add_url ); 
    417419  } 
    418420 
     
    510512  return $dates; 
    511513} 
     514 
     515/** 
     516 * returns html description about recently published elements grouped by post date 
     517 * @param $date_detail: selected date computed by get_recent_post_dates function 
     518 */ 
     519function get_html_description_recent_post_date($date_detail) 
     520{ 
     521  global $conf; 
     522 
     523  $description = ''; 
     524   
     525  $description .= 
     526        '<li>' 
     527        .l10n_dec('%d new element', '%d new elements', $date_detail['nb_elements']) 
     528        .' (' 
     529        .'<a href="'.make_index_url(array('section'=>'recent_pics')).'">' 
     530          .l10n('recent_pics_cat').'</a>' 
     531        .')' 
     532        .'</li><br/>'; 
     533 
     534  foreach($date_detail['elements'] as $element) 
     535  { 
     536    $tn_src = get_thumbnail_url($element); 
     537    $description .= '<img src="'.$tn_src.'"/>'; 
     538  } 
     539  $description .= '...<br/>'; 
     540 
     541  $description .= 
     542        '<li>' 
     543        .l10n_dec('%d category updated', '%d categories updated', 
     544                  $date_detail['nb_cats']) 
     545        .'</li>'; 
     546 
     547  $description .= '<ul>'; 
     548  foreach($date_detail['categories'] as $cat) 
     549  { 
     550    $description .= 
     551          '<li>' 
     552          .get_cat_display_name_cache($cat['uppercats']) 
     553          .' ('. 
     554          l10n_dec('%d new element', 
     555                   '%d new elements', $cat['img_count']).')' 
     556          .'</li>'; 
     557  } 
     558  $description .= '</ul>'; 
     559 
     560  return $description; 
     561} 
     562 
     563/** 
     564 * explodes a MySQL datetime format (2005-07-14 23:01:37) in fields "year", 
     565 * "month", "day", "hour", "minute", "second". 
     566 * 
     567 * @param string mysql datetime format 
     568 * @return array 
     569 */ 
     570function explode_mysqldt($mysqldt) 
     571{ 
     572  $date = array(); 
     573  list($date['year'], 
     574       $date['month'], 
     575       $date['day'], 
     576       $date['hour'], 
     577       $date['minute'], 
     578       $date['second']) 
     579    = preg_split('/[-: ]/', $mysqldt); 
     580 
     581  return $date; 
     582} 
     583 
     584/** 
     585 * returns title about recently published elements grouped by post date 
     586 * @param $date_detail: selected date computed by get_recent_post_dates function 
     587 */ 
     588function get_title_recent_post_date($date_detail) 
     589{ 
     590  global $lang; 
     591 
     592  $date = $date_detail['date_available']; 
     593  $exploded_date = explode_mysqldt($date); 
     594 
     595  $title = l10n_dec('%d new element', '%d new elements', $date_detail['nb_elements']); 
     596  $title .= ' ('.$lang['month'][(int)$exploded_date['month']].' '.$exploded_date['day'].')'; 
     597 
     598  return $title; 
     599} 
     600 
    512601?> 
  • trunk/install/config.sql

    r1770 r1784  
    2525INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('allow_user_registration','true','allow visitors to register?'); 
    2626INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('secret_key', MD5(RAND()), 'a secret key specific to the gallery for internal use'); 
    27 -- Notification by mail 
     27INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('nbm_send_html_mail','true','Send mail on HTML format for notification by mail'); 
    2828INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('nbm_send_mail_as','','Send mail as param value for notification by mail'); 
    2929INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('nbm_send_detailed_content','true','Send detailed content for notification by mail'); 
    3030INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('nbm_complementary_mail_content','','Complementary mail content for notification by mail'); 
     31INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('nbm_send_recent_post_dates','true','Send recent post by dates for notification by mail'); 
    3132INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('email_admin_on_new_user','false','Send an email to the admin when a user registers'); 
    3233INSERT INTO phpwebgallery_config (param,value,comment) VALUES ('email_admin_on_comment','false','Send an email to the admin when a valid comment is entered'); 
  • trunk/language/en_UK.iso-8859-1/admin.lang.php

    r1775 r1784  
    270270$lang['metadata_iptc'] = 'IPTC'; 
    271271$lang['name'] = 'name'; 
    272 $lang['nbm_background_treatment_redirect'] = 'Execution time is out, treatment must be continue [Estmated time: %d secondes].'; 
     272$lang['nbm_background_treatment_redirect_second'] = 'Execution time is out, treatment must be continue [Estmated time: %d second].'; 
     273$lang['nbm_background_treatment_redirect_seconds'] = 'Execution time is out, treatment must be continue [Estmated time: %d seconds].'; 
    273274$lang['nbm_break_timeout_list_user'] = 'Prepared time for list of users to send mail is limited. Others users are not listed.'; 
    274275$lang['nbm_break_timeout_send_mail'] = 'Time to send mail is limited. Others mails are skipped.'; 
     
    278279$lang['nbm_col_user'] = 'User'; 
    279280$lang['nbm_complementary_mail_content'] = 'Complementary mail content'; 
    280 $lang['nbm_content_byebye'] = 'See you soon'; 
    281 $lang['nbm_content_goto'] = 'Go to %s %s.'; 
    282 $lang['nbm_content_hello'] = 'Hello %s'; 
    283 $lang['nbm_content_new_elements'] = 'New elements were added on %s'; 
    284 $lang['nbm_content_new_elements_between'] = 'New elements were added between %s and %s'; 
     281$lang['nbm_content_byebye'] = 'See you soon,'; 
     282$lang['nbm_content_goto_1'] = 'Go to '; 
     283$lang['nbm_content_goto_2'] = '.'; 
     284$lang['nbm_content_hello_1'] = 'Hello '; 
     285$lang['nbm_content_hello_2'] = ','; 
     286$lang['nbm_content_new_elements'] = 'New elements were added '; 
     287$lang['nbm_content_new_elements_single'] = ' on '; 
     288$lang['nbm_content_new_elements_between_1'] = 'between '; 
     289$lang['nbm_content_new_elements_between_2'] = ' and '; 
    285290$lang['nbm_content_subscribe_by_admin'] = 'The webmaster has subcribed you for receiving notifications by mail'; 
    286291$lang['nbm_content_subscribe_by_himself'] = 'You have subcribed to receiving notifications by mail'; 
    287 $lang['nbm_content_subscribe_link'] = 'To subscribe, click on %s .'; 
    288 $lang['nbm_content_subscribe_unsubscribe_contact'] = 'If you encounter problems or have any question, please send a message to %s.'; 
     292$lang['nbm_content_subscribe_link'] = 'To subscribe'; 
     293$lang['nbm_content_problem_contact'] = 'If you encounter problems or have any question, please send a message to '; 
     294$lang['nbm_content_pb_contact_object'] = '[NBM] Problems or questions'; 
    289295$lang['nbm_content_unsubscribe_by_admin'] = 'The webmaster has unsubcribed you from receiving notifications by mail'; 
    290296$lang['nbm_content_unsubscribe_by_himself'] = 'You have unsubcribed from receiving notifications by mail'; 
    291 $lang['nbm_content_unsubscribe_link'] = 'To unsubscribe, click on %s .'; 
     297$lang['nbm_content_click_on'] = ', click on '; 
     298$lang['nbm_content_unsubscribe_link'] = 'To unsubscribe'; 
    292299$lang['nbm_info_send_mail_as'] = 'With blank value, gallery title will be used'; 
    293300$lang['nbm_item_notification'] = 'Notification'; 
    294301$lang['nbm_msg_error_sending_email_to'] = 'Error when sending email to %s [%s].'; 
    295302$lang['nbm_msg_mail_sent_to'] = 'Mail sent to %s [%s].'; 
     303$lang['nbm_msg_n_mail_sent'] = '%d mail was sent.'; 
    296304$lang['nbm_msg_n_mails_sent'] = '%d mails were sent.'; 
    297 $lang['nbm_msg_no_mail_to_send'] = '%d mails were not sent.'; 
     305$lang['nbm_msg_n_mail_not_send'] = '%d mail was not sent.'; 
     306$lang['nbm_msg_n_mails_not_send'] = '%d mails were not sent.'; 
    298307$lang['nbm_no_mail_to_send'] = 'No mail to send.'; 
    299308$lang['nbm_no_user_available_to_send_L1'] = 'No user are available in order to send mail.'; 
     
    309318$lang['nbm_send_check_all'] = 'Check All'; 
    310319$lang['nbm_send_complementary_mail_content'] = 'Complementary mail content'; 
    311 $lang['nbm_send_detailed_content'] = 'Send detailed content'; 
     320$lang['nbm_send_detailed_content'] = 'Add detailed content'; 
    312321$lang['nbm_send_mail_as'] = 'Send mail as'; 
    313322$lang['nbm_send_mail_to_users'] = 'Send mail to users'; 
     
    322331$lang['nbm_title_subscribe'] = 'Subscribe/unsubscribe users'; 
    323332$lang['nbm_unsubscribe_col'] = 'Unsubcribed'; 
    324 $lang['nbm_updated_param_count'] = '%d parameters are updated.'; 
    325 $lang['nbm_user_change_enabled_error_on_updated_data_count'] = '%d user(s) are not updated.'; 
    326 $lang['nbm_user_change_enabled_false'] = 'User %s [%s] removed from the subscription list.'; 
    327 $lang['nbm_user_change_enabled_true'] = 'User %s [%s] added to the subscription list.'; 
    328 $lang['nbm_user_change_enabled_updated_data_count'] = '%d user(s) are updated.'; 
    329 $lang['nbm_user_not_change_enabled_false'] = 'User %s [%s] not removed from the subscription list.'; 
    330 $lang['nbm_user_not_change_enabled_true'] = 'User %s [%s] not added to the subscription list.'; 
     333$lang['nbm_updated_param_count'] = '%d parameter was updated.'; 
     334$lang['nbm_updated_params_count'] = '%d parameters were updated.'; 
     335$lang['nbm_user_change_enabled_error_on_updated_data_count'] = '%d user was not updated.'; 
     336$lang['nbm_users_change_enabled_error_on_updated_data_count'] = '%d users were not updated.'; 
     337$lang['nbm_user_change_enabled_false'] = 'User %s [%s] was removed from the subscription list.'; 
     338$lang['nbm_user_change_enabled_true'] = 'User %s [%s] was added to the subscription list.'; 
     339$lang['nbm_user_change_enabled_updated_data_count'] = '%d user was updated.'; 
     340$lang['nbm_users_change_enabled_updated_data_count'] = '%d users were updated.'; 
     341$lang['nbm_user_not_change_enabled_false'] = 'User %s [%s] was not removed from the subscription list.'; 
     342$lang['nbm_user_not_change_enabled_true'] = 'User %s [%s] was not added to the subscription list.'; 
    331343$lang['nbm_user_x_added'] = 'User %s [%s] added.'; 
    332344$lang['nbm_warning_subscribe_unsubcribe'] = 'Warning: subscribing or unsubcribing will send mails to users'; 
     345$lang['nbm_send_html_mail'] = 'Send mail on HTML format'; 
     346$lang['nbm_send_recent_post_dates'] = 'Include display of recent pictures group by dates'; 
     347$lang['nbm_info_send_recent_post_dates'] = 'Available only with HTML format'; 
    333348$lang['no_write_access'] = 'no write access'; 
    334349$lang['path'] = 'path'; 
  • trunk/language/fr_FR.iso-8859-1/admin.lang.php

    r1775 r1784  
    2929$lang['%d categories including %d physical and %d virtual'] = '%d cat�gories dont %d physiques et %d virtuelles'; 
    3030$lang['%d categories moved'] = '%d cat�gories d�plac�es'; 
    31 $lang['%d comments'] = '%d commentaires utilisateur'; 
     31$lang['%d comments'] = '%d commentaires d\'utilisateurs'; 
    3232$lang['%d elements'] = '%d �l�ments'; 
    3333$lang['%d groups'] = '%d groupes'; 
    3434$lang['%d members'] = '%d membres'; 
    3535$lang['%d tags'] = '%d tags'; 
    36 $lang['%d user comments rejected'] = '%d commentaires utilisateur rejet�s'; 
    37 $lang['%d user comments validated'] = '%d commentaires utilisateur valid�s'; 
     36$lang['%d user comments rejected'] = '%d commentaires d\'utilisateurs rejet�s'; 
     37$lang['%d user comments validated'] = '%d commentaires d\'utilisateurs valid�s'; 
    3838$lang['%d users deleted'] = '%d utilisateurs supprim�s'; 
    3939$lang['%d users'] = '%d utilisateurs'; 
     
    6363$lang['Check for upgrade failed for unknown reasons.'] = 'La v�rification de la derni�re version sur le serveur a �chou�e pour une raison inconnue.'; 
    6464$lang['Check for upgrade'] = 'Derni�re version ?'; 
    65 $lang['Comments for all'] = 'Commentaires utilisateur pour tous'; 
     65$lang['Comments for all'] = 'Commentaires pour tous'; 
    6666$lang['Controversy'] = 'Controverse'; 
    6767$lang['Creation date'] = 'Date de cr�ation'; 
     
    124124$lang['No tag defined. Use Administration>Pictures>Tags'] = 'Aucun tag d�fini. Utiliser l\'�cran Adminstration>Images>Tags'; 
    125125$lang['No'] = 'Non'; 
    126 $lang['Number of comments per page'] = 'Nombre de commentaires utilisateur par page'; 
     126$lang['Number of comments per page'] = 'Nombre de commentaires par page'; 
    127127$lang['Number of images per row'] = 'Nombre de miniatures par ligne'; 
    128128$lang['Number of rates'] = 'Nombre de notes'; 
     
    179179$lang['Uninstall'] = 'D�sinstaller'; 
    180180$lang['Use default sort order']='Utiliser l\'ordre de tri des images par d�faut (d�fini dans le fichier de configuration)'; 
    181 $lang['User comments validation'] = 'Validation des commentaires utilisateur'; 
     181$lang['User comments validation'] = 'Validation des commentaires d\'utilisateurs'; 
    182182$lang['Users'] = 'Utilisateurs'; 
    183183$lang['Validate All'] = 'Tout valider'; 
     
    216216$lang['category'] = 'cat�gorie'; 
    217217$lang['conf_access'] = 'Type d\'acc�s'; 
    218 $lang['conf_comments_title'] = 'Commentaires utilisateur'; 
     218$lang['conf_comments_title'] = 'Commentaires d\'utilisateurs'; 
    219219$lang['conf_confirmation'] = 'Informations enregistr�es dans la base de donn�es'; 
    220220$lang['conf_default'] = 'Affichage par d�faut'; 
     
    222222$lang['conf_gallery_url_error'] = 'L\'adresse de la galerie n\'est pas valide.'; 
    223223$lang['conf_general_title'] = 'Configuration principale'; 
    224 $lang['conf_nb_comment_page_error'] = 'Le nombre de commentaires utilisateurs par page doit �tre compris entre 5 et 50.'; 
     224$lang['conf_nb_comment_page_error'] = 'Le nombre de commentaires d\'utilisateurs par page doit �tre compris entre 5 et 50.'; 
    225225$lang['config'] = 'Configuration'; 
    226226$lang['confirm'] = 'confirmer'; 
     
    270270$lang['metadata_iptc'] = 'IPTC'; 
    271271$lang['name'] = 'nom'; 
    272 $lang['nbm_background_treatment_redirect'] = 'Le temps d\'ex�cution �tant d�pass�, le traitement doit continuer [Temps estim�: %d secondes].'; 
     272$lang['nbm_background_treatment_redirect_second'] = 'Le temps d\'ex�cution �tant d�pass�, le traitement doit continuer [Temps estim�: %d second].'; 
     273$lang['nbm_background_treatment_redirect_seconds'] = 'Le temps d\'ex�cution �tant d�pass�, le traitement doit continuer [Temps estim�: %d secondes].'; 
    273274$lang['nbm_break_timeout_list_user'] = 'Le temps de pr�paration de la liste des utilisateurs pour l\'envoi est limit�. Les autres utilisateurs ne sont pas list�s.'; 
    274275$lang['nbm_break_timeout_send_mail'] = 'Le temps d\'envoi des mails est limit�. Les autres envois de mail ont �t� ignor�s.'; 
     
    278279$lang['nbm_col_user'] = 'Utilisateur'; 
    279280$lang['nbm_complementary_mail_content'] = 'Contenu compl�mentaire au mail'; 
    280 $lang['nbm_content_byebye'] = 'A bient�t'; 
    281 $lang['nbm_content_goto'] = 'Rendez-vous sur %s %s.'; 
    282 $lang['nbm_content_hello'] = 'Bonjour %s'; 
    283 $lang['nbm_content_new_elements'] = 'Des nouveaux �l�ments ont �t� ajout�s le %s'; 
    284 $lang['nbm_content_new_elements_between'] = 'Des nouveaux �l�ments ont �t� ajout�s entre le %s et le %s'; 
     281$lang['nbm_content_byebye'] = 'A bient�t,'; 
     282$lang['nbm_content_goto_1'] = 'Rendez-vous sur '; 
     283$lang['nbm_content_goto_2'] = '.'; 
     284$lang['nbm_content_hello_1'] = 'Bonjour '; 
     285$lang['nbm_content_hello_2'] = ','; 
     286$lang['nbm_content_new_elements'] = 'De nouveaux �l�ments ont �t� ajout�s '; 
     287$lang['nbm_content_new_elements_single'] = ' le '; 
     288$lang['nbm_content_new_elements_between_1'] = 'entre le '; 
     289$lang['nbm_content_new_elements_between_2'] = ' et le '; 
    285290$lang['nbm_content_subscribe_by_admin'] = 'Vous venez d\'�tre inscrit par le webmestre du site pour recevoir la notification par mail.'; 
    286291$lang['nbm_content_subscribe_by_himself'] = 'Vous venez de vous inscrire pour recevoir la notification par mail.'; 
    287 $lang['nbm_content_subscribe_link'] = 'Pour vous inscrire, cliquez sur %s .'; 
    288 $lang['nbm_content_subscribe_unsubscribe_contact'] = 'En cas de probl�mes ou de questions, envoyer un mail � %s.'; 
     292$lang['nbm_content_subscribe_link'] = 'Pour vous inscrire'; 
     293$lang['nbm_content_problem_contact'] = 'En cas de probl�mes ou de questions, envoyer un mail � '; 
     294$lang['nbm_content_pb_contact_object'] = '[NBM] Probl�mes ou de questions'; 
    289295$lang['nbm_content_unsubscribe_by_admin'] = 'Vous venez d\'�tre d�sinscrit par le webmestre du site pour recevoir la notification par mail.'; 
    290296$lang['nbm_content_unsubscribe_by_himself'] = 'Vous venez de vous d�sinscrire pour recevoir la notification par mail.'; 
    291 $lang['nbm_content_unsubscribe_link'] = 'Pour vous d�sinscrire, cliquez sur %s .'; 
     297$lang['nbm_content_click_on'] = ', cliquez sur '; 
     298$lang['nbm_content_unsubscribe_link'] = 'Pour vous d�sinscrire'; 
    292299$lang['nbm_info_send_mail_as'] = 'Sans valeur, le titre de la galerie sera utilis�'; 
    293300$lang['nbm_item_notification'] = 'Notification'; 
    294301$lang['nbm_msg_error_sending_email_to'] = 'Erreur lors de l\'envoi du mail � %s [%s].'; 
    295302$lang['nbm_msg_mail_sent_to'] = 'Mail envoy� � %s [%s].'; 
     303$lang['nbm_msg_n_mail_sent'] = '%s mail a �t� envoy�.'; 
    296304$lang['nbm_msg_n_mails_sent'] = '%s mails ont �t� envoy�s.'; 
    297 $lang['nbm_msg_no_mail_to_send'] = '%s mails n\'ont pas �t� envoy�s.'; 
     305$lang['nbm_msg_n_mail_not_send'] = '%s mail n\'a pas �t� envoy�.'; 
     306$lang['nbm_msg_n_mails_not_send'] = '%s mails n\'ont pas �t� envoy�s.'; 
    298307$lang['nbm_no_mail_to_send'] = 'Pas de mail � envoyer.'; 
    299308$lang['nbm_no_user_available_to_send_L1'] = 'Il n\'y a pas d\'utilisateur � notifier par mail.'; 
     
    309318$lang['nbm_send_check_all'] = 'Tout cocher'; 
    310319$lang['nbm_send_complementary_mail_content'] = 'Contenu compl�mentaire du mail'; 
    311 $lang['nbm_send_detailed_content'] = 'Envoi d\'un contenu d�taill�'; 
     320$lang['nbm_send_detailed_content'] = 'Ajout d\'un contenu d�taill�'; 
    312321$lang['nbm_send_mail_as'] = 'Envoyer le mail en tant que'; 
    313322$lang['nbm_send_mail_to_users'] = 'Envoi de mail aux utilisateurs'; 
     
    322331$lang['nbm_title_subscribe'] = 'Inscrire/d�sinscrire les utilisateurs'; 
    323332$lang['nbm_unsubscribe_col'] = 'Non Inscrits'; 
    324 $lang['nbm_updated_param_count'] = '%d param�tres ont �t� mis � jour.'; 
    325 $lang['nbm_user_change_enabled_error_on_updated_data_count'] = '%d utilisateurs n\'ont pas �t� mis � jour.'; 
     333$lang['nbm_updated_param_count'] = '%d param�tre a �t� mis � jour.'; 
     334$lang['nbm_updated_params_count'] = '%d param�tres ont �t� mis � jour.'; 
     335$lang['nbm_user_change_enabled_error_on_updated_data_count'] = '%d utilisateur n\'a pas �t� mis � jour.'; 
     336$lang['nbm_users_change_enabled_error_on_updated_data_count'] = '%d utilisateurs n\'ont pas �t� mis � jour.'; 
    326337$lang['nbm_user_change_enabled_false'] = 'L\'utilisateur %s [%s] a �t� supprim� de la liste des inscrits.'; 
    327338$lang['nbm_user_change_enabled_true'] = 'L\'utilisateur %s [%s] a �t� ajout� � la liste des inscrits.'; 
    328 $lang['nbm_user_change_enabled_updated_data_count'] = '%d utilisateurs ont �t� mis � jour.'; 
     339$lang['nbm_user_change_enabled_updated_data_count'] = '%d utilisateur a �t� mis � jour.'; 
     340$lang['nbm_users_change_enabled_updated_data_count'] = '%d utilisateurs ont �t� mis � jour.'; 
    329341$lang['nbm_user_not_change_enabled_false'] = 'L\'utilisateur %s [%s] n\'a pas �t� supprim� de la liste des inscrits.'; 
    330342$lang['nbm_user_not_change_enabled_true'] = 'L\'utilisateur %s [%s] n\'a pas �t� ajout� � la liste des inscrits.'; 
    331343$lang['nbm_user_x_added'] = 'Utilisateur %s [%s] ajout�.'; 
    332344$lang['nbm_warning_subscribe_unsubcribe'] = 'Attention, l\'inscription ou la d�sincription entraine l\'envoi de mails aux utilisateurs concern�s'; 
     345$lang['nbm_send_html_mail'] = 'Envoyer le mail au format HTML'; 
     346$lang['nbm_send_recent_post_dates'] = 'Inclure l\'affichage des derni�res images group�es par dates'; 
     347$lang['nbm_info_send_recent_post_dates'] = 'Disponible uniquement avec le format HTML'; 
    333348$lang['no_write_access'] = 'pas d\'acc�s en �criture'; 
    334349$lang['path'] = 'chemin'; 
  • trunk/template/yoga/admin/notification_by_mail.tpl

    r1780 r1784  
    2828    <table> 
    2929      <tr> 
     30        <td><label>{lang:nbm_send_html_mail}</label></td> 
     31        <td> 
     32          <label><input type="radio" name="nbm_send_html_mail" value="true"  {param.SEND_HTML_MAIL_YES}/>{lang:yes}</label> 
     33          <label><input type="radio" name="nbm_send_html_mail" value="false" {param.SEND_HTML_MAIL_NO}/>{lang:no}</label> 
     34        </td> 
     35      </tr> 
     36      <tr> 
    3037        <td> 
    3138          <label for="send_mail_as">{lang:nbm_send_mail_as}</label> 
     
    3441        <td><input type="text" maxlength="35" size="35" name="nbm_send_mail_as" id="send_mail_as" value="{param.SEND_MAIL_AS}"/></td> 
    3542      </tr> 
    36       <tr>  
    37         <td><label>{lang:nbm_send_detailed_content} </label></td> 
     43      <tr> 
     44        <td><label>{lang:nbm_send_detailed_content}</label></td> 
    3845        <td> 
    3946          <label><input type="radio" name="nbm_send_detailed_content" value="true"  {param.SEND_DETAILED_CONTENT_YES}/>{lang:yes}</label> 
     
    4249      </tr> 
    4350     <tr> 
    44         <td><label for="complementary_mail_content">{lang:nbm_complementary_mail_content} </label></td> 
     51        <td><label for="complementary_mail_content">{lang:nbm_complementary_mail_content}</label></td> 
    4552        <td><textarea cols="50" rows="5" name="nbm_complementary_mail_content" id="complementary_mail_content">{param.COMPLEMENTARY_MAIL_CONTENT}</textarea></td> 
     53      </tr> 
     54      <tr> 
     55        <td> 
     56          <label>{lang:nbm_send_recent_post_dates}</label> 
     57          <br><i><small>{lang:nbm_info_send_recent_post_dates}</small></i> 
     58        </td> 
     59        <td> 
     60          <label><input type="radio" name="nbm_send_recent_post_dates" value="true"  {param.SEND_RECENT_POST_DATES_YES}/>{lang:yes}</label> 
     61          <label><input type="radio" name="nbm_send_recent_post_dates" value="false" {param.SEND_RECENT_POST_DATES_NO}/>{lang:no}</label> 
     62        </td> 
    4663      </tr> 
    4764    </table> 
     
    99116      <table> 
    100117       <tr> 
    101           <td><label for="send_customize_mail_content">{lang:nbm_send_complementary_mail_content} </label></td> 
     118          <td><label for="send_customize_mail_content">{lang:nbm_send_complementary_mail_content}</label></td> 
    102119          <td><textarea cols="50" rows="5" name="send_customize_mail_content" id="send_customize_mail_content">{send.send_data.CUSTOMIZE_MAIL_CONTENT}</textarea></td> 
    103120        </tr> 
  • trunk/template/yoga/mail/index.php

    r1642 r1784  
    33// | PhpWebGallery - a PHP based picture gallery                           | 
    44// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | 
    5 // | Copyright (C) 2003-2005 PhpWebGallery Team - http://phpwebgallery.net | 
     5// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | 
    66// +-----------------------------------------------------------------------+ 
    77// | branch        : BSF (Best So Far) 
  • trunk/template/yoga/mail/text/html/footer.tpl

    r1752 r1784  
    11<div id="copyright"> 
    2  
     2<HR> 
    33 <!-- Please, do not remove this copyright. If you really want to, 
    44      contact us on http://phpwebgallery.net to find a solution on how