diff options
author | rub <rub@piwigo.org> | 2007-03-13 23:01:16 +0000 |
---|---|---|
committer | rub <rub@piwigo.org> | 2007-03-13 23:01:16 +0000 |
commit | c5da19e5362101517d3f805c86132016b90bd271 (patch) | |
tree | 2751d89bb79584f8a32192c21f6b2429fc7794ce /admin | |
parent | 6295173652a7767fa482df231ae7a9034b89ecde (diff) |
Fix bad default value for language on table user_info
Improve mail send (Undisclosed-recipients, switch language, ...)
Improve send an email to group members (Use Bcc, template, multi-language, ...) (But need more improvements)
git-svn-id: http://piwigo.org/svn/trunk@1904 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'admin')
-rw-r--r-- | admin/cat_modify.php | 68 | ||||
-rw-r--r-- | admin/include/functions_notification_by_mail.inc.php | 34 |
2 files changed, 53 insertions, 49 deletions
diff --git a/admin/cat_modify.php b/admin/cat_modify.php index 95abb8e00..5571cc439 100644 --- a/admin/cat_modify.php +++ b/admin/cat_modify.php @@ -529,35 +529,59 @@ display_select_cat_wrapper( // info by email to an access granted group of category informations if (isset($_POST['submitEmail'])) { - $query = ' -SELECT - user_id, - '.$conf['user_fields']['email'].' AS email - FROM '.USER_GROUP_TABLE.' - INNER JOIN '.USERS_TABLE.' ON '.$conf['user_fields']['id'].' = user_id - WHERE '.$conf['user_fields']['email'].' IS NOT NULL - AND group_id = '.$_POST['group'].' + set_make_full_url(); + + /* TODO: if $category['representative_picture_id'] + is empty find child representative_picture_id */ + if (!empty($category['representative_picture_id'])) + { + $query = ' +SELECT id, file, path, tn_ext + FROM '.IMAGES_TABLE.' + WHERE id = '.$category['representative_picture_id'].' ;'; - $result = pwg_query($query); - while ($row = mysql_fetch_array($result)) + $result = pwg_query($query); + if (mysql_num_rows($result) > 0) + { + $element = mysql_fetch_assoc($result); + + $img_url = '<a href="'. + make_picture_url(array( + 'image_id' => $element['id'], + 'image_file' => $element['file'], + 'category' => $category + )) + .'"><img src="'.get_thumbnail_url($element).'"/></a>'; + } + } + + if (!isset($img_url)) { - pwg_mail( - $row['email'], - array( - 'content' => get_absolute_root_url().make_index_url( + $img_url = ''; + } + + // TODO Mettre un array pour traduction subjet + pwg_mail_group( + $_POST['group'], + get_str_email_format(true), /* TODO add a checkbox in order to choose format*/ + $category['name'], + 'cat_group_info', + array + ( + 'IMG_URL' => $img_url, + 'LINK' => make_index_url( array( 'category' => array( 'id' => $category['id'], 'name' => $category['name'], - 'permalink' => $category['permalink'], - ) - ) - ), - 'subject' => $category['name'] - ) - ); - } + 'permalink' => $category['permalink'] + ))), + 'CPL_CONTENT' => '' /* TODO Add text area to add complementary content */ + ), + '' /* TODO Add listbox in order to choose Language selected */); + + unset_make_full_url(); $query = ' SELECT diff --git a/admin/include/functions_notification_by_mail.inc.php b/admin/include/functions_notification_by_mail.inc.php index 8af31caef..5773d105d 100644 --- a/admin/include/functions_notification_by_mail.inc.php +++ b/admin/include/functions_notification_by_mail.inc.php @@ -192,10 +192,8 @@ function begin_users_env_nbm($is_to_send_mail = false) // Save $user, $lang_info and $lang arrays (include/user.inc.php has been executed) $env_nbm['save_user'] = $user; - $env_nbm['save_lang_info'] = $lang_info; - $env_nbm['save_lang'] = $lang; - // Last Language - $env_nbm['last_language'] = $user['language']; + // Save current language to stack, necessary because $user change during NBM + switch_lang_to($user['language']); $env_nbm['is_to_send_mail'] = $is_to_send_mail; @@ -227,8 +225,8 @@ function end_users_env_nbm() // Restore $user, $lang_info and $lang arrays (include/user.inc.php has been executed) $user = $env_nbm['save_user']; - $lang_info = $env_nbm['save_lang_info']; - $lang = $env_nbm['save_lang']; + // Restore current language to stack, necessary because $user change during NBM + switch_lang_back(); if ($env_nbm['is_to_send_mail']) { @@ -244,11 +242,7 @@ function end_users_env_nbm() } unset($env_nbm['save_user']); - unset($env_nbm['save_lang_info']); - unset($env_nbm['save_lang']); - unset($env_nbm['last_language']); unset($env_nbm['is_to_send_mail']); - } /* @@ -262,23 +256,8 @@ function set_user_on_env_nbm(&$nbm_user, $is_action_send) $user = build_user( $nbm_user['user_id'], true ); - if ($env_nbm['last_language'] != $user['language']) - { - $env_nbm['last_language'] = $user['language']; - - // Re-Init language arrays - $lang_info = array(); - $lang = array(); - - // language files - include(get_language_filepath('common.lang.php')); - // No test admin because script is checked admin (user selected no) - // Translations are in admin file too - include(get_language_filepath('admin.lang.php')); - trigger_action('loading_lang'); - @include(get_language_filepath('local.lang.php')); - } - + switch_lang_to($user['language']); + if ($is_action_send) { $nbm_user['template'] = $user['template']; @@ -299,6 +278,7 @@ function unset_user_on_env_nbm() { global $env_nbm; + switch_lang_back(); unset($env_nbm['mail_template']); } |