Changing DB constants email templates see #4658

skala
Julio Montoya 14 years ago
parent 4b62b03150
commit 08335baa0c
  1. 6
      main/inc/lib/database.constants.inc.php
  2. 22
      main/inc/lib/events.lib.inc.php
  3. 13
      main/inc/lib/events_email.class.php

@ -314,9 +314,9 @@ define('TABLE_TRACK_STORED_VALUES', 'track_stored_values');
define('TABLE_TRACK_STORED_VALUES_STACK', 'track_stored_values_stack');
//Event tables
define('TABLE_MAIN_EVENT_EMAIL_TEMPLATE','event_email_template');
define('TABLE_MAIN_EVENT_TYPE_REL_USER','user_rel_event_type');
define('TABLE_EVENT_SENT','event_sent');
define('TABLE_EVENT_EMAIL_TEMPLATE', 'event_email_template');
define('TABLE_EVENT_TYPE_REL_USER', 'user_rel_event_type');
define('TABLE_EVENT_SENT', 'event_sent');
define('TABLE_MAIN_SKILL', 'skill');
define('TABLE_MAIN_SKILL_REL_SKILL', 'skill_rel_skill');

@ -638,7 +638,7 @@ function get_all_event_types()
global $event_config;
$sql = 'SELECT etm.id, event_type_name, activated, language_id, message, subject, dokeos_folder
FROM '.Database::get_main_table(TABLE_MAIN_EVENT_EMAIL_TEMPLATE).' etm
FROM '.Database::get_main_table(TABLE_EVENT_EMAIL_TEMPLATE).' etm
INNER JOIN '.Database::get_main_table(TABLE_MAIN_LANGUAGE).' l
ON etm.language_id = l.id;
';
@ -664,7 +664,7 @@ function get_users_subscribed_to_event($event_name){
$event_name = Database::escape_string($event_name);
$sql = 'SELECT u.* FROM '. Database::get_main_table(TABLE_MAIN_USER).' u,'
.Database::get_main_table(TABLE_MAIN_EVENT_TYPE).' e,'
.Database::get_main_table(TABLE_MAIN_EVENT_TYPE_REL_USER).' ue
.Database::get_main_table(TABLE_EVENT_TYPE_REL_USER).' ue
WHERE ue.user_id = u.user_id
AND e.name = \''.$event_name.'\'
AND e.id = ue.event_type_id';
@ -680,7 +680,7 @@ function get_users_subscribed_to_event($event_name){
function get_event_users($event_name)
{
$sql = 'SELECT user.* FROM '.Database::get_main_table(TABLE_MAIN_USER).' user
JOIN '.Database::get_main_table(TABLE_MAIN_EVENT_TYPE_REL_USER).' relUser ON relUser.user_id = user.user_id
JOIN '.Database::get_main_table(TABLE_EVENT_TYPE_REL_USER).' relUser ON relUser.user_id = user.user_id
WHERE relUser.event_type_name = "'.$event_name.'"
';
@ -702,13 +702,13 @@ function get_event_users($event_name)
function save_event_type_message($event_name,$users,$message,$subject, $event_message_language, $activated)
{
// Deletes then re-adds the users linked to the event
$sql = 'DELETE FROM '.Database::get_main_table(TABLE_MAIN_EVENT_TYPE_REL_USER).'
$sql = 'DELETE FROM '.Database::get_main_table(TABLE_EVENT_TYPE_REL_USER).'
WHERE event_type_name = "'.$event_name.'"
';
Database::query($sql);
foreach ($users as $user) {
$sql = 'INSERT INTO '.Database::get_main_table(TABLE_MAIN_EVENT_TYPE_REL_USER).'
$sql = 'INSERT INTO '.Database::get_main_table(TABLE_EVENT_TYPE_REL_USER).'
(user_id,event_type_name)
VALUES('.intval($user).',"'. Database::escape_string($event_name).'")
';
@ -716,7 +716,7 @@ function save_event_type_message($event_name,$users,$message,$subject, $event_me
}
// check if this template in this language already exists or not
$sql = 'SELECT COUNT(id) as total FROM '.Database::get_main_table(TABLE_MAIN_EVENT_EMAIL_TEMPLATE).'
$sql = 'SELECT COUNT(id) as total FROM '.Database::get_main_table(TABLE_EVENT_EMAIL_TEMPLATE).'
WHERE event_type_name = "'.$event_name.'" AND language_id = (SELECT id FROM '.Database::get_main_table(TABLE_MAIN_LANGUAGE).'
WHERE dokeos_folder = "'.$event_message_language.'")
';
@ -724,7 +724,7 @@ function save_event_type_message($event_name,$users,$message,$subject, $event_me
// if already exists, we update
if ($sql[0]["total"] > 0) {
$sql = 'UPDATE '.Database::get_main_table(TABLE_MAIN_EVENT_EMAIL_TEMPLATE).'
$sql = 'UPDATE '.Database::get_main_table(TABLE_EVENT_EMAIL_TEMPLATE).'
SET message = "'.Database::escape_string($message).'",
subject = "'.Database::escape_string($subject).'",
activated = '.$activated.'
@ -738,7 +738,7 @@ function save_event_type_message($event_name,$users,$message,$subject, $event_me
WHERE dokeos_folder = "'.$event_message_language.'")';
$lang_id = Database::store_result(Database::query($lang_id),'ASSOC');
$sql = 'INSERT INTO '.Database::get_main_table(TABLE_MAIN_EVENT_EMAIL_TEMPLATE).'
$sql = 'INSERT INTO '.Database::get_main_table(TABLE_EVENT_EMAIL_TEMPLATE).'
(event_type_name, language_id, message, subject, activated)
VALUES("'.Database::escape_string($event_name).'", '.$lang_id[0]["id"].', "'.Database::escape_string($message).'",
"'.Database::escape_string($subject).'", '.$activated.')
@ -747,7 +747,7 @@ function save_event_type_message($event_name,$users,$message,$subject, $event_me
}
// set activated at every save
$sql = 'UPDATE '.Database::get_main_table(TABLE_MAIN_EVENT_EMAIL_TEMPLATE).'
$sql = 'UPDATE '.Database::get_main_table(TABLE_EVENT_EMAIL_TEMPLATE).'
SET activated = '.$activated.'
WHERE event_type_name = "'.Database::escape_string($event_name).'"
';
@ -757,14 +757,14 @@ function save_event_type_message($event_name,$users,$message,$subject, $event_me
function eventType_mod($etId,$users,$message,$subject) {
$etId = intval($etId);
$sql = 'DELETE FROM '.Database::get_main_table(TABLE_MAIN_EVENT_TYPE_REL_USER).'
$sql = 'DELETE FROM '.Database::get_main_table(TABLE_EVENT_TYPE_REL_USER).'
WHERE event_type_id = '.$etId.'
';
Database::query($sql);
foreach($users as $user) {
$sql = 'INSERT INTO '.Database::get_main_table(TABLE_MAIN_EVENT_TYPE_REL_USER).'
$sql = 'INSERT INTO '.Database::get_main_table(TABLE_EVENT_TYPE_REL_USER).'
(user_id,event_type_id)
VALUES('.intval($user).','.$etId.')
';

@ -113,9 +113,9 @@ class EventsMail
}
}
// Second, we send to people linked to the event ========================================================
// Second, we send to people linked to the event
// So, we get everyone
$sql = 'SELECT u.user_id, u.language, u.email, u.firstname, u.lastname FROM ' . Database::get_main_table(TABLE_MAIN_EVENT_TYPE_REL_USER) . ' ue
$sql = 'SELECT u.user_id, u.language, u.email, u.firstname, u.lastname FROM ' . Database::get_main_table(TABLE_EVENT_TYPE_REL_USER) . ' ue
INNER JOIN '.Database::get_main_table(TABLE_MAIN_USER).' u ON u.user_id = ue.user_id
WHERE event_type_name = "' . $event_name . '"';
$result = Database::store_result(Database::query($sql), 'ASSOC');
@ -177,7 +177,7 @@ class EventsMail
return false;
}
$sql = 'SELECT COUNT(*) as total FROM ' . Database::get_main_table(TABLE_MAIN_EVENT_EMAIL_TEMPLATE) . ' em
$sql = 'SELECT COUNT(*) as total FROM ' . Database::get_main_table(TABLE_EVENT_EMAIL_TEMPLATE) . ' em
INNER JOIN ' . Database::get_main_table(TABLE_MAIN_LANGUAGE) . ' l on em.language_id = l.id
WHERE em.event_type_name = "' . $event_name . '" and l.dokeos_folder = "english" and em.activated = 1
';
@ -203,7 +203,7 @@ class EventsMail
*/
private static function getMessage($event_name, $language)
{
$sql = 'SELECT message, subject, l.dokeos_folder FROM ' . Database::get_main_table(TABLE_MAIN_EVENT_EMAIL_TEMPLATE) . ' em
$sql = 'SELECT message, subject, l.dokeos_folder FROM ' . Database::get_main_table(TABLE_EVENT_EMAIL_TEMPLATE) . ' em
INNER JOIN ' . Database::get_main_table(TABLE_MAIN_LANGUAGE) . ' l on em.language_id = l.id
WHERE em.event_type_name = "' . $event_name . '" and (l.dokeos_folder = "' . $language . '" OR l.dokeos_folder = "english") and em.message <> ""
';
@ -252,7 +252,4 @@ class EventsMail
$subject = str_replace('((' . $key . '))', $event_data[$word], $subject);
}
}
}
?>
}
Loading…
Cancel
Save