本文整理汇总了PHP中CForm::Set方法的典型用法代码示例。如果您正苦于以下问题:PHP CForm::Set方法的具体用法?PHP CForm::Set怎么用?PHP CForm::Set使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CForm
的用法示例。
在下文中一共展示了CForm::Set方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: __form_CreateForm
function __form_CreateForm($SID, $__current_dir)
{
// check collisions
$dbTmpForm = CForm::GetBySID($SID);
if ($arTmpForm = $dbTmpForm->Fetch()) {
return false;
}
//$dirName = ToLower($SID);
$formConfigFile = $__current_dir . '/form.php';
$fieldsConfigFile = $__current_dir . '/fields.php';
// check config existence
if (!file_exists($formConfigFile) || !file_exists($fieldsConfigFile)) {
return false;
}
// load form config
$arForm = array();
require $formConfigFile;
// setup form
if ($FORM_ID = CForm::Set($arForm, false, 'N')) {
// load fields config
$arFormFields = array();
require $fieldsConfigFile;
// setup form fields
foreach ($arFormFields as $key => $arField) {
CFormField::Set($arField, false, 'N');
}
$arStatus = array('FORM_ID' => $FORM_ID, 'TITLE' => 'DEFAULT', 'CSORT' => 100, 'ACTIVE' => 'Y', 'DEFAULT_VALUE' => 'Y', 'arPERMISSION_MOVE' => array(0));
CFormStatus::Set($arStatus, false, 'N');
}
return $FORM_ID;
}
示例2: CreateForm
function CreateForm($arForm, $arFormFields, $langFile)
{
if (!CModule::IncludeModule("form")) {
return false;
}
// set defaults
$arFieldDefaults = array("ACTIVE" => "Y", "C_SORT" => 0, "ADDITIONAL" => "N", "TITLE_TYPE" => "text", "IN_RESULTS_TABLE" => "Y", "IN_EXCEL_TABLE" => "Y");
foreach ($arFormFields as $key => $arField) {
if ($arFormFields['ADDITIONAL'] == 'Y' && !is_set($arFormFields['C_SORT'])) {
$arFormFields['C_SORT'] = 5000;
}
$arFieldDefaults["C_SORT"] += 100;
$arFormFields[$key] = array_merge($arFieldDefaults, $arField);
$arFormFields[$key]["TITLE"] = GetMessage($arField["SID"] . "_QUESTION");
}
$rsLanguage = CLanguage::GetList($by, $order, array());
while ($arLanguage = $rsLanguage->Fetch()) {
WizardServices::IncludeServiceLang($langFile, $arLanguage["LID"]);
$arForm["arMENU"][$arLanguage["LID"]] = GetMessage(substr($arForm["SID"], 0, -3) . "_MENU_NAME");
}
$dbForm = CForm::GetBySID($arForm["SID"]);
if ($dbForm->Fetch()) {
return;
}
WizardServices::IncludeServiceLang("status.php");
if ($formID = CForm::Set($arForm, false, "N")) {
// setup form fields
foreach ($arFormFields as $key => $arField) {
$arField["FORM_ID"] = $formID;
$fieldID = CFormField::Set($arField, false, "N");
}
if ($arTemplates = CForm::SetMailTemplate($formID)) {
CForm::Set(array('SID' => $arForm['SID'], 'arMAIL_TEMPLATE' => $arTemplates), $formID, 'N');
}
$arStatuses = array(array("FORM_ID" => $formID, "TITLE" => GetMessage("STATUS_NEW"), "C_SORT" => 100, "ACTIVE" => "Y", "DEFAULT_VALUE" => "Y", "CSS" => "statusgray", "arPERMISSION_VIEW" => array(0), "arPERMISSION_MOVE" => array(0), "arPERMISSION_EDIT" => array(0), "arPERMISSION_DELETE" => array(0)), array("FORM_ID" => $formID, "TITLE" => GetMessage("STATUS_RECEIVED"), "C_SORT" => 200, "ACTIVE" => "Y", "DEFAULT_VALUE" => "N", "CSS" => "statusblue", "arPERMISSION_VIEW" => array(0)), array("FORM_ID" => $formID, "TITLE" => GetMessage("STATUS_DONE"), "C_SORT" => 300, "ACTIVE" => "Y", "DEFAULT_VALUE" => "N", "CSS" => "statusgreen", "arPERMISSION_VIEW" => array(0)), array("FORM_ID" => $formID, "TITLE" => GetMessage("STATUS_REFUSE"), "C_SORT" => 400, "ACTIVE" => "Y", "DEFAULT_VALUE" => "N", "CSS" => "statusred", "arPERMISSION_VIEW" => array(0)));
foreach ($arStatuses as $key => $arStatus) {
if ($STATUS_ID = CFormStatus::Set($arStatus, false, "N")) {
if ($arStatus['DEFAULT_VALUE'] == 'N' && ($arTemplates = CFormStatus::SetMailTemplate($formID, $STATUS_ID))) {
foreach ($arTemplates as $TEMPLATE_ID) {
if (null == $em) {
$em = new CEventMessage();
}
$em->Update($TEMPLATE_ID, array('MESSAGE' => GetMessage('STATUS_MESSAGE')));
}
CFormStatus::Set(array('FORM_ID' => $formID, 'arMAIL_TEMPLATE' => $arTemplates), $STATUS_ID, 'N');
}
}
}
}
return $formID;
}
示例3: Copy
function Copy($ID, $CHECK_RIGHTS = "Y")
{
global $DB, $APPLICATION, $strError;
$err_mess = CAllForm::err_mess() . "<br>Function: Copy<br>Line: ";
$ID = intval($ID);
if ($CHECK_RIGHTS != "Y" || CForm::IsAdmin()) {
$rsForm = CForm::GetByID($ID);
$arForm = $rsForm->Fetch();
if (!is_set($arForm, "FORM_TEMPLATE")) {
$arForm["FORM_TEMPLATE"] = CForm::GetFormTemplateByID($ID);
}
// символьный код формы
while (true) {
$SID = $arForm["SID"];
if (strlen($SID) > 25) {
$SID = substr($SID, 0, 25);
}
$SID .= "_" . RandString(5);
$strSql = "SELECT 'x' FROM b_form WHERE SID='" . $DB->ForSql($SID, 50) . "'";
$z = $DB->Query($strSql, false, $err_mess . __LINE__);
if (!($zr = $z->Fetch())) {
break;
}
}
$arFields = array("NAME" => $arForm["NAME"], "SID" => $SID, "C_SORT" => $arForm["C_SORT"], "FIRST_SITE_ID" => $arForm["FIRST_SITE_ID"], "BUTTON" => $arForm["BUTTON"], "USE_CAPTCHA" => $arForm["USE_CAPTCHA"], "DESCRIPTION" => $arForm["DESCRIPTION"], "DESCRIPTION_TYPE" => $arForm["DESCRIPTION_TYPE"], "SHOW_TEMPLATE" => $arForm["SHOW_TEMPLATE"], "FORM_TEMPLATE" => $arForm["FORM_TEMPLATE"], "USE_DEFAULT_TEMPLATE" => $arForm["USE_DEFAULT_TEMPLATE"], "SHOW_RESULT_TEMPLATE" => $arForm["SHOW_RESULT_TEMPLATE"], "PRINT_RESULT_TEMPLATE" => $arForm["PRINT_RESULT_TEMPLATE"], "EDIT_RESULT_TEMPLATE" => $arForm["EDIT_RESULT_TEMPLATE"], "FILTER_RESULT_TEMPLATE" => $arForm["FILTER_RESULT_TEMPLATE"], "TABLE_RESULT_TEMPLATE" => $arForm["TABLE_RESULT_TEMPLATE"], "STAT_EVENT1" => $arForm["STAT_EVENT1"], "STAT_EVENT2" => $SID, "STAT_EVENT3" => $arForm["STAT_EVENT3"], "arSITE" => CForm::GetSiteArray($ID));
// пункты меню
$z = CForm::GetMenuList(array("FORM_ID" => $ID), "N");
while ($zr = $z->Fetch()) {
$arFields["arMENU"][$zr["LID"]] = $zr["MENU"];
}
// права групп
$w = CGroup::GetList($v1 = "dropdown", $v2 = "asc", array("ADMIN" => "N"), $v3);
$arGroups = array();
while ($wr = $w->Fetch()) {
$arGroups[] = $wr["ID"];
}
if (is_array($arGroups)) {
foreach ($arGroups as $gid) {
$arFields["arGROUP"][$gid] = CForm::GetPermission($ID, array($gid), "Y");
}
}
// картинка
if (intval($arForm["IMAGE_ID"]) > 0) {
$arIMAGE = CFile::MakeFileArray(CFile::CopyFile($arForm["IMAGE_ID"]));
$arIMAGE["MODULE_ID"] = "form";
$arFields["arIMAGE"] = $arIMAGE;
}
$NEW_ID = CForm::Set($arFields, 0);
if (intval($NEW_ID) > 0) {
// статусы
$rsStatus = CFormStatus::GetList($ID, $by, $order, array(), $is_filtered);
while ($arStatus = $rsStatus->Fetch()) {
CFormStatus::Copy($arStatus["ID"], "N", $NEW_ID);
}
// вопросы/пол¤
$rsField = CFormField::GetList($ID, "ALL", $by, $order, array(), $is_filtered);
while ($arField = $rsField->Fetch()) {
CFormField::Copy($arField["ID"], "N", $NEW_ID);
}
}
return $NEW_ID;
} else {
$strError .= GetMessage("FORM_ERROR_ACCESS_DENIED") . "<br>";
}
return false;
}
示例4: elseif
}
if ($bSimple) {
// mail template
$arr = CForm::GetTemplateList("MAIL", "xxx", $res);
if ($_REQUEST['USE_MAIL_TEMPLATE'] && count($arr['reference_id']) == 0) {
CForm::SetMailTemplate($res, "Y");
} elseif (!$_REQUEST['USE_MAIL_TEMPLATE'] && count($arr['reference_id']) > 0) {
reset($arr['reference_id']);
while (list($num, $tmp_id) = each($arr['reference_id'])) {
CEventMessage::Delete($tmp_id);
}
}
$arr = CForm::GetTemplateList("MAIL", "xxx", $res);
$arFields['SID'] = "SIMPLE_FORM_{$res}";
$arFields['arMAIL_TEMPLATE'] = $arr['reference_id'];
CForm::Set($arFields, $res);
// create default status
if ($ID == 0) {
$arFields_status = array("FORM_ID" => $res, "C_SORT" => 100, "ACTIVE" => "Y", "TITLE" => "DEFAULT", "DESCRIPTION" => "DEFAULT", "CSS" => "statusgreen", "DEFAULT_VALUE" => "Y", "arPERMISSION_VIEW" => array(0), "arPERMISSION_MOVE" => array(0), "arPERMISSION_EDIT" => array(0), "arPERMISSION_DELETE" => array(0));
CFormStatus::Set($arFields_status, 0);
}
}
if (strlen($strError) <= 0 && $ID > 0) {
$arCrmParams = array('CRM_ID' => $_REQUEST['CRM_ID'], 'LINK_TYPE' => $_REQUEST['CRM_LINK_TYPE'], 'CRM_FIELDS' => $_REQUEST['CRM_FIELD'], 'FORM_FIELDS' => $_REQUEST['CRM_FORM_FIELD']);
CFormCrm::SetForm($ID, $arCrmParams);
}
$ID = $res;
if (strlen($strError) <= 0) {
if (strlen($_REQUEST['save']) > 0) {
if (!empty($_REQUEST["back_url"])) {
LocalRedirect("/" . ltrim($_REQUEST["back_url"], "/"));