form.article.elements.php
来自「php 开发的内容管理系统」· PHP 代码 · 共 411 行 · 第 1/2 页
PHP
411 行
<?php
/**
* Article management
*
* @copyright The XOOPS project http://www.xoops.org/
* @license http://www.fsf.org/copyleft/gpl.html GNU public license
* @author Taiwen Jiang (phppp or D.J.) <php_pp@hotmail.com>
* @since 1.00
* @version $Id$
* @package module::article
*/
if (!defined("XOOPS_ROOT_PATH")) exit();
if(!is_object($form_art)) {
die("No form declared");
}
$form_element = array();
// editor form mode
if("fix" == @$xoopsModuleConfig["form_mode"]) {
$form_element["inactive"]["form_mode"] = new XoopsFormHidden("form_mode", "custom");
}else{
$mode = array();
$mode["basic"] = new XoopsFormButton("", "form_mode_basic", art_constant("MD_BASIC"), "button");
$mode["full"] = new XoopsFormButton("", "form_mode_full", art_constant("MD_ADVANCE"), "button");
$mode["custom"] = new XoopsFormButton("", "form_mode_custom", art_constant("MD_CUSTOM"), "button");
$mode_tray = new XoopsFormElementTray(art_constant("MD_FORMMODE"));
foreach(array_keys($mode) as $key) {
if($form_mode == $key) {
$mode[$key]->setExtra("disabled");
}else{
$mode[$key]->setExtra("onclick='window.document.".$form_art->getName().".form_mode.value=\"{$key}\"; window.document.".$form_art->getName().".submit()'");
}
$mode_tray->addElement($mode[$key]);
}
$form_element["active"]["form_mode"][] = $mode_tray;
$form_element["active"]["form_mode"][] = new XoopsFormHidden("form_mode", @$form_mode);
}
// The title
$form_element["active"]["art_title"] = new XoopsFormText(art_constant("MD_TITLE"), "art_title", 60, 255, $art_title);
$form_element["inactive"]["art_title"] = new XoopsFormHidden("art_title", $art_title);
// The uid
$form_element["inactive"]["uid"] = new XoopsFormHidden("uid", $uid);
if($isModerator){
include_once XOOPS_ROOT_PATH."/Frameworks/art/functions.user.php";
$user_tray = new XoopsFormElementTray("UID");
$user_tray->addElement(new XoopsFormText("", "uid", 20, 255, $uid));
$user_tray->addElement(new XoopsFormLabel("", mod_getUnameFromId($article_obj->getVar("uid"), false, true)));
$form_element["active"]["uid"] =& $user_tray;
}else{
$form_element["active"]["uid"] =& $form_element["inactive"]["uid"];
}
// Summary
$form_element["active"]["art_summary"] = new XoopsFormTextArea(art_constant("MD_SUMMARY"), "art_summary", $art_summary, 5, 60);
$form_element["inactive"]["art_summary"] = new XoopsFormHidden("art_summary", $art_summary);
// Text subtitle
$form_element["active"]["subtitle"] = new XoopsFormText(art_constant("MD_SUBTITLE"), "subtitle", 60, 255, $subtitle);
$form_element["inactive"]["subtitle"] = new XoopsFormHidden("subtitle", $subtitle);
// The editor selection
$nohtml = empty($canhtml);
if(!empty($editor)){
//art_setcookie("editor",$editor);
}else{
$editor = art_getcookie("editor");
if(empty($editor) && is_object($xoopsUser)){
$editor =@ $xoopsUser->getVar("editor"); // Need set through user profile
}
if(empty($editor)){
$editor =@ $xoopsModuleConfig["editor_default"];
}
}
$form_element["active"]["editor"] = new XoopsFormSelectEditor($form_art, "editor", $editor, $nohtml, @$xoopsModuleConfig["editor_allowed"]);
$form_element["inactive"]["editor"] = new XoopsFormHidden("editor", $editor);
// text render
$editor_configs = array();
$editor_configs["name"] ="text";
$editor_configs["value"] = $text;
$editor_configs["rows"] = empty($xoopsModuleConfig["editor_rows"])? 35 : $xoopsModuleConfig["editor_rows"];
$editor_configs["cols"] = empty($xoopsModuleConfig["editor_cols"])? 60 : $xoopsModuleConfig["editor_cols"];
$editor_configs["width"] = empty($xoopsModuleConfig["editor_width"])? "100%" : $xoopsModuleConfig["editor_width"];
$editor_configs["height"] = empty($xoopsModuleConfig["editor_height"])? "400px" : $xoopsModuleConfig["editor_height"];
$form_element["active"]["text"] = new XoopsFormEditor(art_constant("MD_TEXT"), $editor, $editor_configs, $nohtml, $onfailure = null);
$form_element["inactive"]["text"] = new XoopsFormHidden("text", $text);
// text options
$dohtml = empty($canhtml) ? 0 : $dohtml;
$html_checkbox = new XoopsFormCheckBox('', 'dohtml', $dohtml);
$html_checkbox->addOption(1, art_constant("MD_DOHTML"));
if(empty($canhtml)) $html_checkbox->setExtra("disabled");
$smiley_checkbox = new XoopsFormCheckBox('', 'dosmiley', $dosmiley);
$smiley_checkbox->addOption(1, art_constant("MD_DOSMILEY"));
$xcode_checkbox = new XoopsFormCheckBox('', 'doxcode', $doxcode);
$xcode_checkbox->addOption(1, art_constant("MD_DOXCODE"));
$br_checkbox = new XoopsFormCheckBox('', 'dobr', $dobr);
$br_checkbox->addOption(1, art_constant("MD_DOBR"));
$options_tray = new XoopsFormElementTray(art_constant("MD_TEXTOPTIONS"), '<br />');
$options_tray->addElement($html_checkbox);
$options_tray->addElement($smiley_checkbox);
$options_tray->addElement($xcode_checkbox);
$options_tray->addElement($br_checkbox);
$form_element["active"]["text_options"] =& $options_tray;
//$form_element["inactive"]["text_options"] = null;
$form_element["inactive"]["text_options"][] = new XoopsFormHidden("dohtml", $dohtml);
$form_element["inactive"]["text_options"][] = new XoopsFormHidden("dosmiley", $dosmiley);
$form_element["inactive"]["text_options"][] = new XoopsFormHidden("doxcode", $doxcode);
$form_element["inactive"]["text_options"][] = new XoopsFormHidden("dobr", $dobr);
// Pages
$pages = $article_obj->getPageCount(true);
$pages_valid = $article_obj->getPageCount();
if($pages){
$QUERY_STRING = array();
if(!empty($art_id)) $QUERY_STRING[] = "article=".$art_id;
if(!empty($cat_id)) $QUERY_STRING[] = "category=".$cat_id;
$href = "edit.article.php?".implode("&", $QUERY_STRING)."&";
$page_string = "";
if(!empty($newpage)) $page_string .= "
<script type=\"text/javascript\">
var pages = ".$pages.";
function setNewpage(page_no){
window.document.formarticle.newpage.value=page_no;
for(var i=1;i<=pages+1;i++){
xoopsGetElementById('newpage'+i).style.color = \"\";
xoopsGetElementById('newpage'+i).style.fontWeight = \"normal\";
}
xoopsGetElementById('newpage'+page_no).style.color = \"red\";
xoopsGetElementById('newpage'+page_no).style.fontWeight = \"bold\";
}
</script>
";
for($i = 1; $i <= $pages; $i++){
$pageno = ($i>$pages_valid)?"<span style=\"font-style:italic\">".$i."</span>":$i;
if(!empty($newpage)){
if($newpage == $i){
$page_string .= "<a href=\"###\" onclick=\"setNewpage(".$i.")\" title=\"".art_constant("MD_NEWPAGE")."\"><span id=\"newpage".$i."\" style=\"font-weight:bold;color:red;\">+</span></a> ";
}else{
$page_string .= "<a href=\"###\" onclick=\"setNewpage(".$i.")\" title=\"".art_constant("MD_NEWPAGE")."\"><span id=\"newpage".$i."\">+</span></a> ";
}
$page_string .= "<a href=\"".$href."page=".($i-1)."\" title=\"".sprintf(art_constant("MD_EDITPAGE_NO"), $i)."\">".$pageno."</a> ";
}else{
$page_string .= "<a href=\"".$href."newpage=".$i."\" title=\"".art_constant("MD_NEWPAGE")."\">+</a> ";
if($page+1 == $i){
$page_string .= "<span style=\"font-weight:bold\">".$pageno."</span> ";
}else{
$page_string .= "<a href=\"".$href."page=".($i-1)."\" title=\"".sprintf(art_constant("MD_EDITPAGE_NO"), $i)."\">".$pageno."</a> ";
}
}
}
if(!empty($newpage)){
if($newpage == $i){
$page_string .= "<a href=\"###\" onclick=\"setNewpage(".$i.")\" title=\"".art_constant("MD_NEWPAGE")."\"><span id=\"newpage".$i."\" style=\"font-weight:bold\">+</span></a> ";
}else{
$page_string .= "<a href=\"###\" onclick=\"setNewpage(".$i.")\" title=\"".art_constant("MD_NEWPAGE")."\"><span id=\"newpage".$i."\">+</span></a> ";
}
}else{
$page_string .= "<a href=\"".$href."newpage=".$i."\" title=\"".art_constant("MD_NEWPAGE")."\">+</a> ";
}
$page_string .= " (".art_constant("MD_SAVE_BEFORE_SWITCH").")";
}else{
$page_string = art_constant("MD_NEWPAGE_AVAILABLE");
}
$form_element["active"]["page"] = new XoopsFormLabel(art_constant("MD_EDITPAGE"), $page_string);
//$form_element["inactive"]["page"] = null;
// The author info
require_once XOOPS_ROOT_PATH."/modules/".$GLOBALS["artdirname"]."/class/formselectwriter.php";
$form_element["active"]["writer_id"] = new XoopsFormSelectWriter(art_constant("MD_AUTHOR"), 'writer_id', $writer_id);
$form_element["inactive"]["writer_id"] = new XoopsFormHidden("writer_id", $writer_id);
// Source
$form_element["active"]["art_source"] = new XoopsFormText(art_constant("MD_SOURCE"), "art_source", 50, 255, $art_source);
$form_element["inactive"]["art_source"] = new XoopsFormHidden("art_source", $art_source);
// Keywords/Tags
$form_element["inactive"]["art_keywords"] = new XoopsFormHidden("art_keywords", $art_keywords);
if(@include_once XOOPS_ROOT_PATH."/modules/tag/include/formtag.php"){
$form_element["active"]["art_keywords"] = new XoopsFormTag("art_keywords", 60, 255, $art_keywords);
}else{
$form_element["active"]["art_keywords"] =& $form_element["inactive"]["art_keywords"];
}
// Attachments
/*
$form_element["inactive"]["userfile"] = null;
if ($canupload) {
$upload_tray = new XoopsFormElementTray(art_constant("MD_ATTACHMENT"), '<br />');
$upload_tray->addElement(new XoopsFormFile(art_constant("MD_ATTACHMENT"), "userfile",""));
$upload_tray->addElement(new XoopsFormLabel(art_constant("MD_ALLOWED_EXTENSIONS"), "<i>".str_replace("|"," ",$xoopsModuleConfig["extension"])."</i>"));
if (!empty($attachments)){
$delete_attach_checkbox = new XoopsFormCheckBox(art_constant("MD_ATTACHED"), "delete_attach[]");
foreach($attachments as $key => $attachment){
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?