Skip to content

Commit

Permalink
Dev Added new fields to database for admin notification email tempalt…
Browse files Browse the repository at this point in the history
…e and detailed admin notification email template

Dev Re-Design of the email template editor to use new tabs and tabs in tabs for each template
Dev To speed up loading the FCKEditors are loaded if a tab is shown for the first time (=if a user changes to a new tab)
Dev Saving and loading of the new fields works, however no default values exist yet nor are they used yet - work in progress - feedback welcome - btw: please re-install the DB

git-svn-id: file:///Users/Shitiz/Downloads/lssvn/source/limesurvey_dev@9408 b72ed6b6-b9f8-46b5-92b4-906544132732
  • Loading branch information
c-schmitz committed Nov 3, 2010
1 parent 1d35776 commit 8d8e7b9
Show file tree
Hide file tree
Showing 17 changed files with 439 additions and 300 deletions.
12 changes: 3 additions & 9 deletions admin/admin.php
Expand Up @@ -79,14 +79,7 @@
if(isset($_SESSION['loginID']))
{
//VARIOUS DATABASE OPTIONS/ACTIONS PERFORMED HERE
if (
preg_match
(
'/^(delsurvey|delgroup|delquestion|insertsurvey|updatesubquestions|copynewquestion|insertquestiongroup|insertCSV|insertquestion|updatesurveysettings|updatesurveysettingsandeditlocalesettings|updatesurveylocalesettings|updategroup|deactivate|savepersonalsettings|updatequestion|updateansweroptions|renumberquestions|updatedefaultvalues)$/',
$action
)

)
if (in_array($action, array('updateemailtemplates','delsurvey','delgroup','delquestion','insertsurvey','updatesubquestions','copynewquestion','insertquestiongroup','insertCSV','insertquestion','updatesurveysettings','updatesurveysettingsandeditlocalesettings','updatesurveylocalesettings','updategroup','deactivate','savepersonalsettings','updatequestion','updateansweroptions','renumberquestions','updatedefaultvalues')))
{
include('database.php');
}
Expand Down Expand Up @@ -542,7 +535,6 @@
$adminoutput.= showadminmenu();
}


if (isset($databaseoutput)) {$adminoutput.= $databaseoutput;}
if (isset($templatesoutput)) {$adminoutput.= $templatesoutput;}
if (isset($accesssummary )) {$adminoutput.= $accesssummary;}
Expand Down Expand Up @@ -578,6 +570,8 @@
if (isset($newanswer)) {$adminoutput.= $newanswer;}
if (isset($editanswer)) {$adminoutput.= $editanswer;}
if (isset($assessmentsoutput)) {$adminoutput.= $assessmentsoutput;}
if (isset($sHTMLOutput)) {$adminoutput.= $sHTMLOutput;}


if (isset($importsurvey)) {$adminoutput.= $importsurvey;}
if (isset($importsurveyresourcesoutput)) {$adminoutput.= $importsurveyresourcesoutput;}
Expand Down
30 changes: 30 additions & 0 deletions admin/database.php
Expand Up @@ -1132,6 +1132,8 @@ function get_max_question_order($gid)
." surveyls_email_remind_subj, surveyls_email_remind, "
." surveyls_email_confirm_subj, surveyls_email_confirm, "
." surveyls_email_register_subj, surveyls_email_register, "
." email_admin_confirmation_subj, email_admin_confirmation, "
." email_admin_responses_subj, email_admin_responses, "
." surveyls_dateformat) "
." VALUES ({$postsid}, '".$langname."', '',"
.db_quoteall($bplang->gT("Invitation to participate in survey",'unescaped')).","
Expand All @@ -1142,6 +1144,7 @@ function get_max_question_order($gid)
.db_quoteall(conditional2_nl2br($bplang->gT("Dear {FIRSTNAME},\n\nThis email is to confirm that you have completed the survey titled {SURVEYNAME} and your response has been saved. Thank you for participating.\n\nIf you have any further questions about this email, please contact {ADMINNAME} on {ADMINEMAIL}.\n\nSincerely,\n\n{ADMINNAME}",'unescaped'),$ishtml)).","
.db_quoteall($bplang->gT("Survey Registration Confirmation",'unescaped')).","
.db_quoteall(conditional2_nl2br($bplang->gT("Dear {FIRSTNAME},\n\nYou, or someone using your email address, have registered to participate in an online survey titled {SURVEYNAME}.\n\nTo complete this survey, click on the following URL:\n\n{SURVEYURL}\n\nIf you have any questions about this survey, or if you did not register to participate and believe this email is in error, please contact {ADMINNAME} at {ADMINEMAIL}.",'unescaped'),$ishtml)).","
."'','','','',"
.$languagedetails['dateformat'].")";
unset($bplang);
$usresult = $connect->Execute($usquery) or safe_die("Error deleting obsolete surveysettings<br />".$usquery."<br /><br />".$connect->ErrorMsg()); // Checked
Expand All @@ -1161,6 +1164,33 @@ function get_max_question_order($gid)
}
}

// Save the updated email settings
elseif ($action == "updateemailtemplates" && bHasSurveyPermission($surveyid, 'surveylocale','update'))
{
$_POST = array_map('db_quote', $_POST);
$languagelist = GetAdditionalLanguagesFromSurveyID($surveyid);
$languagelist[]=GetBaseLanguageFromSurveyID($surveyid);
foreach ($languagelist as $langname)
{
if ($langname)
{
$usquery = "UPDATE ".db_table_name('surveys_languagesettings')." \n"
. "SET surveyls_email_invite_subj='".$_POST['email_invite_subj_'.$langname]."', surveyls_email_invite='".$_POST['email_invite_'.$langname]."',"
. "surveyls_email_remind_subj='".$_POST['email_remind_subj_'.$langname]."', surveyls_email_remind='".$_POST['email_remind_'.$langname]."',"
. "surveyls_email_register_subj='".$_POST['email_register_subj_'.$langname]."', surveyls_email_register='".$_POST['email_register_'.$langname]."',"
. "surveyls_email_confirm_subj='".$_POST['email_confirm_subj_'.$langname]."', surveyls_email_confirm='".$_POST['email_confirm_'.$langname]."',"
. "email_admin_confirmation_subj='".$_POST['email_admin_confirmation_subj_'.$langname]."', email_admin_confirmation='".$_POST['email_admin_confirmation_'.$langname]."',"
. "email_admin_responses_subj='".$_POST['email_admin_responses_subj_'.$langname]."', email_admin_responses='".$_POST['email_admin_responses_'.$langname]."' "
. "WHERE surveyls_survey_id=".$surveyid." and surveyls_language='".$langname."'";
$usresult = $connect->Execute($usquery) or safe_die("Error updating<br />".$usquery."<br /><br />".$connect->ErrorMsg());
}
}
$databaseoutput .= "<div class='header'>".$clang->gT("Edit email templates")."</div>\n"
."<div class='messagebox'>"
."\t<div class='successheader'>".$clang->gT("Email templates have been saved.")."</div>\n"
."</div>";
}

elseif ($action == "delsurvey" && bHasSurveyPermission($surveyid,'survey','delete')) //can only happen if there are no groups, no questions, no answers etc.
{
$query = "DELETE FROM {$dbprefix}surveys WHERE sid=$surveyid";
Expand Down

0 comments on commit 8d8e7b9

Please sign in to comment.