function createElements() { global $xoopsDB, $xoopsUser; // NAME $name_text = new XoopsFormText(_CO_PUBLISHER_FILENAME, 'name', 50, 255, $this->targetObject->name()); $name_text->setDescription(_CO_PUBLISHER_FILE_NAME_DSC); $this->addElement($name_text, true); // DESCRIPTION $description_text = new XoopsFormTextArea(_CO_PUBLISHER_FILE_DESCRIPTION, 'description', $this->targetObject->description()); $description_text->setDescription(_CO_PUBLISHER_FILE_DESCRIPTION_DSC); $this->addElement($description_text); // FILE TO UPLOAD //if (!$this->targetObject->fileid()) { $file_box = new XoopsFormFile(_CO_PUBLISHER_FILE_TO_UPLOAD, "item_upload_file", 0); $file_box->setExtra("size ='50'"); $this->addElement($file_box); //} $status_select = new XoopsFormRadioYN(_CO_PUBLISHER_FILE_STATUS, 'file_status', _PUBLISHER_STATUS_FILE_ACTIVE); $status_select->setDescription(_CO_PUBLISHER_FILE_STATUS_DSC); $this->addElement($status_select); // fileid $this->addElement(new XoopsFormHidden('fileid', $this->targetObject->fileid())); // itemid $this->addElement(new XoopsFormHidden('itemid', $this->targetObject->itemid())); }
function editpartner($showmenu = false, $id = 0) { global $xoopsDB, $smartpartner_partner_handler, $xoopsUser, $xoopsConfig, $xoopsModuleConfig, $xoopsModule; if (!isset($smartpartner_partner_handler)) { $smartpartner_partner_handler =& smartpartner_gethandler('partner'); } include_once XOOPS_ROOT_PATH . '/class/xoopsformloader.php'; // If there is a parameter, and the id exists, retrieve data: we're editing a partner if ($id != 0) { // Creating the partner object $partnerObj = new SmartpartnerPartner($id); if ($partnerObj->notLoaded()) { redirect_header("partner.php", 1, _AM_SPARTNER_NOPARTNERSELECTED); exit; } switch ($partnerObj->status()) { case _SPARTNER_STATUS_SUBMITTED: $breadcrumb_action1 = _AM_SPARTNER_SUBMITTED_PARTNERS; $breadcrumb_action2 = _AM_SPARTNER_APPROVING; $page_title = _AM_SPARTNER_SUBMITTED_TITLE; $page_info = _AM_SPARTNER_SUBMITTED_INFO; $button_caption = _AM_SPARTNER_APPROVE; $new_status = _SPARTNER_STATUS_ACTIVE; break; case _SPARTNER_STATUS_ACTIVE: $breadcrumb_action1 = _AM_SPARTNER_ACTIVE_PARTNERS; $breadcrumb_action2 = _AM_SPARTNER_EDITING; $page_title = _AM_SPARTNER_ACTIVE_EDITING; $page_info = _AM_SPARTNER_ACTIVE_EDITING_INFO; $button_caption = _AM_SPARTNER_MODIFY; $new_status = _SPARTNER_STATUS_ACTIVE; break; case _SPARTNER_STATUS_INACTIVE: $breadcrumb_action1 = _AM_SPARTNER_INACTIVE_PARTNERS; $breadcrumb_action2 = _AM_SPARTNER_EDITING; $page_title = _AM_SPARTNER_INACTIVE_EDITING; $page_info = _AM_SPARTNER_INACTIVE_EDITING_INFO; $button_caption = _AM_SPARTNER_MODIFY; $new_status = _SPARTNER_STATUS_INACTIVE; break; case _SPARTNER_STATUS_REJECTED: $breadcrumb_action1 = _AM_SPARTNER_REJECTED_PARTNERS; $breadcrumb_action2 = _AM_SPARTNER_EDITING; $page_title = _AM_SPARTNER_REJECTED_EDITING; $page_info = _AM_SPARTNER_REJECTED_EDITING_INFO; $button_caption = _AM_SPARTNER_MODIFY; $new_status = _SPARTNER_STATUS_REJECTED; break; case "default": default: break; } if ($showmenu) { smartpartner_adminMenu(2, $breadcrumb_action1 . " > " . $breadcrumb_action2); } echo "<br />\n"; smartpartner_collapsableBar('editpartner', 'editpartmericon', $page_title, $page_info); } else { // there's no parameter, so we're adding a partner $partnerObj =& $smartpartner_partner_handler->create(); $breadcrumb_action1 = _AM_SPARTNER_PARTNERS; $breadcrumb_action2 = _AM_SPARTNER_CREATE; $button_caption = _AM_SPARTNER_CREATE; $new_status = _SPARTNER_STATUS_ACTIVE; if ($showmenu) { smartpartner_adminMenu(2, $breadcrumb_action1 . " > " . $breadcrumb_action2); } smartpartner_collapsableBar('addpartner', 'addpartmericon', _AM_SPARTNER_PARTNER_CREATING, _AM_SPARTNER_PARTNER_CREATING_DSC); } // PARTNER FORM $sform = new XoopsThemeForm(_AM_SPARTNER_PARTNERS, "op", xoops_getenv('PHP_SELF')); $sform->setExtra('enctype="multipart/form-data"'); // TITLE $title_text = new XoopsFormText(_AM_SPARTNER_TITLE, 'title', 50, 255, $partnerObj->title('e')); $sform->addElement($title_text, true); // Parent Category $mytree = new SmartTree($xoopsDB->prefix("smartpartner_categories"), "categoryid", "parentid"); ob_start(); $mytree->makeMySelBox("name", "weight", explode('|', $partnerObj->categoryid()), 0, 'categoryid', '', true); //makeMySelBox($title,$order="",$preset_id=0, $none=0, $sel_name="", $onchange="") $parent_cat_select = new XoopsFormLabel(_AM_SPARTNER_CATEGORY_BELONG, ob_get_contents()); $parent_cat_select->setDescription(_AM_SPARTNER_BELONG_CATEGORY_DSC); $sform->addElement($parent_cat_select); ob_end_clean(); // LOGO $logo_array =& XoopsLists::getImgListAsArray(smartpartner_getImageDir()); $logo_select = new XoopsFormSelect('', 'image', $partnerObj->image()); $logo_select->addOption('-1', '---------------'); $logo_select->addOptionArray($logo_array); $logo_select->setExtra("onchange='showImgSelected(\"image3\", \"image\", \"" . 'uploads/' . SMARTPARTNER_DIRNAME . '/images' . "\", \"\", \"" . XOOPS_URL . "\")'"); $logo_tray = new XoopsFormElementTray(_AM_SPARTNER_LOGO, ' '); $logo_tray->addElement($logo_select); $logo_tray->addElement(new XoopsFormLabel('', "<br /><br /><img src='" . smartpartner_getImageDir('', false) . $partnerObj->image() . "' name='image3' id='image3' alt='' />")); $logo_tray->setDescription(_AM_SPARTNER_LOGO_DSC); $sform->addElement($logo_tray); // LOGO UPLOAD $max_size = 5000000; $file_box = new XoopsFormFile(_AM_SPARTNER_LOGO_UPLOAD, "logo_file", $max_size); $file_box->setExtra("size ='45'"); $file_box->setDescription(sprintf(_AM_SPARTNER_LOGO_UPLOAD_DSC, $xoopsModuleConfig['img_max_width'], $xoopsModuleConfig['img_max_height'])); $sform->addElement($file_box); // IMAGE_URL $image_url_text = new XoopsFormText(_CO_SPARTNER_IMAGE_URL, 'image_url', 50, 255, $partnerObj->image_url()); $image_url_text->setDescription(_CO_SPARTNER_IMAGE_URL_DSC); $sform->addElement($image_url_text, false); // URL $url_text = new XoopsFormText(_AM_SPARTNER_URL, 'url', 50, 255, $partnerObj->url()); $url_text->setDescription(_AM_SPARTNER_URL_DSC); $sform->addElement($url_text, false); // SUMMARY $summary_text = new XoopsFormTextArea(_AM_SPARTNER_SUMMARY, 'summary', $partnerObj->summary(0, 'e'), 7, 60); $summary_text->setDescription(_AM_SPARTNER_SUMMARY_DSC); $sform->addElement($summary_text, true); // SHOW summary on partner page $showsum_radio = new XoopsFormRadioYN(_AM_SPARTNER_SHOW_SUMMARY, 'showsummary', $partnerObj->getVar('showsummary')); $showsum_radio->setDescription(_AM_SPARTNER_SHOW_SUMMARY_DSC); $sform->addElement($showsum_radio); // DESCRIPTION $description_text = new XoopsFormDhtmlTextArea(_AM_SPARTNER_DESCRIPTION, 'description', $partnerObj->description(0, 'e'), 15, 60); $description_text->setDescription(_AM_SPARTNER_DESCRIPTION_DSC); $sform->addElement($description_text, false); // CONTACT_NAME $contact_name_text = new XoopsFormText(_CO_SPARTNER_CONTACT_NAME, 'contact_name', 50, 255, $partnerObj->contact_name('e')); $contact_name_text->setDescription(_CO_SPARTNER_CONTACT_NAME_DSC); $sform->addElement($contact_name_text, false); // CONTACT_EMAIL $contact_email_text = new XoopsFormText(_CO_SPARTNER_CONTACT_EMAIL, 'contact_email', 50, 255, $partnerObj->contact_email('e')); $contact_email_text->setDescription(_CO_SPARTNER_CONTACT_EMAIL_DSC); $sform->addElement($contact_email_text, false); // EMAIL_PRIV $email_priv_radio = new XoopsFormRadioYN(_CO_SPARTNER_CONTACT_EMAILPRIV, 'email_priv', $partnerObj->email_priv('e')); $email_priv_radio->setDescription(_CO_SPARTNER_CONTACT_EMAILPRIV_DSC); $sform->addElement($email_priv_radio); // CONTACT_PHONE $contact_phone_text = new XoopsFormText(_CO_SPARTNER_CONTACT_PHONE, 'contact_phone', 50, 255, $partnerObj->contact_phone('e')); $contact_phone_text->setDescription(_CO_SPARTNER_CONTACT_PHONE_DSC); $sform->addElement($contact_phone_text, false); // PHONE_PRIV $phone_priv_radio = new XoopsFormRadioYN(_CO_SPARTNER_CONTACT_PHONEPRIV, 'phone_priv', $partnerObj->phone_priv('e')); $phone_priv_radio->setDescription(_CO_SPARTNER_CONTACT_PHONEPRIV_DSC); $sform->addElement($phone_priv_radio); // ADRESS //$adress_text = new XoopsFormText(_CO_SPARTNER_ADRESS, 'adress', 50, 255, $partnerObj->adress('e')); $adress_text = new XoopsFormTextArea(_CO_SPARTNER_ADRESS, 'adress', $partnerObj->adress('e')); $adress_text->setDescription(_CO_SPARTNER_ADRESS_DSC); $sform->addElement($adress_text, false); // ADRESS_PRIV $adress_priv_radio = new XoopsFormRadioYN(_CO_SPARTNER_CONTACT_ADRESSPRIV, 'adress_priv', $partnerObj->adress_priv('e')); $adress_priv_radio->setDescription(_CO_SPARTNER_CONTACT_ADRESSPRIV_DSC); $sform->addElement($adress_priv_radio); // STATUS $options = $partnerObj->getAvailableStatus(); $status_select = new XoopsFormSelect(_AM_SPARTNER_STATUS, 'status', $new_status); $status_select->addOptionArray($options); $status_select->setDescription(_AM_SPARTNER_STATUS_DSC); $sform->addElement($status_select); // WEIGHT $weight_text = new XoopsFormText(_AM_SPARTNER_WEIGHT, 'weight', 4, 4, $partnerObj->weight()); $weight_text->setDescription(_AM_SPARTNER_WEIGHT_DSC); $sform->addElement($weight_text); //perms global $smartpermissions_handler; include_once XOOPS_ROOT_PATH . '/modules/smartobject/class/smartobjectpermission.php'; $smartpermissions_handler = new SmartobjectPermissionHandler($smartpartner_partner_handler); if ($partnerObj->id() != 0) { $grantedGroups = $smartpermissions_handler->getGrantedGroups('full_view', $partnerObj->id()); } else { $grantedGroups = $xoopsModuleConfig['default_full_view']; } $full_view_select = new XoopsFormSelectGroup(_CO_SPARTNER_FULL_PERM_READ, 'full_view', true, $grantedGroups, 5, true); $full_view_select->setDescription(_CO_SPARTNER_FULL_PERM_READ_DSC); $sform->addElement($full_view_select); if ($partnerObj->id() != 0) { $partGrantedGroups = $smartpermissions_handler->getGrantedGroups('partial_view', $partnerObj->id()); } else { $partGrantedGroups = $xoopsModuleConfig['default_part_view']; } $part_view_select = new XoopsFormSelectGroup(_CO_SPARTNER_PART_PERM_READ, 'partial_view', true, $partGrantedGroups, 5, true); $part_view_select->setDescription(_CO_SPARTNER_PART_PERM_READ_DSC); $sform->addElement($part_view_select); // Partner id $sform->addElement(new XoopsFormHidden('id', $partnerObj->id())); $button_tray = new XoopsFormElementTray('', ''); $hidden = new XoopsFormHidden('op', 'addpartner'); $button_tray->addElement($hidden); $sform->addElement(new XoopsFormHidden('original_status', $partnerObj->status())); if (!$id) { // there's no id? Then it's a new partner // $button_tray -> addElement( new XoopsFormButton( '', 'mod', _AM_SPARTNER_CREATE, 'submit' ) ); $butt_create = new XoopsFormButton('', '', _AM_SPARTNER_CREATE, 'submit'); $butt_create->setExtra('onclick="this.form.elements.op.value=\'addpartner\'"'); $button_tray->addElement($butt_create); $butt_clear = new XoopsFormButton('', '', _AM_SPARTNER_CLEAR, 'reset'); $button_tray->addElement($butt_clear); $butt_cancel = new XoopsFormButton('', '', _AM_SPARTNER_CANCEL, 'button'); $butt_cancel->setExtra('onclick="history.go(-1)"'); $button_tray->addElement($butt_cancel); } else { // else, we're editing an existing partner // $button_tray -> addElement( new XoopsFormButton( '', 'mod', _AM_SPARTNER_MODIFY, 'submit' ) ); $butt_create = new XoopsFormButton('', '', $button_caption, 'submit'); $butt_create->setExtra('onclick="this.form.elements.op.value=\'addpartner\'"'); $button_tray->addElement($butt_create); $butt_cancel = new XoopsFormButton('', '', _AM_SPARTNER_CANCEL, 'button'); $butt_cancel->setExtra('onclick="history.go(-1)"'); $button_tray->addElement($butt_cancel); } $sform->addElement($button_tray); $sform->display(); unset($hidden); if (!$id) { smartpartner_close_collapsable('addpartner', 'addpartnericon'); } else { smartpartner_close_collapsable('editpartner', 'editpartnericon'); } if ($id != 0) { showfiles($partnerObj); } }
function editfile($showmenu = false, $fileid = 0, $itemid = 0) { global $smartsection_file_handler, $xoopsModule; include_once XOOPS_ROOT_PATH . '/class/xoopsformloader.php'; // if there is a parameter, and the id exists, retrieve data: we're editing a file if ($fileid != 0) { // Creating the File object $fileObj = new smartsectionfile($fileid); if ($fileObj->notLoaded()) { redirect_header("javascript:history.go(-1)", 1, _AM_SSECTION_NOFILESELECTED); exit; } if ($showmenu) { smartsection_adminMenu(2, _AM_SSECTION_FILE . " > " . _AM_SSECTION_EDITING); } echo "<br />\n"; echo "<span style='color: #2F5376; font-weight: bold; font-size: 16px; margin: 6px 06 0 0; '>" . _AM_SSECTION_FILE_EDITING . "</span>"; echo "<span style=\"color: #567; margin: 3px 0 12px 0; font-size: small; display: block; \">" . _AM_SSECTION_FILE_EDITING_DSC . "</span>"; smartsection_collapsableBar('editfile', 'editfileicon', _AM_SSECTION_FILE_INFORMATIONS); } else { // there's no parameter, so we're adding an item $fileObj =& $smartsection_file_handler->create(); $fileObj->setVar('itemid', $itemid); if ($showmenu) { smartsection_adminMenu(2, _AM_SSECTION_FILE . " > " . _AM_SSECTION_FILE_ADD); } echo "<span style='color: #2F5376; font-weight: bold; font-size: 16px; margin: 6px 06 0 0; '>" . _AM_SSECTION_FILE_ADDING . "</span>"; echo "<span style=\"color: #567; margin: 3px 0 12px 0; font-size: small; display: block; \">" . _AM_SSECTION_FILE_ADDING_DSC . "</span>"; smartsection_collapsableBar('addfile', 'addfileicon', _AM_SSECTION_FILE_INFORMATIONS); } // FILES UPLOAD FORM $files_form = new XoopsThemeForm(_AM_SSECTION_UPLOAD_FILE, "files_form", xoops_getenv('PHP_SELF')); $files_form->setExtra("enctype='multipart/form-data'"); // NAME $name_text = new XoopsFormText(_AM_SSECTION_FILE_NAME, 'name', 50, 255, $fileObj->name()); $name_text->setDescription(_AM_SSECTION_FILE_NAME_DSC); $files_form->addElement($name_text, true); // DESCRIPTION $description_text = new XoopsFormTextArea(_AM_SSECTION_FILE_DESCRIPTION, 'description', $fileObj->description()); $description_text->setDescription(_AM_SSECTION_FILE_DESCRIPTION_DSC); $files_form->addElement($description_text, 7, 60); // FILE TO UPLOAD if ($fileid == 0) { $file_box = new XoopsFormFile(_AM_SSECTION_FILE_TO_UPLOAD, "userfile", 0); $file_box->setExtra("size ='50'"); $files_form->addElement($file_box); } $status_select = new XoopsFormRadioYN(_AM_SSECTION_FILE_STATUS, 'file_status', $fileObj->status()); $status_select->setDescription(_AM_SSECTION_FILE_STATUS_DSC); $files_form->addElement($status_select); $files_button_tray = new XoopsFormElementTray('', ''); $files_hidden = new XoopsFormHidden('op', 'uploadfile'); $files_button_tray->addElement($files_hidden); if ($fileid == 0) { $files_butt_create = new XoopsFormButton('', '', _AM_SSECTION_UPLOAD, 'submit'); $files_butt_create->setExtra('onclick="this.form.elements.op.value=\'uploadfile\'"'); $files_button_tray->addElement($files_butt_create); $files_butt_another = new XoopsFormButton('', '', _AM_SSECTION_FILE_UPLOAD_ANOTHER, 'submit'); $files_butt_another->setExtra('onclick="this.form.elements.op.value=\'uploadanother\'"'); $files_button_tray->addElement($files_butt_another); } else { $files_butt_create = new XoopsFormButton('', '', _AM_SSECTION_MODIFY, 'submit'); $files_butt_create->setExtra('onclick="this.form.elements.op.value=\'modify\'"'); $files_button_tray->addElement($files_butt_create); } $files_butt_clear = new XoopsFormButton('', '', _AM_SSECTION_CLEAR, 'reset'); $files_button_tray->addElement($files_butt_clear); $butt_cancel = new XoopsFormButton('', '', _AM_SSECTION_CANCEL, 'button'); $butt_cancel->setExtra('onclick="history.go(-1)"'); $files_button_tray->addElement($butt_cancel); $files_form->addElement($files_button_tray); // fileid $files_form->addElement(new XoopsFormHidden('fileid', $fileid)); // itemid $files_form->addElement(new XoopsFormHidden('itemid', $itemid)); $files_form->display(); if ($fileid != 0) { smartsection_close_collapsable('editfile', 'editfileicon'); } else { smartsection_close_collapsable('addfile', 'addfileicon'); } }
$form->addElement($email_priv_radio); // CONTACT_PHONE $contact_phone_text = new XoopsFormText(_CO_SPARTNER_CONTACT_PHONE, 'contact_phone', 50, 255, ''); $contact_phone_text->setDescription(_CO_SPARTNER_CONTACT_PHONE_DSC); $form->addElement($contact_phone_text, false); // PHONE_PRIV $phone_priv_radio = new XoopsFormRadioYN(_CO_SPARTNER_CONTACT_PHONEPRIV, 'phone_priv', 0); $phone_priv_radio->setDescription(_CO_SPARTNER_CONTACT_PHONEPRIV_DSC); $form->addElement($phone_priv_radio); // ADRESS $adress_text = new XoopsFormTextArea(_CO_SPARTNER_ADRESS, 'adress', '', 4, 60); $adress_text->setDescription(_CO_SPARTNER_ADRESS_DSC); $form->addElement($adress_text, false); // ADRESS_PRIV $adress_priv_radio = new XoopsFormRadioYN(_CO_SPARTNER_CONTACT_ADRESSPRIV, 'adress_priv', 0); $adress_priv_radio->setDescription(_CO_SPARTNER_CONTACT_ADRESSPRIV_DSC); $form->addElement($adress_priv_radio); // NOTIFY ON PUBLISH if (is_object($xoopsUser) && $xoopsModuleConfig['autoapprove_submitted'] != 1) { $notify_checkbox = new XoopsFormCheckBox('', 'notifypub', 1); $notify_checkbox->addOption(1, _MD_SPARTNER_NOTIFY); $form->addElement($notify_checkbox); } $form->addElement(new SmartFormHidden('partial_view', $xoopsModuleConfig['default_part_view'])); $form->addElement(new SmartFormHidden('full_view', $xoopsModuleConfig['default_full_view'])); // BUTTONS $button_tray = new XoopsFormElementTray('', ''); $hidden = new XoopsFormHidden('op', 'submitPartner'); $button_tray->addElement($hidden); $butt_create = new XoopsFormButton('', '', _CO_SPARTNER_SUBMIT, 'submit'); $butt_create->setExtra('onclick="this.form.elements.op.value=\'submitPartner\'"');
/** * @param $obj * * @return $this */ public function createElements($obj) { $publisher =& PublisherPublisher::getInstance(); $allowedEditors = publisherGetEditors($publisher->getHandler('permission')->getGrantedItems('editors')); if (!is_object($GLOBALS['xoopsUser'])) { $group = array(XOOPS_GROUP_ANONYMOUS); } else { $group = $GLOBALS['xoopsUser']->getGroups(); } $this->setExtra('enctype="multipart/form-data"'); $this->startTab(_CO_PUBLISHER_TAB_MAIN); // Category $categoryFormSelect = new XoopsFormSelect(_CO_PUBLISHER_CATEGORY, 'categoryid', $obj->getVar('categoryid', 'e')); $categoryFormSelect->setDescription(_CO_PUBLISHER_CATEGORY_DSC); $categoryFormSelect->addOptionArray($publisher->getHandler('category')->getCategoriesForSubmit()); $this->addElement($categoryFormSelect); // ITEM TITLE $this->addElement(new XoopsFormText(_CO_PUBLISHER_TITLE, 'title', 50, 255, $obj->getVar('title', 'e')), true); // SUBTITLE if ($this->isGranted(PublisherConstants::PUBLISHER_SUBTITLE)) { $this->addElement(new XoopsFormText(_CO_PUBLISHER_SUBTITLE, 'subtitle', 50, 255, $obj->getVar('subtitle', 'e'))); } // SHORT URL if ($this->isGranted(PublisherConstants::PUBLISHER_ITEM_SHORT_URL)) { $textShortUrl = new XoopsFormText(_CO_PUBLISHER_ITEM_SHORT_URL, 'item_short_url', 50, 255, $obj->short_url('e')); $textShortUrl->setDescription(_CO_PUBLISHER_ITEM_SHORT_URL_DSC); $this->addElement($textShortUrl); } // TAGS if (xoops_isActiveModule('tag') && $this->isGranted(PublisherConstants::PUBLISHER_ITEM_TAG)) { include_once $GLOBALS['xoops']->path('modules/tag/include/formtag.php'); $textTags = new XoopsFormTag('item_tag', 60, 255, $obj->getVar('item_tag', 'e'), 0); $this->addElement($textTags); } // SELECT EDITOR $nohtml = !$obj->dohtml(); if (count($allowedEditors) === 1) { $editor = $allowedEditors[0]; } elseif (count($allowedEditors) > 0) { $editor = XoopsRequest::getString('editor', '', 'POST'); if (!empty($editor)) { publisherSetCookieVar('publisher_editor', $editor); } else { $editor = publisherGetCookieVar('publisher_editor'); if (empty($editor) && is_object($GLOBALS['xoopsUser'])) { // $editor = @ $GLOBALS['xoopsUser']->getVar('publisher_editor'); // Need set through user profile $editor = null !== $GLOBALS['xoopsUser']->getVar('publisher_editor') ? $GLOBALS['xoopsUser']->getVar('publisher_editor') : ''; // Need set through user profile } } $editor = empty($editor) || !in_array($editor, $allowedEditors) ? $publisher->getConfig('submit_editor') : $editor; $formEditor = new XoopsFormSelectEditor($this, 'editor', $editor, $nohtml, $allowedEditors); $this->addElement($formEditor); } else { $editor = $publisher->getConfig('submit_editor'); } $editorConfigs = array(); $editorConfigs['rows'] = !$publisher->getConfig('submit_editor_rows') ? 35 : $publisher->getConfig('submit_editor_rows'); $editorConfigs['cols'] = !$publisher->getConfig('submit_editor_cols') ? 60 : $publisher->getConfig('submit_editor_cols'); $editorConfigs['width'] = !$publisher->getConfig('submit_editor_width') ? '100%' : $publisher->getConfig('submit_editor_width'); $editorConfigs['height'] = !$publisher->getConfig('submit_editor_height') ? '400px' : $publisher->getConfig('submit_editor_height'); // SUMMARY if ($this->isGranted(PublisherConstants::PUBLISHER_SUMMARY)) { // Description //$summaryText = new XoopsFormTextArea(_CO_PUBLISHER_SUMMARY, 'summary', $obj->getVar('summary', 'e'), 7, 60); $editorConfigs['name'] = 'summary'; $editorConfigs['value'] = $obj->getVar('summary', 'e'); $summaryText = new XoopsFormEditor(_CO_PUBLISHER_SUMMARY, $editor, $editorConfigs, $nohtml, $onfailure = null); $summaryText->setDescription(_CO_PUBLISHER_SUMMARY_DSC); $this->addElement($summaryText); } // BODY $editorConfigs['name'] = 'body'; $editorConfigs['value'] = $obj->getVar('body', 'e'); $bodyText = new XoopsFormEditor(_CO_PUBLISHER_BODY, $editor, $editorConfigs, $nohtml, $onfailure = null); $bodyText->setDescription(_CO_PUBLISHER_BODY_DSC); $this->addElement($bodyText); // VARIOUS OPTIONS if ($this->isGranted(PublisherConstants::PUBLISHER_DOHTML) || $this->isGranted(PublisherConstants::PUBLISHER_DOSMILEY) || $this->isGranted(PublisherConstants::PUBLISHER_DOXCODE) || $this->isGranted(PublisherConstants::PUBLISHER_DOIMAGE) || $this->isGranted(PublisherConstants::PUBLISHER_DOLINEBREAK)) { if ($this->isGranted(PublisherConstants::PUBLISHER_DOHTML)) { $html_radio = new XoopsFormRadioYN(_CO_PUBLISHER_DOHTML, 'dohtml', $obj->dohtml(), _YES, _NO); $this->addElement($html_radio); } if ($this->isGranted(PublisherConstants::PUBLISHER_DOSMILEY)) { $smiley_radio = new XoopsFormRadioYN(_CO_PUBLISHER_DOSMILEY, 'dosmiley', $obj->dosmiley(), _YES, _NO); $this->addElement($smiley_radio); } if ($this->isGranted(PublisherConstants::PUBLISHER_DOXCODE)) { $xcode_radio = new XoopsFormRadioYN(_CO_PUBLISHER_DOXCODE, 'doxcode', $obj->doxcode(), _YES, _NO); $this->addElement($xcode_radio); } if ($this->isGranted(PublisherConstants::PUBLISHER_DOIMAGE)) { $image_radio = new XoopsFormRadioYN(_CO_PUBLISHER_DOIMAGE, 'doimage', $obj->doimage(), _YES, _NO); $this->addElement($image_radio); } if ($this->isGranted(PublisherConstants::PUBLISHER_DOLINEBREAK)) { $linebreak_radio = new XoopsFormRadioYN(_CO_PUBLISHER_DOLINEBREAK, 'dolinebreak', $obj->dobr(), _YES, _NO); $this->addElement($linebreak_radio); } } // Available pages to wrap if ($this->isGranted(PublisherConstants::PUBLISHER_AVAILABLE_PAGE_WRAP)) { $wrapPages = XoopsLists::getHtmlListAsArray(publisherGetUploadDir(true, 'content')); $availableWrapPagesText = array(); foreach ($wrapPages as $page) { $availableWrapPagesText[] = "<span onclick='publisherPageWrap(\"body\", \"[pagewrap={$page}] \");' onmouseover='style.cursor=\"pointer\"'>{$page}</span>"; } $availableWrapPages = new XoopsFormLabel(_CO_PUBLISHER_AVAILABLE_PAGE_WRAP, implode(', ', $availableWrapPagesText)); $availableWrapPages->setDescription(_CO_PUBLISHER_AVAILABLE_PAGE_WRAP_DSC); $this->addElement($availableWrapPages); } // Uid /* We need to retreive the users manually because for some reason, on the frxoops.org server, the method users::getobjects encounters a memory error */ // Trabis : well, maybe is because you are getting 6000 objects into memory , no??? LOL if ($this->isGranted(PublisherConstants::PUBLISHER_UID)) { $uidSelect = new XoopsFormSelect(_CO_PUBLISHER_UID, 'uid', $obj->uid(), 1, false); $uidSelect->setDescription(_CO_PUBLISHER_UID_DSC); $sql = 'SELECT uid, uname FROM ' . $obj->db->prefix('users') . ' ORDER BY uname ASC'; $result = $obj->db->query($sql); $usersArray = array(); $usersArray[0] = $GLOBALS['xoopsConfig']['anonymous']; while (($myrow = $obj->db->fetchArray($result)) !== false) { $usersArray[$myrow['uid']] = $myrow['uname']; } $uidSelect->addOptionArray($usersArray); $this->addElement($uidSelect); } /* else { $hidden = new XoopsFormHidden('uid', $obj->uid()); $this->addElement($hidden); unset($hidden); }*/ // Author ALias if ($this->isGranted(PublisherConstants::PUBLISHER_AUTHOR_ALIAS)) { $element = new XoopsFormText(_CO_PUBLISHER_AUTHOR_ALIAS, 'author_alias', 50, 255, $obj->getVar('author_alias', 'e')); $element->setDescription(_CO_PUBLISHER_AUTHOR_ALIAS_DSC); $this->addElement($element); unset($element); } // STATUS if ($this->isGranted(PublisherConstants::PUBLISHER_STATUS)) { $options = array(PublisherConstants::PUBLISHER_STATUS_PUBLISHED => _CO_PUBLISHER_PUBLISHED, PublisherConstants::PUBLISHER_STATUS_OFFLINE => _CO_PUBLISHER_OFFLINE, PublisherConstants::PUBLISHER_STATUS_SUBMITTED => _CO_PUBLISHER_SUBMITTED, PublisherConstants::PUBLISHER_STATUS_REJECTED => _CO_PUBLISHER_REJECTED); $statusSelect = new XoopsFormSelect(_CO_PUBLISHER_STATUS, 'status', $obj->getVar('status')); $statusSelect->addOptionArray($options); $statusSelect->setDescription(_CO_PUBLISHER_STATUS_DSC); $this->addElement($statusSelect); unset($statusSelect); } // Datesub if ($this->isGranted(PublisherConstants::PUBLISHER_DATESUB)) { if ($obj->isNew()) { $datesub = time(); } else { $datesub = $obj->getVar('datesub') == 0 ? time() : $obj->getVar('datesub'); } $datesub_datetime = new PublisherFormDateTime(_CO_PUBLISHER_DATESUB, 'datesub', $size = 15, $datesub, true, true); // $datesub_datetime = new XoopsFormDateTime(_CO_PUBLISHER_DATESUB, 'datesub', $size = 15, $datesub, true, true); $datesub_datetime->setDescription(_CO_PUBLISHER_DATESUB_DSC); $this->addElement($datesub_datetime); } // NOTIFY ON PUBLISH if ($this->isGranted(PublisherConstants::PUBLISHER_NOTIFY)) { $notify_radio = new XoopsFormRadioYN(_CO_PUBLISHER_NOTIFY, 'notify', $obj->notifypub(), _YES, _NO); $this->addElement($notify_radio); } if ($this->hasTab(_CO_PUBLISHER_TAB_IMAGES)) { $this->startTab(_CO_PUBLISHER_TAB_IMAGES); } // IMAGE if ($this->isGranted(PublisherConstants::PUBLISHER_IMAGE_ITEM)) { $objimages = $obj->getImages(); $mainarray = is_object($objimages['main']) ? array($objimages['main']) : array(); $mergedimages = array_merge($mainarray, $objimages['others']); $objimage_array = array(); foreach ($mergedimages as $imageObj) { $objimage_array[$imageObj->getVar('image_name')] = $imageObj->getVar('image_nicename'); } $imgcatHandler =& xoops_getHandler('imagecategory'); if (method_exists($imgcatHandler, 'getListByPermission')) { $catlist = $imgcatHandler->getListByPermission($group, 'imgcat_read', 1); } else { $catlist = $imgcatHandler->getList($group, 'imgcat_read', 1); } $catids = array_keys($catlist); $imageObjs = array(); if (!empty($catids)) { $imageHandler =& xoops_getHandler('image'); $criteria = new CriteriaCompo(new Criteria('imgcat_id', '(' . implode(',', $catids) . ')', 'IN')); $criteria->add(new Criteria('image_display', 1)); $criteria->setSort('image_nicename'); $criteria->setOrder('ASC'); $imageObjs = $imageHandler->getObjects($criteria, true); unset($criteria); } $image_array = array(); foreach ($imageObjs as $imageObj) { $image_array[$imageObj->getVar('image_name')] = $imageObj->getVar('image_nicename'); } $image_array = array_diff($image_array, $objimage_array); $imageSelect = new XoopsFormSelect('', 'image_notused', '', 5); $imageSelect->addOptionArray($image_array); $imageSelect->setExtra("onchange='showImgSelected(\"image_display\", \"image_notused\", \"uploads/\", \"\", \"" . XOOPS_URL . "\")'"); //$imageSelect->setExtra( "onchange='appendMySelectOption(\"image_notused\", \"image_item\")'"); unset($image_array); $imageSelect2 = new XoopsFormSelect('', 'image_item', '', 5, true); $imageSelect2->addOptionArray($objimage_array); $imageSelect2->setExtra("onchange='publisher_updateSelectOption(\"image_item\", \"image_featured\"), showImgSelected(\"image_display\", \"image_item\", \"uploads/\", \"\", \"" . XOOPS_URL . "\")'"); $buttonadd = new XoopsFormButton('', 'buttonadd', _CO_PUBLISHER_ADD); $buttonadd->setExtra("onclick='publisher_appendSelectOption(\"image_notused\", \"image_item\"), publisher_updateSelectOption(\"image_item\", \"image_featured\")'"); $buttonremove = new XoopsFormButton('', 'buttonremove', _CO_PUBLISHER_REMOVE); $buttonremove->setExtra("onclick='publisher_appendSelectOption(\"image_item\", \"image_notused\"), publisher_updateSelectOption(\"image_item\", \"image_featured\")'"); $opentable = new XoopsFormLabel('', '<table><tr><td>'); $addcol = new XoopsFormLabel('', '</td><td>'); $addbreak = new XoopsFormLabel('', '<br />'); $closetable = new XoopsFormLabel('', '</td></tr></table>'); $GLOBALS['xoTheme']->addScript(PUBLISHER_URL . '/assets/js/ajaxupload.3.9.js'); $js_data = new XoopsFormLabel('', ' <script type= "text/javascript">/*<![CDATA[*/ $publisher(document).ready(function () { var button = $publisher("#publisher_upload_button"), interval; new AjaxUpload(button,{ action: "' . PUBLISHER_URL . '/include/ajax_upload.php", // I disabled uploads in this example for security reasons responseType: "text/html", name: "publisher_upload_file", onSubmit : function (file, ext) { // change button text, when user selects file $publisher("#publisher_upload_message").html(" "); button.html("<img src=\'' . PUBLISHER_URL . '/assets/images/loadingbar.gif\'/>"); this.setData({ "image_nicename": $publisher("#image_nicename").val(), "imgcat_id" : $publisher("#imgcat_id").val() }); // If you want to allow uploading only 1 file at time, // you can disable upload button this.disable(); interval = window.setInterval(function () { }, 200); }, onComplete: function (file, response) { button.text("' . _CO_PUBLISHER_IMAGE_UPLOAD_NEW . '"); window.clearInterval(interval); // enable upload button this.enable(); // add file to the list var result = eval(response); if ("success" == result[0]) { $publisher("#image_item").append("<option value=\'" + result[1] + "\' selected=\'selected\'>" + result[2] + "</option>"); publisher_updateSelectOption(\'image_item\', \'image_featured\'); showImgSelected(\'image_display\', \'image_item\', \'uploads/\', \'\', \'' . XOOPS_URL . '\') } else { $publisher("#publisher_upload_message").html("<div class=\'errorMsg\'>" + result[1] + "</div>"); } } }); }); /*]]>*/</script> '); $messages = new XoopsFormLabel('', "<div id='publisher_upload_message'></div>"); $button = new XoopsFormLabel('', "<div id='publisher_upload_button'>" . _CO_PUBLISHER_IMAGE_UPLOAD_NEW . '</div>'); $nicename = new XoopsFormText('', 'image_nicename', 30, 30, _CO_PUBLISHER_IMAGE_NICENAME); $imgcatHandler =& xoops_getHandler('imagecategory'); if (method_exists($imgcatHandler, 'getListByPermission')) { $catlist = $imgcatHandler->getListByPermission($group, 'imgcat_read', 1); } else { $catlist = $imgcatHandler->getList($group, 'imgcat_read', 1); } $imagecat = new XoopsFormSelect('', 'imgcat_id', '', 1); $imagecat->addOptionArray($catlist); $imageUploadTray = new XoopsFormElementTray(_CO_PUBLISHER_IMAGE_UPLOAD, ''); $imageUploadTray->addElement($js_data); $imageUploadTray->addElement($messages); $imageUploadTray->addElement($opentable); $imageUploadTray->addElement($imagecat); $imageUploadTray->addElement($addbreak); $imageUploadTray->addElement($nicename); $imageUploadTray->addElement($addbreak); $imageUploadTray->addElement($button); $imageUploadTray->addElement($closetable); $this->addElement($imageUploadTray); $imageTray = new XoopsFormElementTray(_CO_PUBLISHER_IMAGE_ITEMS, ''); $imageTray->addElement($opentable); $imageTray->addElement($imageSelect); $imageTray->addElement($addbreak); $imageTray->addElement($buttonadd); $imageTray->addElement($addcol); $imageTray->addElement($imageSelect2); $imageTray->addElement($addbreak); $imageTray->addElement($buttonremove); $imageTray->addElement($closetable); $imageTray->setDescription(_CO_PUBLISHER_IMAGE_ITEMS_DSC); $this->addElement($imageTray); $imagename = is_object($objimages['main']) ? $objimages['main']->getVar('image_name') : ''; $imageforpath = $imagename != '' ? $imagename : 'blank.gif'; $imageSelect3 = new XoopsFormSelect(_CO_PUBLISHER_IMAGE_ITEM, 'image_featured', $imagename, 1); $imageSelect3->addOptionArray($objimage_array); $imageSelect3->setExtra("onchange='showImgSelected(\"image_display\", \"image_featured\", \"uploads/\", \"\", \"" . XOOPS_URL . "\")'"); $imageSelect3->setDescription(_CO_PUBLISHER_IMAGE_ITEM_DSC); $this->addElement($imageSelect3); $image_preview = new XoopsFormLabel(_CO_PUBLISHER_IMAGE_PREVIEW, "<img src='" . XOOPS_URL . '/uploads/' . $imageforpath . "' name='image_display' id='image_display' alt='' />"); $this->addElement($image_preview); } if ($this->hasTab(_CO_PUBLISHER_TAB_FILES)) { $this->startTab(_CO_PUBLISHER_TAB_FILES); } // File upload UPLOAD if ($this->isGranted(PublisherConstants::PUBLISHER_ITEM_UPLOAD_FILE)) { // NAME $nameText = new XoopsFormText(_CO_PUBLISHER_FILENAME, 'item_file_name', 50, 255, ''); $nameText->setDescription(_CO_PUBLISHER_FILE_NAME_DSC); $this->addElement($nameText); unset($nameText); // DESCRIPTION $descriptionText = new XoopsFormTextArea(_CO_PUBLISHER_FILE_DESCRIPTION, 'item_file_description', ''); $descriptionText->setDescription(_CO_PUBLISHER_FILE_DESCRIPTION_DSC); $this->addElement($descriptionText); unset($descriptionText); $statusSelect = new XoopsFormRadioYN(_CO_PUBLISHER_FILE_STATUS, 'item_file_status', 1); //1 - active $statusSelect->setDescription(_CO_PUBLISHER_FILE_STATUS_DSC); $this->addElement($statusSelect); unset($statusSelect); $fileBox = new XoopsFormFile(_CO_PUBLISHER_ITEM_UPLOAD_FILE, 'item_upload_file', 0); $fileBox->setDescription(_CO_PUBLISHER_ITEM_UPLOAD_FILE_DSC); $fileBox->setExtra("size ='50'"); $this->addElement($fileBox); unset($fileBox); if (!$obj->isNew()) { $filesObj =& $publisher->getHandler('file')->getAllFiles($obj->itemid()); if (count($filesObj) > 0) { $table = ''; $table .= "<table width='100%' cellspacing=1 cellpadding=3 border=0 class = outer>"; $table .= '<tr>'; $table .= "<td width='50' class='bg3' align='center'><strong>ID</strong></td>"; $table .= "<td width='150' class='bg3' align='left'><strong>" . _AM_PUBLISHER_FILENAME . '</strong></td>'; $table .= "<td class='bg3' align='left'><strong>" . _AM_PUBLISHER_DESCRIPTION . '</strong></td>'; $table .= "<td width='60' class='bg3' align='center'><strong>" . _AM_PUBLISHER_HITS . '</strong></td>'; $table .= "<td width='100' class='bg3' align='center'><strong>" . _AM_PUBLISHER_UPLOADED_DATE . '</strong></td>'; $table .= "<td width='60' class='bg3' align='center'><strong>" . _AM_PUBLISHER_ACTION . '</strong></td>'; $table .= '</tr>'; foreach ($filesObj as $fileObj) { $modify = "<a href='file.php?op=mod&fileid=" . $fileObj->fileid() . "'><img src='" . PUBLISHER_URL . "/assets/images/links/edit.gif' title='" . _CO_PUBLISHER_EDITFILE . "' alt='" . _CO_PUBLISHER_EDITFILE . "' /></a>"; $delete = "<a href='file.php?op=del&fileid=" . $fileObj->fileid() . "'><img src='" . PUBLISHER_URL . "/assets/images/links/delete.png' title='" . _CO_PUBLISHER_DELETEFILE . "' alt='" . _CO_PUBLISHER_DELETEFILE . "'/></a>"; if ($fileObj->status() == 0) { $not_visible = "<img src='" . PUBLISHER_URL . "/assets/images/no.gif'/>"; } else { $not_visible = ''; } $table .= '<tr>'; $table .= "<td class='head' align='center'>" . $fileObj->getVar('fileid') . '</td>'; $table .= "<td class='odd' align='left'>" . $not_visible . $fileObj->getFileLink() . '</td>'; $table .= "<td class='even' align='left'>" . $fileObj->description() . '</td>'; $table .= "<td class='even' align='center'>" . $fileObj->counter() . ''; $table .= "<td class='even' align='center'>" . $fileObj->getDatesub() . '</td>'; $table .= "<td class='even' align='center'> {$modify} {$delete} </td>"; $table .= '</tr>'; } $table .= '</table>'; $files_box = new XoopsFormLabel(_CO_PUBLISHER_FILES_LINKED, $table); $this->addElement($files_box); unset($files_box, $filesObj, $fileObj); } } } if ($this->hasTab(_CO_PUBLISHER_TAB_OTHERS)) { $this->startTab(_CO_PUBLISHER_TAB_OTHERS); } //$this->startTab(_CO_PUBLISHER_TAB_META); // Meta Keywords if ($this->isGranted(PublisherConstants::PUBLISHER_ITEM_META_KEYWORDS)) { $text_meta_keywords = new XoopsFormTextArea(_CO_PUBLISHER_ITEM_META_KEYWORDS, 'item_meta_keywords', $obj->meta_keywords('e'), 7, 60); $text_meta_keywords->setDescription(_CO_PUBLISHER_ITEM_META_KEYWORDS_DSC); $this->addElement($text_meta_keywords); } // Meta Description if ($this->isGranted(PublisherConstants::PUBLISHER_ITEM_META_DESCRIPTION)) { $text_meta_description = new XoopsFormTextArea(_CO_PUBLISHER_ITEM_META_DESCRIPTION, 'item_meta_description', $obj->meta_description('e'), 7, 60); $text_meta_description->setDescription(_CO_PUBLISHER_ITEM_META_DESCRIPTION_DSC); $this->addElement($text_meta_description); } //$this->startTab(_CO_PUBLISHER_TAB_PERMISSIONS); // COMMENTS if ($this->isGranted(PublisherConstants::PUBLISHER_ALLOWCOMMENTS)) { $addcomments_radio = new XoopsFormRadioYN(_CO_PUBLISHER_ALLOWCOMMENTS, 'allowcomments', $obj->cancomment(), _YES, _NO); $this->addElement($addcomments_radio); } // WEIGHT if ($this->isGranted(PublisherConstants::PUBLISHER_WEIGHT)) { $this->addElement(new XoopsFormText(_CO_PUBLISHER_WEIGHT, 'weight', 5, 5, $obj->weight())); } $this->endTabs(); //COMMON TO ALL TABS $button_tray = new XoopsFormElementTray('', ''); if (!$obj->isNew()) { $button_tray->addElement(new XoopsFormButton('', 'additem', _SUBMIT, 'submit')); //orclone } else { $button_tray->addElement(new XoopsFormButton('', 'additem', _CO_PUBLISHER_CREATE, 'submit')); $button_tray->addElement(new XoopsFormButton('', '', _CO_PUBLISHER_CLEAR, 'reset')); } $button_tray->addElement(new XoopsFormButton('', 'preview', _CO_PUBLISHER_PREVIEW, 'submit')); $butt_cancel = new XoopsFormButton('', '', _CO_PUBLISHER_CANCEL, 'button'); $butt_cancel->setExtra('onclick="history.go(-1)"'); $button_tray->addElement($butt_cancel); $this->addElement($button_tray); $hidden = new XoopsFormHidden('itemid', $obj->itemid()); $this->addElement($hidden); unset($hidden); return $this; }
// NAME $name_text = new XoopsFormText(_MD_SSECTION_FILENAME, 'name', 50, 255, $fileObj->name()); $name_text->setDescription(_MD_SSECTION_FILE_NAME_DSC); $files_form->addElement($name_text, true); // DESCRIPTION $description_text = new XoopsFormTextArea(_MD_SSECTION_FILE_DESCRIPTION, 'description', $fileObj->description()); $description_text->setDescription(_MD_SSECTION_FILE_DESCRIPTION_DSC); $files_form->addElement($description_text, 7, 60); // FILE TO UPLOAD if ($fileid == 0) { $file_box = new XoopsFormFile(_MD_SSECTION_FILE_TO_UPLOAD, "userfile", 0); $file_box->setExtra("size ='50'"); $files_form->addElement($file_box); } $status_select = new XoopsFormRadioYN(_MD_SSECTION_FILE_STATUS, 'file_status', _SSECTION_STATUS_FILE_ACTIVE); $status_select->setDescription(_MD_SSECTION_FILE_STATUS_DSC); $files_form->addElement($status_select); $files_button_tray = new XoopsFormElementTray('', ''); $files_hidden = new XoopsFormHidden('op', 'uploadfile'); $files_button_tray->addElement($files_hidden); if ($fileid == 0) { $files_butt_create = new XoopsFormButton('', '', _MD_SSECTION_UPLOAD, 'submit'); $files_butt_create->setExtra('onclick="this.form.elements.op.value=\'uploadfile\'"'); $files_button_tray->addElement($files_butt_create); $files_butt_another = new XoopsFormButton('', '', _MD_SSECTION_FILE_UPLOAD_ANOTHER, 'submit'); $files_butt_another->setExtra('onclick="this.form.elements.op.value=\'uploadanother\'"'); $files_button_tray->addElement($files_butt_another); } else { $files_butt_create = new XoopsFormButton('', '', _MD_SSECTION_MODIFY, 'submit'); $files_butt_create->setExtra('onclick="this.form.elements.op.value=\'modify\'"'); $files_button_tray->addElement($files_butt_create);
function editField() { global $oAdminButton; $eventsrv =& xhelpNewEventService(); $session =& Session::singleton(); $regex_array =& _getRegexArray(); if (!isset($_REQUEST['id'])) { redirect_header(xhelpMakeURI(XHELP_ADMIN_URL . '/fields.php', array('op' => 'manageDepartments'), false), 3, _AM_XHELP_MESSAGE_NO_FIELD); } $fld_id = intval($_REQUEST['id']); $hField =& xhelpGetHandler('ticketField'); if (!($field =& $hField->get($fld_id))) { redirect_header(xhelpMakeURI(XHELP_ADMIN_URL . '/fields.php', array('op' => 'manageDepartments'), false), 3, _AM_XHELP_MESSAGE_NO_FIELD); } if (!isset($_POST['editField'])) { //Get Custom Field From session (if exists) $field_info = $session->get('xhelp_editField_' . $fld_id); $field_errors = $session->get('xhelp_editFieldErrors_' . $fld_id); if (!$field_info === false) { $fld_controltype = $field_info['controltype']; $fld_datatype = $field_info['datatype']; $fld_departments = $field_info['departments']; $fld_name = $field_info['name']; $fld_fieldname = $field_info['fieldname']; $fld_description = $field_info['description']; $fld_required = $field_info['required']; $fld_length = $field_info['length']; $fld_weight = $field_info['weight']; $fld_defaultvalue = $field_info['defaultvalue']; $fld_values = $field_info['values']; $fld_validation = $field_info['validation']; } else { $hFDept =& xhelpGetHandler('ticketFieldDepartment'); $depts =& $hFDept->departmentsByField($field->getVar('id'), true); $fld_controltype = $field->getVar('controltype'); $fld_datatype = $field->getVar('datatype'); $fld_departments = array_keys($depts); $fld_name = $field->getVar('name'); $fld_fieldname = $field->getVar('fieldname'); $fld_description = $field->getVar('description'); $fld_required = $field->getVar('required'); $fld_length = $field->getVar('fieldlength'); $fld_weight = $field->getVar('weight'); $fld_defaultvalue = $field->getVar('defaultvalue'); $fld_values = _formatValues($field->getVar('fieldvalues')); $fld_validation = $field->getVar('validation'); } //Display Field modification xoops_cp_header(); echo $oAdminButton->renderButtons('manfields'); //Edit Field Form $controls = xhelpGetControlArray(); $control_select = new XoopsFormSelect(_AM_XHELP_TEXT_CONTROLTYPE, 'fld_controltype', $fld_controltype); $control_select->setDescription(_AM_XHELP_TEXT_CONTROLTYPE_DESC); foreach ($controls as $key => $control) { $control_select->addOption($key, $control['label']); } $datatypes = array(_XHELP_DATATYPE_TEXT => _XHELP_DATATYPE_TEXT, _XHELP_DATATYPE_NUMBER_INT => _XHELP_DATATYPE_NUMBER_INT, _XHELP_DATATYPE_NUMBER_DEC => _XHELP_DATATYPE_NUMBER_DEC); $datatype_select = new XoopsFormSelect(_AM_XHELP_TEXT_DATATYPE, 'fld_datatype', $fld_datatype); $datatype_select->setDescription(_AM_XHELP_TEXT_DATATYPE_DESC); $datatype_select->addOptionArray($datatypes); $hDepts =& xhelpGetHandler('department'); $depts =& $hDepts->getObjects(); $dept_select = new XoopsFormSelect(_AM_XHELP_TEXT_DEPARTMENTS, 'fld_departments', $fld_departments, 5, true); $dept_select->setDescription(_AM_XHELP_TEXT_DEPT_DESC); foreach ($depts as $obj) { $dept_select->addOption($obj->getVar('id'), $obj->getVar('department')); } unset($depts); if (!$field_errors === false) { xhelpRenderErrors($field_errors, xhelpMakeURI(XHELP_ADMIN_URL . '/fields.php', array('op' => 'clearEditSession', 'id' => $fld_id))); } $form = new xhelpForm(_AM_XHELP_EDIT_FIELD, 'edit_field', xhelpMakeURI(XHELP_ADMIN_URL . '/fields.php', array('op' => 'editfield', 'id' => $fld_id))); $nameEle = new XoopsFormText(_AM_XHELP_TEXT_NAME, 'fld_name', 30, 64, $fld_name); $nameEle->setDescription(_AM_XHELP_TEXT_NAME_DESC); $form->addElement($nameEle); $fieldnameEle = new XoopsFormText(_AM_XHELP_TEXT_FIELDNAME, 'fld_fieldname', 30, 64, $fld_fieldname); $fieldnameEle->setDescription(_AM_XHELP_TEXT_FIELDNAME_DESC); $form->addElement($fieldnameEle); $descriptionEle = new XoopsFormTextArea(_AM_XHELP_TEXT_DESCRIPTION, 'fld_description', $fld_description, 5, 60); $descriptionEle->setDescription(_AM_XHELP_TEXT_DESCRIPTION_DESC); $form->addElement($descriptionEle); $form->addElement($dept_select); $form->addElement($control_select); $form->addElement($datatype_select); $required = new XoopsFormRadioYN(_AM_XHELP_TEXT_REQUIRED, 'fld_required', $fld_required); $required->setDescription(_AM_XHELP_TEXT_REQUIRED_DESC); $form->addElement($required); $lengthEle = new XoopsFormText(_AM_XHELP_TEXT_LENGTH, 'fld_length', 5, 5, $fld_length); $lengthEle->setDescription(_AM_XHELP_TEXT_LENGTH_DESC); $form->addElement($lengthEle); $widthEle = new XoopsFormText(_AM_XHELP_TEXT_WEIGHT, 'fld_weight', 5, 5, $fld_weight); $widthEle->setDescription(_AM_XHELP_TEXT_WEIGHT_DESC); $form->addElement($widthEle); $regex_control = new xhelpFormRegex(_AM_XHELP_TEXT_VALIDATION, 'fld_valid', $fld_validation); $regex_control->setDescription(_AM_XHELP_TEXT_VALIDATION_DESC); $regex_control->addOptionArray($regex_array); $form->addElement($regex_control); $defaultValueEle = new XoopsFormText(_AM_XHELP_TEXT_DEFAULTVALUE, 'fld_defaultvalue', 30, 100, $fld_defaultvalue); $defaultValueEle->setDescription(_AM_XHELP_TEXT_DEFAULTVALUE_DESC); $form->addElement($defaultValueEle); $values = new XoopsFormTextArea(_AM_XHELP_TEXT_FIELDVALUES, 'fld_values', $fld_values, 5, 60); $values->setDescription(_AM_XHELP_TEXT_FIELDVALUES_DESC); $form->addElement($values); $btn_tray = new XoopsFormElementTray(''); $btn_tray->addElement(new XoopsFormButton('', 'editField', _AM_XHELP_BUTTON_SUBMIT, 'submit')); $btn_tray->addElement(new XoopsFormButton('', 'cancel', _AM_XHELP_BUTTON_CANCEL)); $btn_tray->addElement(new XoopsFormHidden('id', $fld_id)); $form->addElement($btn_tray); echo $form->render(); xhelpAdminFooter(); xoops_cp_footer(); } else { //Validate Field Information $has_errors = false; $errors = array(); $values =& _parseValues($_POST['fld_values']); if (!($control = xhelpGetControl($_POST['fld_controltype']))) { $has_errors = true; $errors['fld_controltype'][] = _AM_XHELP_VALID_ERR_CONTROLTYPE; } $fld_needslength = $control['needs_length']; $fld_needsvalues = $control['needs_values']; //name field filled? if (trim($_POST['fld_name']) == '') { $has_errors = true; $errors['fld_name'][] = _AM_XHELP_VALID_ERR_NAME; } //fieldname filled if (trim($_POST['fld_fieldname']) == '') { $has_errors = true; $errors['fld_fieldname'][] = _AM_XHELP_VALID_ERR_FIELDNAME; } //fieldname unique? $crit = new CriteriaCompo(new Criteria('id', $fld_id, '!=')); $crit->add(new Criteria('fieldname', $_POST['fld_fieldname'])); if ($hField->getCount($crit)) { $has_errors = true; $errors['fld_fieldname'][] = _AM_XHELP_VALID_ERR_FIELDNAME_UNIQUE; } //Length filled if (intval($_POST['fld_length']) == 0 && $fld_needslength == true) { $has_errors = true; $errors['fld_length'][] = sprintf(_AM_XHELP_VALID_ERR_LENGTH, _XHELP_FIELD_MINLEN, _XHELP_FIELD_MAXLEN); } //default value in value set? if (count($values)) { if (!in_array($_POST['fld_defaultvalue'], $values, true) && !array_key_exists($_POST['fld_defaultvalue'], $values)) { $has_errors = true; $errors['fld_defaultvalue'][] = _AM_XHELP_VALID_ERR_DEFAULTVALUE; } //length larger than longest value? $length = intval($_POST['fld_length']); foreach ($values as $key => $value) { if (strlen($key) > $length) { $has_errors = true; $errors['fld_values'][] = sprintf(_AM_XHELP_VALID_ERR_VALUE_LENGTH, htmlentities($key), $length); } } } elseif ($fld_needsvalues) { $has_errors = true; $errors['fld_values'][] = _AM_XHELP_VALID_ERR_VALUE; } if ($has_errors) { $afield = array(); $afield['name'] = $_POST['fld_name']; $afield['description'] = $_POST['fld_description']; $afield['fieldname'] = $_POST['fld_fieldname']; $afield['departments'] = $_POST['fld_departments']; $afield['controltype'] = $_POST['fld_controltype']; $afield['datatype'] = $_POST['fld_datatype']; $afield['required'] = $_POST['fld_required']; $afield['weight'] = $_POST['fld_weight']; $afield['defaultvalue'] = $_POST['fld_defaultvalue']; $afield['values'] = $_POST['fld_values']; $afield['length'] = $_POST['fld_length']; $afield['validation'] = $_POST['fld_valid_select'] == $_POST['fld_valid_txtbox'] ? $_POST['fld_valid_select'] : $_POST['fld_valid_txtbox']; $session->set('xhelp_editField_' . $fld_id, $afield); $session->set('xhelp_editFieldErrors_' . $fld_id, $errors); //Redirect to edit page (display errors); header('Location: ' . xhelpMakeURI(XHELP_ADMIN_URL . '/fields.php', array('op' => 'editfield', 'id' => $fld_id), false)); exit; } //Store Modified Field info $field->setVar('name', $_POST['fld_name']); $field->setVar('description', $_POST['fld_description']); $field->setVar('fieldname', $_POST['fld_fieldname']); $field->setVar('controltype', $_POST['fld_controltype']); $field->setVar('datatype', $_POST['fld_datatype']); $field->setVar('fieldlength', $_POST['fld_length']); $field->setVar('required', $_POST['fld_required']); $field->setVar('weight', $_POST['fld_weight']); $field->setVar('defaultvalue', $_POST['fld_defaultvalue']); $field->setVar('validation', $_POST['fld_valid_select'] == $_POST['fld_valid_txtbox'] ? $_POST['fld_valid_select'] : $_POST['fld_valid_txtbox']); $field->setValues($values); $field->addDepartments($_POST['fld_departments']); if ($hField->insert($field)) { _clearEditSessionVars($fld_id); redirect_header(xhelpMakeURI(XHELP_ADMIN_URL . '/fields.php'), 3, _AM_XHELP_MSG_FIELD_UPD_OK); } else { redirect_header(xhelpMakeURI(XHELP_ADMIN_URL . '/fields.php', array('op' => 'editfield', 'id' => $fld_id), false), 3, _AM_XHELP_MSG_FIELD_UPD_ERR); } } }
/** * XoopsfaqContents::displayForm() * * @return */ function displayForm() { global $xoopsModuleConfig; $category_handler =& xoops_getModuleHandler('category'); if (!$category_handler->getCount()) { xoops_error(_AM_XOOPSFAQ_ERRORNOCAT, $title = ''); xoops_cp_footer(); exit; } include_once XOOPS_ROOT_PATH . '/class/xoopsformloader.php'; $caption = $this->isNew() ? _AM_XOOPSFAQ_CREATENEW : sprintf(_AM_XOOPSFAQ_MODIFYITEM, $this->getVar('contents_title')); $form = new XoopsThemeForm($caption, 'content', $_SERVER['REQUEST_URI']); $form->addElement(new XoopsFormHiddenToken()); $form->addElement(new xoopsFormHidden('op', 'save')); $form->addElement(new xoopsFormHidden('contents_id', $this->getVar('contents_id', 'e'))); // title $category_handler =& xoops_getModuleHandler('category'); $objects = $category_handler->getList(); $contents_cid = new XoopsFormSelect(_AM_XOOPSFAQ_E_CONTENTS_CATEGORY, 'contents_cid', $this->getVar('contents_cid', 'e'), 1, false); $contents_cid->setDescription(_AM_XOOPSFAQ_E_CONTENTS_CATEGORY_DSC); $contents_cid->addOptionArray($objects); $form->addElement($contents_cid); $contents_title = new XoopsFormText(_AM_XOOPSFAQ_E_CONTENTS_TITLE, 'contents_title', 50, 150, $this->getVar('contents_title', 'e')); $contents_title->setDescription(_AM_XOOPSFAQ_E_CONTENTS_TITLE_DSC); $form->addElement($contents_title, true); /** */ $options_tray = new XoopsFormElementTray(_AM_XOOPSFAQ_E_CONTENTS_CONTENT, '<br />'); if (class_exists('XoopsFormEditor')) { $options['name'] = 'contents_contents'; $options['value'] = $this->getVar('contents_contents', 'e'); $options['rows'] = 25; $options['cols'] = '100%'; $options['width'] = '100%'; $options['height'] = '600px'; $contents_contents = new XoopsFormEditor('', $xoopsModuleConfig['use_wysiwyg'], $options, $nohtml = false, $onfailure = 'textarea'); $options_tray->addElement($contents_contents); } else { $contents_contents = new XoopsFormDhtmlTextArea('', 'contents_contents', $this->getVar('contents_contents', 'e'), '100%', '100%'); $options_tray->addElement($contents_contents); } $options_tray->setDescription(_AM_XOOPSFAQ_E_CONTENTS_CONTENT_DSC); if (false == xoopsFaq_isEditorHTML()) { if ($this->isNew()) { $this->setVar('dohtml', 0); $this->setVar('dobr', 1); } $html_checkbox = new XoopsFormCheckBox('', 'dohtml', $this->getVar('dohtml', 'e')); $html_checkbox->addOption(1, _AM_XOOPSFAQ_E_DOHTML); $options_tray->addElement($html_checkbox); $breaks_checkbox = new XoopsFormCheckBox('', 'dobr', $this->getVar('dobr', 'e')); $breaks_checkbox->addOption(1, _AM_XOOPSFAQ_E_BREAKS); $options_tray->addElement($breaks_checkbox); } else { $form->addElement(new xoopsFormHidden('dohtml', 1)); $form->addElement(new xoopsFormHidden('dobr', 0)); } $doimage_checkbox = new XoopsFormCheckBox('', 'doimage', $this->getVar('doimage', 'e')); $doimage_checkbox->addOption(1, _AM_XOOPSFAQ_E_DOIMAGE); $options_tray->addElement($doimage_checkbox); $xcodes_checkbox = new XoopsFormCheckBox('', 'doxcode', $this->getVar('doxcode', 'e')); $xcodes_checkbox->addOption(1, _AM_XOOPSFAQ_E_DOXCODE); $options_tray->addElement($xcodes_checkbox); $smiley_checkbox = new XoopsFormCheckBox('', 'dosmiley', $this->getVar('dosmiley', 'e')); $smiley_checkbox->addOption(1, _AM_XOOPSFAQ_E_DOSMILEY); $options_tray->addElement($smiley_checkbox); $form->addElement($options_tray); $contents_publish = new XoopsFormTextDateSelect(_AM_XOOPSFAQ_E_CONTENTS_PUBLISH, 'contents_publish', 20, $this->getVar('contents_publish'), $this->isNew()); $contents_publish->setDescription(_AM_XOOPSFAQ_E_CONTENTS_PUBLISH_DSC); $form->addElement($contents_publish); $contents_weight = new XoopsFormText(_AM_XOOPSFAQ_E_CONTENTS_WEIGHT, 'contents_weight', 5, 5, $this->getVar('contents_weight', 'e')); $contents_weight->setDescription(_AM_XOOPSFAQ_E_CONTENTS_WEIGHT_DSC); $form->addElement($contents_weight, false); $contents_active = new XoopsFormRadioYN(_AM_XOOPSFAQ_E_CONTENTS_ACTIVE, 'contents_active', $this->getVar('contents_active', 'e'), ' ' . _YES . '', ' ' . _NO . ''); $contents_active->setDescription(_AM_XOOPSFAQ_E_CONTENTS_ACTIVE_DSC); $form->addElement($contents_active, false); //$form->addElement(new XoopsFormButton('', 'submit', _SUBMIT, 'submit')); $btnTray = new XoopsFormElementTray('', ''); $btnSubmit = new XoopsFormButton('', 'submit', _SUBMIT, 'submit'); $btnTray->addElement($btnSubmit); $btnCancel = new XoopsFormButton('', '', _CANCEL, 'button'); $btnCancel->setExtra('onclick="history.go(-1)"'); $btnTray->addElement($btnCancel); $form->addElement($btnTray); $form->display(); }