本文整理汇总了PHP中autoUnescape函数的典型用法代码示例。如果您正苦于以下问题:PHP autoUnescape函数的具体用法?PHP autoUnescape怎么用?PHP autoUnescape使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了autoUnescape函数的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: templatereplace
//.........这里部分代码省略.........
if (isset($surveyid)) {
$restart_extra = "";
$restart_token = returnGlobal('token');
if (!empty($restart_token)) {
$restart_extra .= "/token/" . urlencode($restart_token);
} else {
$restart_extra = "/newtest/Y";
}
if (!empty($_GET['lang'])) {
$restart_extra .= "/lang/" . returnGlobal('lang');
}
$_restart = "<a href='" . Yii::app()->getController()->createUrl("survey/index/sid/{$surveyid}{$restart_extra}") . "'>" . $clang->gT("Restart this Survey") . "</a>";
} else {
$_restart = "";
}
}
if (isset($thissurvey['anonymized']) && $thissurvey['anonymized'] == 'Y') {
$_savealert = $clang->gT("To remain anonymous please use a pseudonym as your username, also an email address is not required.");
} else {
$_savealert = "";
}
if (isset($surveyid)) {
$_return_to_survey = "<a href=" . Yii::app()->getController()->createUrl("survey/index/sid/{$surveyid}");
if (returnGlobal('token')) {
$_return_to_survey .= "?amp;token=" . urlencode(trim(sanitize_xss_string(strip_tags(returnGlobal('token')))));
}
$_return_to_survey .= "'>" . $clang->gT("Return to survey") . "</a>";
} else {
$_return_to_survey = "";
}
// Save Form
$_saveform = "<table><tr><td align='right'>" . $clang->gT("Name") . ":</td><td><input type='text' name='savename' value='";
if (isset($_POST['savename'])) {
$_saveform .= HTMLEscape(autoUnescape($_POST['savename']));
}
$_saveform .= "' /></td></tr>\n" . "<tr><td align='right'>" . $clang->gT("Password") . ":</td><td><input type='password' name='savepass' value='";
if (isset($_POST['savepass'])) {
$_saveform .= HTMLEscape(autoUnescape($_POST['savepass']));
}
$_saveform .= "' /></td></tr>\n" . "<tr><td align='right'>" . $clang->gT("Repeat password") . ":</td><td><input type='password' name='savepass2' value='";
if (isset($_POST['savepass2'])) {
$_saveform .= HTMLEscape(autoUnescape($_POST['savepass2']));
}
$_saveform .= "' /></td></tr>\n" . "<tr><td align='right'>" . $clang->gT("Your email address") . ":</td><td><input type='text' name='saveemail' value='";
if (isset($_POST['saveemail'])) {
$_saveform .= HTMLEscape(autoUnescape($_POST['saveemail']));
}
$_saveform .= "' /></td></tr>\n";
if (isset($thissurvey['usecaptcha']) && function_exists("ImageCreate") && isCaptchaEnabled('saveandloadscreen', $thissurvey['usecaptcha'])) {
$_saveform .= "<tr><td align='right'>" . $clang->gT("Security question") . ":</td><td><table><tr><td valign='middle'><img src='" . Yii::app()->getController()->createUrl('/verification/image/sid/' . (isset($surveyid) ? $surveyid : '')) . "' alt6='' /></td><td valign='middle' style='text-align:left'><input type='text' size='5' maxlength='3' name='loadsecurity' value='' /></td></tr></table></td></tr>\n";
}
$_saveform .= "<tr><td align='right'></td><td></td></tr>\n" . "<tr><td></td><td><input type='submit' id='savebutton' name='savesubmit' value='" . $clang->gT("Save Now") . "' /></td></tr>\n" . "</table>";
// Load Form
$_loadform = "<table><tr><td align='right'>" . $clang->gT("Saved name") . ":</td><td><input type='text' name='loadname' value='";
if (isset($loadname)) {
$_loadform .= HTMLEscape(autoUnescape($loadname));
}
$_loadform .= "' /></td></tr>\n" . "<tr><td align='right'>" . $clang->gT("Password") . ":</td><td><input type='password' name='loadpass' value='";
if (isset($loadpass)) {
$_loadform .= HTMLEscape(autoUnescape($loadpass));
}
$_loadform .= "' /></td></tr>\n";
if (isset($thissurvey['usecaptcha']) && function_exists("ImageCreate") && isCaptchaEnabled('saveandloadscreen', $thissurvey['usecaptcha'])) {
$_loadform .= "<tr><td align='right'>" . $clang->gT("Security question") . ":</td><td><table><tr><td valign='middle'><img src='" . Yii::app()->getController()->createUrl('/verification/image/sid/' . $surveyid) . "' alt='' /></td><td valign='middle'><input type='text' size='5' maxlength='3' name='loadsecurity' value='' alt=''/></td></tr></table></td></tr>\n";
}
$_loadform .= "<tr><td align='right'></td><td></td></tr>\n" . "<tr><td></td><td><input type='submit' id='loadbutton' value='" . $clang->gT("Load now") . "' /></td></tr></table>\n";
示例2: templatereplace
//.........这里部分代码省略.........
if ($_token) {
$restartparam['token'] = sanitize_token($_token);
}
// urlencode with needed with sanitize_token
if (Yii::app()->request->getQuery('lang')) {
$restartparam['lang'] = sanitize_languagecode(Yii::app()->request->getQuery('lang'));
} elseif ($s_lang) {
$restartparam['lang'] = $s_lang;
}
$restartparam['newtest'] = "Y";
$restarturl = Yii::app()->getController()->createUrl("survey/index/sid/{$surveyid}", $restartparam);
$_restart = "<a href='{$restarturl}'>" . gT("Restart this Survey") . "</a>";
} else {
$_restart = "";
}
if (isset($thissurvey['anonymized']) && $thissurvey['anonymized'] == 'Y') {
$_savealert = gT("To remain anonymous please use a pseudonym as your username, also an email address is not required.");
} else {
$_savealert = "";
}
if (isset($surveyid)) {
if ($_token) {
$returnlink = Yii::app()->getController()->createUrl("survey/index/sid/{$surveyid}", array('token' => Token::sanitizeToken($_token)));
} else {
$returnlink = Yii::app()->getController()->createUrl("survey/index/sid/{$surveyid}");
}
$_return_to_survey = "<a href='{$returnlink}'>" . gT("Return to survey") . "</a>";
} else {
$_return_to_survey = "";
}
// Save Form
$_saveform = "<table class='save-survey-form'><tr class='save-survey-row save-survey-name'><td class='save-survey-label label-cell' align='right'><label for='savename'>" . gT("Name") . "</label>:</td><td class='save-survey-input input-cell'><input type='text' name='savename' id='savename' value='";
if (isset($_POST['savename'])) {
$_saveform .= HTMLEscape(autoUnescape($_POST['savename']));
}
$_saveform .= "' /></td></tr>\n" . "<tr class='save-survey-row save-survey-password-1'><td class='save-survey-label label-cell' align='right'><label for='savepass'>" . gT("Password") . "</label>:</td><td class='save-survey-input input-cell'><input type='password' id='savepass' name='savepass' value='";
if (isset($_POST['savepass'])) {
$_saveform .= HTMLEscape(autoUnescape($_POST['savepass']));
}
$_saveform .= "' /></td></tr>\n" . "<tr class='save-survey-row save-survey-password-2'><td class='save-survey-label label-cell' align='right'><label for='savepass2'>" . gT("Repeat password") . "</label>:</td><td class='save-survey-input input-cell'><input type='password' id='savepass2' name='savepass2' value='";
if (isset($_POST['savepass2'])) {
$_saveform .= HTMLEscape(autoUnescape($_POST['savepass2']));
}
$_saveform .= "' /></td></tr>\n" . "<tr class='save-survey-row save-survey-email'><td class='save-survey-label label-cell' align='right'><label for='saveemail'>" . gT("Your email address") . "</label>:</td><td class='save-survey-input input-cell'><input type='text' id='saveemail' name='saveemail' value='";
if (isset($_POST['saveemail'])) {
$_saveform .= HTMLEscape(autoUnescape($_POST['saveemail']));
}
$_saveform .= "' /></td></tr>\n";
if (isset($thissurvey['usecaptcha']) && function_exists("ImageCreate") && isCaptchaEnabled('saveandloadscreen', $thissurvey['usecaptcha'])) {
$_saveform .= "<tr class='save-survey-row save-survey-captcha'><td class='save-survey-label label-cell' align='right'><label for='loadsecurity'>" . gT("Security question") . "</label>:</td><td class='save-survey-input input-cell'><table class='captcha-table'><tr><td class='captcha-image' valign='middle'><img alt='' src='" . Yii::app()->getController()->createUrl('/verification/image/sid/' . (isset($surveyid) ? $surveyid : '')) . "' /></td><td class='captcha-input' valign='middle' style='text-align:left'><input type='text' size='5' maxlength='3' id='loadsecurity' name='loadsecurity' value='' /></td></tr></table></td></tr>\n";
}
$_saveform .= "<tr><td align='right'></td><td></td></tr>\n" . "<tr class='save-survey-row save-survey-submit'><td class='save-survey-label label-cell'><label class='hide jshide' for='savebutton'>" . gT("Save Now") . "</label></td><td class='save-survey-input input-cell'><input type='submit' id='savebutton' name='savesubmit' class='button' value='" . gT("Save Now") . "' /></td></tr>\n" . "</table>";
// Load Form
$_loadform = "<table class='load-survey-form'><tr class='load-survey-row load-survey-name'><td class='load-survey-label label-cell' align='right'><label for='loadname'>" . gT("Saved name") . "</label>:</td><td class='load-survey-input input-cell'><input type='text' id='loadname' name='loadname' value='";
if (isset($loadname)) {
$_loadform .= HTMLEscape(autoUnescape($loadname));
}
$_loadform .= "' /></td></tr>\n" . "<tr class='load-survey-row load-survey-password'><td class='load-survey-label label-cell' align='right'><label for='loadpass'>" . gT("Password") . "</label>:</td><td class='load-survey-input input-cell'><input type='password' id='loadpass' name='loadpass' value='";
if (isset($loadpass)) {
$_loadform .= HTMLEscape(autoUnescape($loadpass));
}
$_loadform .= "' /></td></tr>\n";
if (isset($thissurvey['usecaptcha']) && function_exists("ImageCreate") && isCaptchaEnabled('saveandloadscreen', $thissurvey['usecaptcha'])) {
$_loadform .= "<tr class='load-survey-row load-survey-captcha'><td class='load-survey-label label-cell' align='right'><label for='loadsecurity'>" . gT("Security question") . "</label>:</td><td class='load-survey-input input-cell'><table class='captcha-table'><tr><td class='captcha-image' valign='middle'><img src='" . Yii::app()->getController()->createUrl('/verification/image/sid/' . (isset($surveyid) ? $surveyid : '')) . "' alt='' /></td><td class='captcha-input' valign='middle'><input type='text' size='5' maxlength='3' id='loadsecurity' name='loadsecurity' value='' alt=''/></td></tr></table></td></tr>\n";
}
$_loadform .= "<tr class='load-survey-row load-survey-submit'><td class='load-survey-label label-cell'><label class='hide jshide' for='loadbutton'>" . gT("Load now") . "</label></td><td class='load-survey-input input-cell'><input type='submit' id='loadbutton' class='button' value='" . gT("Load now") . "' /></td></tr></table>\n";
示例3: _initialise
/**
* Function that initialises all data and call other functions to load default view.
*
* @access protected
* @param string $templatename
* @param string $screenname
* @param string $editfile
* @param bool $showsummary
* @return
*/
protected function _initialise($templatename, $screenname, $editfile, $showsummary = true)
{
App()->getClientScript()->reset();
$clang = $this->getController()->lang;
Yii::app()->loadHelper('surveytranslator');
Yii::app()->loadHelper('admin/template');
$files = $this->_initfiles($templatename);
$cssfiles = $this->_initcssfiles();
// Standard Support Files
// These files may be edited or saved
$supportfiles[] = array('name' => 'print_img_radio.png');
$supportfiles[] = array('name' => 'print_img_checkbox.png');
// Standard screens
// Only these may be viewed
$screens[] = array('name' => $clang->gT('Survey List Page'), 'id' => 'surveylist');
$screens[] = array('name' => $clang->gT('Welcome Page'), 'id' => 'welcome');
$screens[] = array('name' => $clang->gT('Question Page'), 'id' => 'question');
$screens[] = array('name' => $clang->gT('Completed Page'), 'id' => 'completed');
$screens[] = array('name' => $clang->gT('Clear All Page'), 'id' => 'clearall');
$screens[] = array('name' => $clang->gT('Register Page'), 'id' => 'register');
$screens[] = array('name' => $clang->gT('Load Page'), 'id' => 'load');
$screens[] = array('name' => $clang->gT('Save Page'), 'id' => 'save');
$screens[] = array('name' => $clang->gT('Print answers page'), 'id' => 'printanswers');
$screens[] = array('name' => $clang->gT('Printable survey page'), 'id' => 'printablesurvey');
// Page display blocks
$SurveyList = array('startpage.pstpl', 'surveylist.pstpl', 'endpage.pstpl');
$Welcome = array('startpage.pstpl', 'welcome.pstpl', 'privacy.pstpl', 'navigator.pstpl', 'endpage.pstpl');
$Question = array('startpage.pstpl', 'survey.pstpl', 'startgroup.pstpl', 'groupdescription.pstpl', 'question.pstpl', 'endgroup.pstpl', 'navigator.pstpl', 'endpage.pstpl');
$CompletedTemplate = array('startpage.pstpl', 'assessment.pstpl', 'completed.pstpl', 'endpage.pstpl');
$Clearall = array('startpage.pstpl', 'clearall.pstpl', 'endpage.pstpl');
$Register = array('startpage.pstpl', 'survey.pstpl', 'register.pstpl', 'endpage.pstpl');
$Save = array('startpage.pstpl', 'save.pstpl', 'endpage.pstpl');
$Load = array('startpage.pstpl', 'load.pstpl', 'endpage.pstpl');
$printtemplate = array('startpage.pstpl', 'printanswers.pstpl', 'endpage.pstpl');
$printablesurveytemplate = array('print_survey.pstpl', 'print_group.pstpl', 'print_question.pstpl');
$file_version = "LimeSurvey template editor " . Yii::app()->getConfig('versionnumber');
Yii::app()->session['s_lang'] = Yii::app()->session['adminlang'];
$templatename = sanitize_dirname($templatename);
$screenname = autoUnescape($screenname);
// Checks if screen name is in the list of allowed screen names
if (multiarray_search($screens, 'id', $screenname) === false) {
$this->getController()->error('Invalid screen name');
}
if (!isset($action)) {
$action = sanitize_paranoid_string(returnGlobal('action'));
}
if (!isset($subaction)) {
$subaction = sanitize_paranoid_string(returnGlobal('subaction'));
}
if (!isset($newname)) {
$newname = sanitize_dirname(returnGlobal('newname'));
}
if (!isset($copydir)) {
$copydir = sanitize_dirname(returnGlobal('copydir'));
}
if (is_file(Yii::app()->getConfig('usertemplaterootdir') . '/' . $templatename . '/question_start.pstpl')) {
$files[] = array('name' => 'question_start.pstpl');
$Question[] = 'question_start.pstpl';
}
$availableeditorlanguages = array('bg', 'cs', 'de', 'dk', 'en', 'eo', 'es', 'fi', 'fr', 'hr', 'it', 'ja', 'mk', 'nl', 'pl', 'pt', 'ru', 'sk', 'zh');
$extension = substr(strrchr($editfile, "."), 1);
if ($extension == 'css' || $extension == 'js') {
$highlighter = $extension;
} else {
$highlighter = 'html';
}
if (in_array(Yii::app()->session['adminlang'], $availableeditorlanguages)) {
$codelanguage = Yii::app()->session['adminlang'];
} else {
$codelanguage = 'en';
}
$templates = getTemplateList();
if (!isset($templates[$templatename])) {
$templatename = Yii::app()->getConfig('defaulttemplate');
}
$normalfiles = array("DUMMYENTRY", ".", "..", "preview.png");
foreach ($files as $fl) {
$normalfiles[] = $fl["name"];
}
foreach ($cssfiles as $fl) {
$normalfiles[] = $fl["name"];
}
// Some global data
$aData['sitename'] = Yii::app()->getConfig('sitename');
$siteadminname = Yii::app()->getConfig('siteadminname');
$siteadminemail = Yii::app()->getConfig('siteadminemail');
// Set this so common.php doesn't throw notices about undefined variables
$thissurvey['active'] = 'N';
// FAKE DATA FOR TEMPLATES
$thissurvey['name'] = $clang->gT("Template Sample");
//.........这里部分代码省略.........
示例4: loadanswers
function loadanswers()
{
global $surveyid;
global $thissurvey, $thisstep;
global $clienttoken;
$clang = Yii::app()->lang;
$scid = returnGlobal('scid');
if (isset($_POST['loadall']) && $_POST['loadall'] == "reload") {
$query = "SELECT * FROM {{saved_control}} INNER JOIN {$thissurvey['tablename']}\n ON {{saved_control}}.srid = {$thissurvey['tablename']}.id\n WHERE {{saved_control}}.sid={$surveyid}\n";
if (isset($scid)) {
$query .= "AND {{saved_control}}.scid={$scid}\n";
}
$query .= "AND {{saved_control}}.identifier = '" . autoEscape($_SESSION['survey_' . $surveyid]['holdname']) . "' ";
if (in_array(Yii::app()->db->getDriverName(), array('mssql', 'sqlsrv'))) {
$query .= "AND CAST({{saved_control}}.access_code as varchar(32))= '" . md5(autoUnescape($_SESSION['survey_' . $surveyid]['holdpass'])) . "'\n";
} else {
$query .= "AND {{saved_control}}.access_code = '" . md5(autoUnescape($_SESSION['survey_' . $surveyid]['holdpass'])) . "'\n";
}
} elseif (isset($_SESSION['survey_' . $surveyid]['srid'])) {
$query = "SELECT * FROM {$thissurvey['tablename']}\n WHERE {$thissurvey['tablename']}.id=" . $_SESSION['survey_' . $surveyid]['srid'] . "\n";
} else {
return;
}
$aRow = Yii::app()->db->createCommand($query)->queryRow();
if (!$aRow) {
safeDie($clang->gT("There is no matching saved survey") . "<br />\n");
return false;
} else {
//A match has been found. Let's load the values!
//If this is from an email, build surveysession first
$_SESSION['survey_' . $surveyid]['LEMtokenResume'] = true;
// Get if survey is been answered
$submitdate = $aRow['submitdate'];
foreach ($aRow as $column => $value) {
if ($column == "token") {
$clienttoken = $value;
$token = $value;
} elseif ($column == "saved_thisstep" && $thissurvey['alloweditaftercompletion'] != 'Y') {
$_SESSION['survey_' . $surveyid]['step'] = $value;
$thisstep = $value - 1;
} elseif ($column == 'lastpage' && isset($_GET['token'])) {
if (is_null($submitdate) || $submitdate == "N") {
if ($value < 1) {
$value = 1;
}
$_SESSION['survey_' . $surveyid]['step'] = $value;
$thisstep = $value - 1;
} else {
$_SESSION['survey_' . $surveyid]['maxstep'] = $value;
}
} elseif ($column == "scid") {
$_SESSION['survey_' . $surveyid]['scid'] = $value;
} elseif ($column == "srid") {
$_SESSION['survey_' . $surveyid]['srid'] = $value;
} elseif ($column == "datestamp") {
$_SESSION['survey_' . $surveyid]['datestamp'] = $value;
}
if ($column == "startdate") {
$_SESSION['survey_' . $surveyid]['startdate'] = $value;
} else {
//Only make session variables for those in insertarray[]
if (in_array($column, $_SESSION['survey_' . $surveyid]['insertarray']) && isset($_SESSION['survey_' . $surveyid]['fieldmap'][$column])) {
if (($_SESSION['survey_' . $surveyid]['fieldmap'][$column]['type'] == 'N' || $_SESSION['survey_' . $surveyid]['fieldmap'][$column]['type'] == 'K' || $_SESSION['survey_' . $surveyid]['fieldmap'][$column]['type'] == 'D') && $value == null) {
// For type N,K,D NULL in DB is to be considered as NoAnswer in any case.
// We need to set the _SESSION[field] value to '' in order to evaluate conditions.
// This is especially important for the deletenonvalue feature,
// otherwise we would erase any answer with condition such as EQUALS-NO-ANSWER on such
// question types (NKD)
$_SESSION['survey_' . $surveyid][$column] = '';
} else {
$_SESSION['survey_' . $surveyid][$column] = $value;
}
}
// if (in_array(
}
// else
}
// foreach
}
return true;
}
示例5: _initialise
/**
* Function that initialises all data and call other functions to load default view.
*
* @access protected
* @param string $templatename
* @param string $screenname
* @param string $editfile
* @param bool $showsummary
* @return
*/
protected function _initialise($templatename, $screenname, $editfile, $showsummary = true, $useindex = false)
{
// LimeSurvey style
global $oEditedTemplate;
$oEditedTemplate = Template::model()->getTemplateConfiguration($templatename);
// In survey mode, bootstrap is loaded via the app init.
// From template editor, we just add the bootstrap files to the js/css to load for template_helper::templatereplace()
if ($oEditedTemplate->cssFramework == 'bootstrap') {
// Core templates (are published only if exists)
$oEditedTemplate->config->files->css->filename[] = "../../styles-public/bootstrap-for-template-editor.css";
$oEditedTemplate->config->files->js->filename[] = "../../scripts/bootstrap-for-template-editor.js";
// User templates (are published only if exists)
$oEditedTemplate->config->files->css->filename[] = "../../../styles-public/bootstrap-for-template-editor.css";
$oEditedTemplate->config->files->js->filename[] = "../../../scripts/bootstrap-for-template-editor.js";
}
//App()->getClientScript()->reset();
Yii::app()->loadHelper('surveytranslator');
Yii::app()->loadHelper('admin/template');
$files = $this->_initfiles($templatename);
$cssfiles = $this->_initcssfiles($oEditedTemplate);
// Standard Support Files
// These files may be edited or saved
$supportfiles[] = array('name' => 'print_img_radio.png');
$supportfiles[] = array('name' => 'print_img_checkbox.png');
// Standard screens
// Only these may be viewed
$screens[] = array('name' => gT('Survey List Page'), 'id' => 'surveylist');
$screens[] = array('name' => gT('Welcome Page'), 'id' => 'welcome');
$screens[] = array('name' => gT('Question Page'), 'id' => 'question');
$screens[] = array('name' => gT('Completed Page'), 'id' => 'completed');
$screens[] = array('name' => gT('Clear All Page'), 'id' => 'clearall');
$screens[] = array('name' => gT('Register Page'), 'id' => 'register');
$screens[] = array('name' => gT('Load Page'), 'id' => 'load');
$screens[] = array('name' => gT('Save Page'), 'id' => 'save');
$screens[] = array('name' => gT('Print answers page'), 'id' => 'printanswers');
$screens[] = array('name' => gT('Printable survey page'), 'id' => 'printablesurvey');
// Page display blocks
$SurveyList = array('startpage.pstpl', 'surveylist.pstpl', 'endpage.pstpl');
$Welcome = array('startpage.pstpl', 'welcome.pstpl', 'privacy.pstpl', 'navigator.pstpl', 'endpage.pstpl');
$Question = array('startpage.pstpl', 'survey.pstpl', 'startgroup.pstpl', 'groupdescription.pstpl', 'question.pstpl', 'endgroup.pstpl', 'navigator.pstpl', 'endpage.pstpl');
$CompletedTemplate = array('startpage.pstpl', 'assessment.pstpl', 'completed.pstpl', 'endpage.pstpl');
$Clearall = array('startpage.pstpl', 'clearall.pstpl', 'endpage.pstpl');
$Register = array('startpage.pstpl', 'survey.pstpl', 'register.pstpl', 'endpage.pstpl');
$Save = array('startpage.pstpl', 'save.pstpl', 'endpage.pstpl');
$Load = array('startpage.pstpl', 'load.pstpl', 'endpage.pstpl');
$printtemplate = array('startpage.pstpl', 'printanswers.pstpl', 'endpage.pstpl');
$printablesurveytemplate = array('print_survey.pstpl', 'print_group.pstpl', 'print_question.pstpl');
$file_version = "LimeSurvey template editor " . Yii::app()->getConfig('versionnumber');
Yii::app()->session['s_lang'] = Yii::app()->session['adminlang'];
$templatename = sanitize_dirname($templatename);
$screenname = autoUnescape($screenname);
// Checks if screen name is in the list of allowed screen names
if (multiarray_search($screens, 'id', $screenname) === false) {
Yii::app()->user->setFlash('error', gT('Invalid screen name'));
$this->getController()->redirect(array("admin/templates/sa/upload"));
}
if (!isset($action)) {
$action = sanitize_paranoid_string(returnGlobal('action'));
}
if (!isset($subaction)) {
$subaction = sanitize_paranoid_string(returnGlobal('subaction'));
}
if (!isset($newname)) {
$newname = sanitize_dirname(returnGlobal('newname'));
}
if (!isset($copydir)) {
$copydir = sanitize_dirname(returnGlobal('copydir'));
}
if (is_file(Yii::app()->getConfig('usertemplaterootdir') . '/' . $templatename . '/question_start.pstpl')) {
$files[] = array('name' => 'question_start.pstpl');
$Question[] = 'question_start.pstpl';
}
$editfile = sanitize_filename($editfile);
// Fixed with editable file after, but put in aData before fix
$availableeditorlanguages = array('bg', 'cs', 'de', 'dk', 'en', 'eo', 'es', 'fi', 'fr', 'hr', 'it', 'ja', 'mk', 'nl', 'pl', 'pt', 'ru', 'sk', 'zh');
// 2.06 way of doing.
if (!$useindex) {
$extension = substr(strrchr($editfile, "."), 1);
} else {
// The extension is now set as a prefix separated by a _
$file_datas = explode("_", $editfile);
$extension = $file_datas[0];
// The file name is now based on the index of the oTemplate files
$file_index = $file_datas[1];
switch ($extension) {
case 'css':
$aTemplateFiles = (array) $oEditedTemplate->config->files_editable->css->filename;
break;
case 'js':
$aTemplateFiles = (array) $oEditedTemplate->config->files_editable->js->filename;
//.........这里部分代码省略.........
示例6: email
/**
* Handle email action
*/
function email($iSurveyId, $tokenids = null)
{
/* Check permissions */
if (!hasSurveyPermission($iSurveyId, 'tokens', 'read')) {
die("You do not have permission to view this page");
// TODO Replace
}
$aTokenIds = $tokenids;
if (empty($tokenids)) {
$aTokenIds = Yii::app()->request->getPost('tokenids', false);
}
if (!empty($aTokenIds)) {
$aTokenIds = explode('|', $aTokenIds);
$aTokenIds = array_filter($aTokenIds);
$aTokenIds = array_map('sanitize_int', $aTokenIds);
}
$aTokenIds = array_unique(array_filter((array) $aTokenIds));
// CHECK TO SEE IF A TOKEN TABLE EXISTS FOR THIS SURVEY
$bTokenExists = tableExists('{{tokens_' . $iSurveyId . '}}');
if (!$bTokenExists) {
self::_newtokentable($iSurveyId);
}
$clang = $this->getController()->lang;
$iSurveyId = sanitize_int($iSurveyId);
if (!hasSurveyPermission($iSurveyId, 'tokens', 'update')) {
die("no permissions");
// TODO Replace
}
$sSubAction = Yii::app()->request->getParam('action');
$sSubAction = !in_array($sSubAction, array('email', 'remind')) ? 'email' : $sSubAction;
$bEmail = $sSubAction == 'email';
Yii::app()->loadHelper('surveytranslator');
Yii::app()->loadHelper('/admin/htmleditor');
Yii::app()->loadHelper('replacements');
$query = Tokens_dynamic::model($iSurveyId)->find();
$aExampleRow = empty($query) ? array() : $query->attributes;
$aSurveyLangs = Survey::model()->findByPk($iSurveyId)->additionalLanguages;
$sBaseLanguage = Survey::model()->findByPk($iSurveyId)->language;
array_unshift($aSurveyLangs, $sBaseLanguage);
$aTokenFields = getTokenFieldsAndNames($iSurveyId, true);
$iAttributes = 0;
$bHtml = getEmailFormat($iSurveyId) == 'html';
$timeadjust = Yii::app()->getConfig("timeadjust");
$aData['thissurvey'] = getSurveyInfo($iSurveyId);
$aData['surveyid'] = $iSurveyId;
$aData['sSubAction'] = $sSubAction;
$aData['bEmail'] = $bEmail;
$aData['aSurveyLangs'] = $aData['surveylangs'] = $aSurveyLangs;
$aData['baselang'] = $sBaseLanguage;
$aData['tokenfields'] = $aTokenFields;
$aData['nrofattributes'] = $iAttributes;
$aData['examplerow'] = $aExampleRow;
$aData['tokenids'] = $aTokenIds;
$aData['ishtml'] = $bHtml;
$iMaxEmails = Yii::app()->getConfig('maxemails');
if (Yii::app()->request->getPost('bypassbademails') == 'Y') {
$SQLemailstatuscondition = "emailstatus = 'OK'";
} else {
$SQLemailstatuscondition = "emailstatus <> 'OptOut'";
}
if (!Yii::app()->request->getPost('ok')) {
if (empty($aData['tokenids'])) {
$aTokens = Tokens_dynamic::model($iSurveyId)->findUninvited($aTokenIds, 0, $bEmail, $SQLemailstatuscondition);
foreach ($aTokens as $aToken) {
$aData['tokenids'][] = $aToken['tid'];
}
}
$this->_renderWrappedTemplate('token', array('tokenbar', $sSubAction), $aData);
} else {
$SQLremindercountcondition = "";
$SQLreminderdelaycondition = "";
if (!$bEmail) {
if (Yii::app()->request->getPost('maxremindercount') && Yii::app()->request->getPost('maxremindercount') != '' && intval(Yii::app()->request->getPost('maxremindercount')) != 0) {
$SQLremindercountcondition = "remindercount < " . intval(Yii::app()->request->getPost('maxremindercount'));
}
if (Yii::app()->request->getPost('minreminderdelay') && Yii::app()->request->getPost('minreminderdelay') != '' && intval(Yii::app()->request->getPost('minreminderdelay')) != 0) {
// Yii::app()->request->getPost('minreminderdelay') in days (86400 seconds per day)
$compareddate = dateShift(date("Y-m-d H:i:s", time() - 86400 * intval(Yii::app()->request->getPost('minreminderdelay'))), "Y-m-d H:i", $timeadjust);
$SQLreminderdelaycondition = " ( " . " (remindersent = 'N' AND sent < '" . $compareddate . "') " . " OR " . " (remindersent < '" . $compareddate . "'))";
}
}
$ctresult = Tokens_dynamic::model($iSurveyId)->findUninvited($aTokenIds, 0, $bEmail, $SQLemailstatuscondition, $SQLremindercountcondition, $SQLreminderdelaycondition);
$ctcount = count($ctresult);
$emresult = Tokens_dynamic::model($iSurveyId)->findUninvited($aTokenIds, $iMaxEmails, $bEmail, $SQLemailstatuscondition, $SQLremindercountcondition, $SQLreminderdelaycondition);
$emcount = count($emresult);
foreach ($aSurveyLangs as $language) {
$_POST['message_' . $language] = autoUnescape(Yii::app()->request->getPost('message_' . $language));
$_POST['subject_' . $language] = autoUnescape(Yii::app()->request->getPost('subject_' . $language));
if ($bHtml) {
$_POST['message_' . $language] = html_entity_decode(Yii::app()->request->getPost('message_' . $language), ENT_QUOTES, Yii::app()->getConfig("emailcharset"));
}
}
$attributes = getTokenFieldsAndNames($iSurveyId);
$tokenoutput = "";
if ($emcount > 0) {
foreach ($emresult as $emrow) {
$to = array();
//.........这里部分代码省略.........