mirror of
https://github.com/Piwigo/Piwigo.git
synced 2026-08-09 02:03:18 +02:00
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
This commit is contained in:
+47
-23
@@ -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'].'
|
||||
;';
|
||||
$result = pwg_query($query);
|
||||
set_make_full_url();
|
||||
|
||||
while ($row = mysql_fetch_array($result))
|
||||
/* TODO: if $category['representative_picture_id']
|
||||
is empty find child representative_picture_id */
|
||||
if (!empty($category['representative_picture_id']))
|
||||
{
|
||||
pwg_mail(
|
||||
$row['email'],
|
||||
array(
|
||||
'content' => get_absolute_root_url().make_index_url(
|
||||
$query = '
|
||||
SELECT id, file, path, tn_ext
|
||||
FROM '.IMAGES_TABLE.'
|
||||
WHERE id = '.$category['representative_picture_id'].'
|
||||
;';
|
||||
|
||||
$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))
|
||||
{
|
||||
$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
|
||||
|
||||
@@ -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'];
|
||||
switch_lang_to($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'));
|
||||
}
|
||||
|
||||
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']);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user