示例#1
0
文件: ListXML.php 项目: byjg/xmlnuke
 public function CreatePage()
 {
     parent::CreatePage();
     $onlyGroup = $this->_context->get("onlygroup") != "";
     $urlXml = "module:Xmlnuke.Admin.ManageXML";
     $urlGrp = "module:Xmlnuke.Admin.ManageGroup";
     $this->myWords = $this->WordCollection();
     $this->setTitlePage($this->myWords->Value("TITLE"));
     $this->setHelp($this->myWords->Value("DESCRIPTION"));
     if (!$onlyGroup) {
         $this->addMenuOption($this->myWords->Value("EDITALLXML"), $urlXml . "?id=_all");
         $this->addMenuOption($this->myWords->Value("NEWXML"), $urlXml);
     }
     $this->addMenuOption($this->myWords->Value("NEWGROUP"), $urlGrp);
     // Open Index File
     $indexFile = new XMLFilenameProcessor("index");
     //XmlDocument
     $index = $this->_context->getXMLDataBase()->getDocument($indexFile->FullQualifiedName(), null);
     $groupList = XmlUtil::SelectNodes($index->documentElement, "group");
     $table = new XmlTableCollection();
     foreach ($groupList as $node) {
         $groupText = XmlUtil::SelectSingleNode($node, "title")->nodeValue;
         $groupId = XmlUtil::SelectSingleNode($node, "id")->nodeValue;
         $row = new XmlTableRowCollection();
         $col = new XmlTableColumnCollection();
         $anchor = new XmlAnchorCollection($urlGrp . "?id=" . $groupId, "");
         $anchor->addXmlnukeObject(new XmlnukeText($this->myWords->Value("TXT_EDIT"), true, false, false));
         $col->addXmlnukeObject($anchor);
         $row->addXmlnukeObject($col);
         $col = new XmlTableColumnCollection();
         $anchor = new XmlAnchorCollection($urlGrp . "?id=" . $groupId . "&action=delete", "");
         $anchor->addXmlnukeObject(new XmlnukeText($this->myWords->Value("TXT_DELETE"), true, false, false));
         $col->addXmlnukeObject($anchor);
         $row->addXmlnukeObject($col);
         $col = new XmlTableColumnCollection();
         $col->addXmlnukeObject(new XmlnukeText($groupText, true, false, false));
         $row->addXmlnukeObject($col);
         $table->addXmlnukeObject($row);
         if (!$onlyGroup) {
             $fileList = XmlUtil::SelectNodes($index->documentElement, "group[id='" . $groupId . "']/page");
             foreach ($fileList as $nodeFile) {
                 $fileText = XmlUtil::SelectSingleNode($nodeFile, "title")->nodeValue;
                 $fileId = XmlUtil::SelectSingleNode($nodeFile, "id")->nodeValue;
                 $fileAbstract = XmlUtil::SelectSingleNode($nodeFile, "summary")->nodeValue;
                 $row = new XmlTableRowCollection();
                 $col = new XmlTableColumnCollection();
                 $anchor = new XmlAnchorCollection($urlXml . "?id=" . $fileId, "");
                 $anchor->addXmlnukeObject(new XmlnukeText($this->myWords->Value("TXT_EDIT")));
                 $col->addXmlnukeObject($anchor);
                 $row->addXmlnukeObject($col);
                 $col = new XmlTableColumnCollection();
                 $anchor = new XmlAnchorCollection($urlXml . "?id=" . $fileId . "&action=delete", "");
                 $anchor->addXmlnukeObject(new XmlnukeText($this->myWords->Value("TXT_DELETE")));
                 $col->addXmlnukeObject($anchor);
                 $row->addXmlnukeObject($col);
                 $col = new XmlTableColumnCollection();
                 $col->addXmlnukeObject(new XmlnukeText($fileText));
                 $col->addXmlnukeObject(new XmlnukeBreakLine());
                 $col->addXmlnukeObject(new XmlnukeText($fileAbstract, false, true, false));
                 $row->addXmlnukeObject($col);
                 $table->addXmlnukeObject($row);
             }
         }
     }
     $block = new XmlBlockCollection($this->myWords->Value("WORKINGAREA"), BlockPosition::Center);
     $paragraph = new XmlParagraphCollection();
     $paragraph->addXmlnukeObject($table);
     $block->addXmlnukeObject($paragraph);
     $this->defaultXmlnukeDocument->addXmlnukeObject($block);
     return $this->defaultXmlnukeDocument->generatePage();
 }
示例#2
0
文件: Download.php 项目: byjg/xmlnuke
 public function CreatePage()
 {
     parent::CreatePage();
     // Doesnt necessary get PX, because PX is protected!
     $myWords = $this->WordCollection();
     $forceReset = false;
     // Get parameters to define type of edit
     $catId = $this->_context->get("ci");
     $type = $this->_context->get("t");
     if ($type == "") {
         if ($this->_action == XmlnukeCrudBase::ACTION_VIEW) {
             $type = "FILE";
             $catId = $this->_context->get("valueid");
             $catIdAr = explode("|", $catId);
             $catId = $catIdAr[1];
             $forceReset = true;
         } else {
             $type = "CATEGORY";
         }
     }
     $block = new XmlBlockCollection($myWords->Value("TITLE"), BlockPosition::Center);
     $this->setTitlePage($myWords->Value("TITLE"));
     $this->setHelp($myWords->Value("DESCRIPTION"));
     $this->defaultXmlnukeDocument->addXmlnukeObject($block);
     // Download File
     $downloadFile = new AnydatasetFilenameProcessor("_download");
     $fields = new CrudFieldCollection();
     // Create Process Page Fields
     $field = CrudField::FactoryMinimal("TYPE", $myWords->Value("FORMTYPE"), 20, false, true);
     $field->key = true;
     $field->editable = false;
     $field->dataType = INPUTTYPE::UPPERASCII;
     $field->defaultValue = $type;
     $fields->addCrudField($field);
     $field = CrudField::FactoryMinimal("cat_id", $myWords->Value("FORMCATEGORY"), 20, true, true);
     $field->key = $type == "CATEGORY";
     $field->editable = $type == "CATEGORY";
     $field->defaultValue = $catId;
     $fields->addCrudField($field);
     if ($type == "FILE") {
         $field = CrudField::FactoryMinimal("file_id", $myWords->Value("FORMFILE"), 20, true, true);
         $field->key = $type == "FILE";
         $fields->addCrudField($field);
     }
     $field = CrudField::FactoryMinimal("name", $myWords->Value("LABEL_NAME"), 20, true, true);
     $field->maxLength = 40;
     $fields->addCrudField($field);
     $field = CrudField::FactoryMinimal("description", $myWords->Value("FORMDESCRIPTION"), 40, true, true);
     $field->maxLength = 500;
     $fields->addCrudField($field);
     $langs = $this->_context->LanguagesAvailable();
     foreach ($langs as $key => $desc) {
         $field = CrudField::FactoryMinimal("name_" . $key, $myWords->Value("LABEL_NAME") . $desc, 20, false, false);
         $field->maxLength = 40;
         $fields->addCrudField($field);
         $field = CrudField::FactoryMinimal("description_" . $key, $myWords->Value("FORMDESCRIPTION") . $desc, 40, false, false);
         $field->maxLength = 500;
         $fields->addCrudField($field);
     }
     if ($type == "FILE") {
         $field = CrudField::FactoryMinimal("url", $myWords->Value("FORMURL"), 40, true, true);
         $field->maxLength = 40;
         $fields->addCrudField($field);
         $field = CrudField::FactoryMinimal("seemore", $myWords->Value("FORMSEEMORE"), 40, false, true);
         $field->maxLength = 40;
         $fields->addCrudField($field);
         $field = CrudField::FactoryMinimal("emailto", $myWords->Value("FORMEMAILTO"), 40, false, true);
         $field->maxLength = 50;
         $field->dataType = INPUTTYPE::EMAIL;
         $fields->addCrudField($field);
     }
     // Write custom message
     if ($this->_action == XmlnukeCrudBase::ACTION_LIST || $this->_action == XmlnukeCrudBase::ACTION_MSG || $forceReset) {
         $p = new XmlParagraphCollection();
         if ($type == "CATEGORY") {
             $p->addXmlnukeObject(new XmlnukeText($myWords->Value("NOTE_CATEGORY")));
         } else {
             $href = new XmlAnchorCollection("module:Xmlnuke.Admin.download");
             $href->addXmlnukeObject(new XmlnukeText($myWords->Value("NOTE_FILE", $catId)));
             $p->addXmlnukeObject($href);
         }
         $block->addXmlnukeObject($p);
     }
     // Show Process Page State
     $itf = new IteratorFilter();
     $itf->addRelation("TYPE", Relation::EQUAL, $type);
     if ($type == "FILE") {
         $itf->addRelation("cat_id", Relation::EQUAL, $catId);
     }
     $processor = new XmlnukeCrudAnydata($this->_context, $fields, $myWords->Value("TITLE_" . $type, $catId), "module:Xmlnuke.Admin.download", null, $downloadFile, $itf);
     if ($forceReset) {
         $processor->forceCurrentAction(XmlnukeCrudBase::ACTION_LIST);
     }
     if ($type == "FILE") {
         $processor->addParameter("t", $type);
         $processor->addParameter("ci", $catId);
     }
     $block->addXmlnukeObject($processor);
     return $this->defaultXmlnukeDocument;
 }
示例#3
0
 /**
  * Add a go back link to list roles
  *
  * @param XmlBlockCollection $this->_mainBlock
  */
 protected function AddListLink($block)
 {
     $para = new XmlParagraphCollection();
     $this->_mainBlock->addXmlnukeObject($para);
     $this->url->addParam("action", ModuleAction::Listing);
     $link = new XmlAnchorCollection($this->url->getUrl(), "");
     $link->addXmlnukeObject(new XmlnukeText($this->myWords->Value("LINK_LISTROLES")));
     $para->addXmlnukeObject($link);
 }
示例#4
0
文件: XSLTheme.php 项目: byjg/xmlnuke
 /**
  * Create and show the list of Xsl Templates 
  *
  * @param String $caption
  * @param XmlParagraphCollection $paragraph
  * @param Array $filelist
  * @param Array $xslUsed
  * @param XSLFilenameProcessor $xsl
  */
 private function generateList($caption, $paragraph, $filelist, $xslUsed, $xsl)
 {
     $paragraph->addXmlnukeObject(new XmlnukeText($caption, true));
     $listCollection = new XmlListCollection(XmlListType::UnorderedList);
     $paragraph->addXmlnukeObject($listCollection);
     foreach ($filelist as $file) {
         $xslname = FileUtil::ExtractFileName($file);
         $xslname = $xsl->removeLanguage($xslname);
         if (!in_array($xslname, $xslUsed)) {
             $objectList = new XmlnukeSpanCollection();
             $listCollection->addXmlnukeObject($objectList);
             $xslUsed[] = $xslname;
             if ($xslname == "index") {
                 $anchor = new XmlAnchorCollection("engine:xmlnuke?xml=index&xsl=index");
                 $anchor->addXmlnukeObject(new XmlnukeText($xslname, true));
                 $objectList->addXmlnukeObject($anchor);
             } else {
                 $anchor = new XmlAnchorCollection("module:Xmlnuke.XSLTheme?xsl=" . $xslname);
                 $anchor->addXmlnukeObject(new XmlnukeText($xslname, true));
                 $objectList->addXmlnukeObject($anchor);
             }
         }
     }
 }
示例#5
0
 public function EditUser($users, $uid)
 {
     $user = $users->getById($uid);
     $block = new XmlBlockCollection($this->myWords->Value("EDITUSER") . $user->getField($users->getUserTable()->username), BlockPosition::Center);
     if (!$this->isUserAdmin() && $user->getField($users->getUserTable()->admin) == "yes") {
         $p = new XmlParagraphCollection();
         $p->addXmlnukeObject(new XmlnukeText($this->myWords->Value("CANNOTEDITADMIN")));
         $block->addXmlnukeObject($p);
         $this->defaultXmlnukeDocument->addXmlnukeObject($block);
         return;
     }
     $tabview = new XmlnukeTabView();
     $block->addXmlnukeObject($tabview);
     // -------------------------------------------------------------------
     // EDITAR USUÁRIO
     $form = new XmlFormCollection($this->_context, $this->url, "");
     $form->setJSValidate(true);
     $form->addXmlnukeObject(new XmlInputHidden("action", "update"));
     $form->addXmlnukeObject(new XmlInputHidden("curpage", $this->_context->get("curpage")));
     $form->addXmlnukeObject(new XmlInputHidden("valueid", $uid));
     $textbox = new XmlInputTextBox($this->myWords->Value("LABEL_LOGIN"), "login", $user->getField($users->getUserTable()->username));
     $textbox->setDataType(INPUTTYPE::TEXT);
     $textbox->setRequired(true);
     $textbox->setReadOnly(true);
     $form->addXmlnukeObject($textbox);
     $textbox = new XmlInputTextBox($this->myWords->Value("LABEL_NAME"), "name", $user->getField($users->getUserTable()->name));
     $textbox->setDataType(INPUTTYPE::TEXT);
     $textbox->setRequired(true);
     $form->addXmlnukeObject($textbox);
     $textbox = new XmlInputTextBox($this->myWords->Value("LABEL_EMAIL"), "email", $user->getField($users->getUserTable()->email));
     $textbox->setDataType(INPUTTYPE::EMAIL);
     $textbox->setRequired(true);
     $form->addXmlnukeObject($textbox);
     $textbox = new XmlInputLabelField($this->myWords->Value("LABEL_PASSWORD"), $this->myWords->Value("FORMPASSWORDNOTVIEW"));
     $form->addXmlnukeObject($textbox);
     $check = new XmlInputCheck($this->myWords->Value("FORMADMINISTRADOR"), "admin", "yes");
     $check->setChecked($user->getField($users->getUserTable()->admin));
     $check->setReadOnly(!$this->isUserAdmin());
     $form->addXmlnukeObject($check);
     $boxButton = new XmlInputButtons();
     $boxButton->addSubmit($this->myWords->Value("TXT_UPDATE"), "");
     $form->addXmlnukeObject($boxButton);
     $tabview->addTabItem($this->myWords->Value("TABEDITUSER"), $form);
     // -------------------------------------------------------------------
     // ALTERAR SENHA
     $form = new XmlFormCollection($this->_context, $this->url, "");
     $form->setJSValidate(true);
     $form->addXmlnukeObject(new XmlInputHidden("action", "changepassword"));
     $form->addXmlnukeObject(new XmlInputHidden("curpage", $this->_context->get("curpage")));
     $form->addXmlnukeObject(new XmlInputHidden("valueid", $uid));
     $textbox = new XmlInputTextBox($this->myWords->Value("FORMNEWPASSWORD"), "password", "");
     $textbox->setInputTextBoxType(InputTextBoxType::PASSWORD);
     $textbox->setDataType(INPUTTYPE::TEXT);
     $textbox->setRequired(true);
     $form->addXmlnukeObject($textbox);
     $boxButton = new XmlInputButtons();
     $boxButton->addSubmit($this->myWords->Value("TXT_CHANGE"), "");
     $form->addXmlnukeObject($boxButton);
     $tabview->addTabItem($this->myWords->Value("TABCHANGEPASSWD"), $form);
     // -------------------------------------------------------------------
     // REMOVER USUARIO
     $form = new XmlFormCollection($this->_context, $this->url, "");
     $form->setJSValidate(true);
     $form->addXmlnukeObject(new XmlInputHidden("action", "delete"));
     $form->addXmlnukeObject(new XmlInputHidden("curpage", $this->_context->get("curpage")));
     $form->addXmlnukeObject(new XmlInputHidden("valueid", $uid));
     $boxButton = new XmlInputButtons();
     $boxButton->addSubmit($this->myWords->Value("BUTTONREMOVE"), "");
     $form->addXmlnukeObject($boxButton);
     $tabview->addTabItem($this->myWords->Value("TABREMOVEUSER"), $form);
     // -------------------------------------------------------------------
     // REMOVER PAPEL DO USUARIO
     $para = new XmlParagraphCollection();
     $form = new XmlFormCollection($this->_context, $this->url, $this->myWords->Value("FORMEDITROLES"));
     $form->setJSValidate(true);
     $form->addXmlnukeObject(new XmlInputHidden("action", "removerole"));
     $form->addXmlnukeObject(new XmlInputHidden("curpage", $this->_context->get("curpage")));
     $form->addXmlnukeObject(new XmlInputHidden("valueid", $uid));
     $userroles = $users->returnUserProperty($uid, UserProperty::Role);
     $userroles = is_null($userroles) ? array() : $userroles;
     $roles = array();
     foreach ($userroles as $i) {
         $roles[$i] = $i;
     }
     $form->addXmlnukeObject(new XmlEasyList(EasyListType::SELECTLIST, "role", $this->myWords->Value("FORMUSERROLES"), $roles));
     $boxButton = new XmlInputButtons();
     $boxButton->addSubmit($this->myWords->Value("TXT_REMOVE"), "");
     $form->addXmlnukeObject($boxButton);
     $para->addXmlnukeObject($form);
     // -------------------------------------------------------------------
     // ADICIONAR PAPEL AO USUARIO
     $form = new XmlFormCollection($this->_context, $this->url, "");
     $form->setJSValidate(true);
     $form->addXmlnukeObject(new XmlInputHidden("action", "addrole"));
     $form->addXmlnukeObject(new XmlInputHidden("curpage", $this->_context->get("curpage")));
     $form->addXmlnukeObject(new XmlInputHidden("valueid", $uid));
     //		$textbox = new XmlInputTextBox($this->myWords->Value("FORMROLES"), "role", "", 10);
     //		$textbox->setInputTextBoxType(InputTextBoxType::TEXT);
     //		$textbox->setDataType(INPUTTYPE::TEXT);
     //		$textbox->setRequired(true);
     //		$form->addXmlnukeObject($textbox);
     //		$form->addXmlnukeObject(new XmlInputLabelField("DEFAULT ROLES", "EDITOR"));
     //		$form->addXmlnukeObject(new XmlInputLabelField("", "DESIGNER"));
     //		$form->addXmlnukeObject(new XmlInputLabelField("", "MANAGER"));
     $roleData = $this->getAllRoles($users);
     $selectRole = new XmlEasyList(EasyListType::SELECTLIST, "role", $this->myWords->Value("FORMROLES"), $roleData);
     $form->addXmlnukeObject($selectRole);
     $boxButton = new XmlInputButtons();
     $boxButton->addSubmit($this->myWords->Value("TXT_ADD"), "");
     $form->addXmlnukeObject($boxButton);
     $para->addXmlnukeObject($form);
     $tabview->addTabItem($this->myWords->Value("TABMANROLE"), $para, $this->_action == "addrole" || $this->_action == "removerole");
     //------------------------------------------------------------------------
     // CUSTOM FIELDS
     //------------------------------------------------------------------------
     $block2 = new XmlnukeSpanCollection();
     $table = new XmlTableCollection();
     $row = new XmlTableRowCollection();
     $col = new XmlTableColumnCollection();
     $col->addXmlnukeObject(new XmlnukeText($this->myWords->Value("ACTION"), true));
     $row->addXmlnukeObject($col);
     $col = new XmlTableColumnCollection();
     $col->addXmlnukeObject(new XmlnukeText($this->myWords->Value("GRIDFIELD"), true));
     $row->addXmlnukeObject($col);
     $col = new XmlTableColumnCollection();
     $col->addXmlnukeObject(new XmlnukeText($this->myWords->Value("GRIDVALUE"), true));
     $row->addXmlnukeObject($col);
     $table->addXmlnukeObject($row);
     $fields = $user->getFieldNames();
     $fieldsLength = count($fields);
     foreach ($fields as $fldValue => $fldName) {
         $values = $user->getFieldArray($fldName);
         foreach ($values as $value) {
             $row = new XmlTableRowCollection();
             $col = new XmlTableColumnCollection();
             if ($fldName != $users->getUserTable()->name && $fldName != $users->getUserTable()->username && $fldName != $users->getUserTable()->email && $fldName != $users->getUserTable()->password && $fldName != $users->getUserTable()->created && $fldName != $users->getUserTable()->admin && $fldName != $users->getUserTable()->id) {
                 $href = new XmlAnchorCollection("module:Xmlnuke.Admin.ManageUsers?action=removecustomvalue&customfield=" . $fldName . "&valueid=" . $uid . "&customvalue=" . urlencode($value), "");
                 $href->addXmlnukeObject(new XmlnukeText($this->myWords->Value("TXT_REMOVE")));
                 $col->addXmlnukeObject($href);
             } else {
                 $col->addXmlnukeObject(new XmlnukeText("---"));
             }
             $row->addXmlnukeObject($col);
             $col = new XmlTableColumnCollection();
             $col->addXmlnukeObject(new XmlnukeText($fldName));
             $row->addXmlnukeObject($col);
             $col = new XmlTableColumnCollection();
             $col->addXmlnukeObject(new XmlnukeText($value));
             $row->addXmlnukeObject($col);
             $table->addXmlnukeObject($row);
         }
     }
     $paragraph = new XmlParagraphCollection();
     $paragraph->addXmlnukeObject($table);
     $block2->addXmlnukeObject($paragraph);
     $table = new XmlTableCollection();
     $row = new XmlTableRowCollection();
     $col = new XmlTableColumnCollection();
     $form = new XmlFormCollection($this->_context, $this->url, $this->myWords->Value("GRIDVALUE"));
     $form->setJSValidate(true);
     $form->addXmlnukeObject(new XmlInputHidden("action", "addcustomvalue"));
     $form->addXmlnukeObject(new XmlInputHidden("curpage", $this->_context->get("curpage")));
     $form->addXmlnukeObject(new XmlInputHidden("valueid", $uid));
     $textbox = new XmlInputTextBox($this->myWords->Value("FORMFIELD"), "customfield", "", 20);
     $textbox->setInputTextBoxType(InputTextBoxType::TEXT);
     $textbox->setDataType(INPUTTYPE::TEXT);
     $textbox->setRequired(true);
     $form->addXmlnukeObject($textbox);
     $textbox = new XmlInputTextBox($this->myWords->Value("FORMVALUE"), "customvalue", "", 40);
     $textbox->setInputTextBoxType(InputTextBoxType::TEXT);
     $textbox->setDataType(INPUTTYPE::TEXT);
     $textbox->setRequired(true);
     $form->addXmlnukeObject($textbox);
     $boxButton = new XmlInputButtons();
     $boxButton->addSubmit($this->myWords->Value("TXT_ADD"), "");
     $form->addXmlnukeObject($boxButton);
     $col->addXmlnukeObject($form);
     $row->addXmlnukeObject($col);
     $table->addXmlnukeObject($row);
     $paragraph = new XmlParagraphCollection();
     $paragraph->addXmlnukeObject($table);
     $block2->addXmlnukeObject($paragraph);
     $tabview->addTabItem($this->myWords->Value("TABCUSTOMVALUE"), $block2, $this->_action == "addcustomvalue" || $this->_action == "removecustomvalue");
     $this->defaultXmlnukeDocument->addXmlnukeObject($block);
 }
示例#6
0
文件: Search.php 项目: byjg/xmlnuke
 /**
  * Enter description here...
  *
  * @param XmlnukeDocument $xmlnukeDoc
  */
 protected function Find()
 {
     $myWords = $this->WordCollection();
     $xmlnukeDB = $this->_context->getXMLDataBase();
     $arr = $xmlnukeDB->searchDocuments($this->txtSearch, $this->_context->get("checkAll") != "");
     $blockCenter = new XmlBlockCollection($myWords->Value("BLOCKRESULT"), BlockPosition::Center);
     $this->_document->addXmlnukeObject($blockCenter);
     if ($arr == null) {
         $paragraph = new XmlParagraphCollection();
         $paragraph->addXmlnukeObject(new XmlnukeText($myWords->Value("NOTFOUND")));
         $blockCenter->addXmlnukeObject($paragraph);
     } else {
         $nodeTitleList = array("/meta/title");
         $nodeAbstractList = array("/meta/abstract");
         $configSearchFile = new AnydatasetFilenameProcessor("_configsearch");
         $configSearch = new AnyDataset($configSearchFile->FullQualifiedNameAndPath());
         $iterator = $configSearch->getIterator();
         while ($iterator->hasNext()) {
             $singleRow = $iterator->moveNext();
             $nodeTitleList[] = $sr->getField("nodetitle");
             $nodeAbstractList[] = $sr->getField("nodeabstract");
         }
         foreach ($arr as $s) {
             $singleName = FilenameProcessor::StripLanguageInfo($s);
             try {
                 $file = new XMLFilenameProcessor($singleName);
                 $docResult = $this->_context->getXMLDataBase()->getDocument($file->FullQualifiedName(), null);
                 $nodeResult = $this->getNode($nodeTitleList, $docResult);
                 $titulo = $nodeResult == null ? $myWords->Value("NOTITLE") : $nodeResult->nodeValue;
                 $nodeResult = $this->getNode($nodeAbstractList, $docResult);
                 $abstr = $nodeResult == null ? "" : $nodeResult->nodeValue;
                 $paragraph = new XmlParagraphCollection();
                 $blockCenter->addXmlnukeObject($paragraph);
                 $href = new XmlAnchorCollection("engine:xmlnuke?xml={$singleName}", "");
                 $href->addXmlnukeObject(new XmlnukeText($titulo));
                 $paragraph->addXmlnukeObject($href);
                 $paragraph->addXmlnukeObject(new XmlnukeText(" ["));
                 $href = new XmlAnchorCollection("engine:xmlnuke?xml={$singleName}&xsl=rawxml", "");
                 $href->addXmlnukeObject(new XmlnukeText($myWords->Value("VIEWXML")));
                 $paragraph->addXmlnukeObject($href);
                 $paragraph->addXmlnukeObject(new XmlnukeText("]"));
                 $paragraph->addXmlnukeObject(new XmlnukeBreakLine());
                 $paragraph->addXmlnukeObject(new XmlnukeText($abstr));
             } catch (Exception $e) {
                 $paragraph = new XmlParagraphCollection();
                 $paragraph->addXmlnukeObject(new XmlnukeText($s . " (" . $myWords->Value("NOTITLE") . ")"));
                 $blockCenter->addXmlnukeObject($paragraph);
             }
         }
         $paragraph = new XmlParagraphCollection();
         $paragraph->addXmlnukeObject(new XmlnukeText($myWords->Value("DOCFOUND", sizeof($arr))));
         $blockCenter->addXmlnukeObject($paragraph);
     }
 }
示例#7
0
文件: SendPage.php 项目: byjg/xmlnuke
 /**
  * Go to the last page
  *
  */
 public function goBack($showMessage)
 {
     $blockcenter = new XmlBlockCollection($this->_myWords->Value("MSGERROR"), BlockPosition::Center);
     $this->_document->addXmlnukeObject($blockcenter);
     $paragraph = new XmlParagraphCollection();
     $blockcenter->addXmlnukeObject($paragraph);
     $paragraph->addXmlnukeObject(new XmlnukeText($showMessage, true));
     $anchor = new XmlAnchorCollection("javascript:history.go(-1)");
     $anchor->addXmlnukeObject(new XmlnukeText($this->_myWords->Value("TXT_BACK")));
     $paragraph->addXmlnukeObject($anchor);
 }
示例#8
0
 /**
  * Create the PageXml object from CreatePage() parameters
  *
  * @param string $title
  * @param array $ht
  * @return PageXml
  */
 private function CreatePageArgs($title, $ht)
 {
     $myWords = $this->WordCollection();
     $document = new XmlnukeDocument($myWords->ValueArgs("TITLE", array($this->_context->get("SERVER_NAME"))), $myWords->ValueArgs("ABSTRACT", array($this->_context->get("SERVER_NAME"))));
     $blockcenter = new XmlBlockCollection($myWords->Value("TITRESP"), BlockPosition::Center);
     $document->addXmlnukeObject($blockcenter);
     $paragraph = new XmlParagraphCollection();
     $blockcenter->addXmlnukeObject($paragraph);
     $paragraph->addXmlnukeObject(new XmlnukeText(" "));
     $paragraph->addXmlnukeObject(new XmlnukeText($title, true));
     $paragraph->addXmlnukeObject(new XmlnukeBreakLine());
     foreach ($ht as $key => $value) {
         $paragraph->addXmlnukeObject(new XmlnukeBreakLine());
         $paragraph->addXmlnukeObject(new XmlnukeText($key . ":", true));
         $paragraph->addXmlnukeObject(new XmlnukeText(" " . $value));
     }
     $anchor = new XmlAnchorCollection("javascript:history.go(-1)", "");
     $text = new XmlnukeText($myWords->Value("TXT_BACK"));
     $anchor->addXmlnukeObject($text);
     return $document->generatePage();
 }
示例#9
0
 /**
  *@desc Contains specific instructions to generate all XML informations-> This method is processed only one time-> Usually is the last method processed->
  *@param DOMNode $current \DOMNode where the XML will be created->
  *@return void
  */
 public function generateObject($current)
 {
     // Improve Security
     $wrongway = !$this->_edit && ($this->_currentAction == self::ACTION_EDIT || $this->_currentAction == self::ACTION_EDIT_CONFIRM);
     $wrongway = $wrongway || !$this->_new && ($this->_currentAction == self::ACTION_NEW || $this->_currentAction == self::ACTION_NEW_CONFIRM);
     $wrongway = $wrongway || !$this->_delete && ($this->_currentAction == self::ACTION_DELETE || $this->_currentAction == self::ACTION_DELETE_CONFIRM);
     if ($wrongway) {
         $message = $this->_lang->Value("MSG_DONT_HAVEGRANT");
         $p = new XmlParagraphCollection();
         $p->addXmlnukeObject(new XmlnukeText($message, true, true, false));
         $p->generateObject($current);
         return;
     }
     // Checkings!
     if ($this->_context->get(self::PARAM_CANCEL) != "") {
         $this->listAllRecords()->generateObject($current);
     } else {
         if (strpos($this->_currentAction, "_confirm") !== false) {
             try {
                 $validateResult = $this->updateRecord();
             } catch (Exception $ex) {
                 $nvc = array($ex->getMessage());
                 //XmlParagraphCollection $p
                 $p = new XmlParagraphCollection();
                 $p->addXmlnukeObject(new XmlEasyList(EasyListType::UNORDEREDLIST, "Error", $this->_lang->Value("ERR_FOUND"), $nvc, ""));
                 //XmlAnchorCollection $a
                 $a = new XmlAnchorCollection("javascript:history.go(-1)", "");
                 $a->addXmlnukeObject(new XmlnukeText($this->_lang->Value("TXT_GOBACK")));
                 $p->addXmlnukeObject($a);
                 $validateResult = $p;
             }
             if (is_null($validateResult)) {
                 $this->_context->redirectUrl($this->redirProcessPage(false));
             } else {
                 $validateResult->generateObject($current);
                 if ($this->_currentAction != XmlnukeCrudBase::ACTION_NEW_CONFIRM) {
                     $this->showCurrentRecord()->generateObject($current);
                 }
             }
         } else {
             if ($this->_currentAction == self::ACTION_MSG) {
                 $this->showResultMessage()->generateObject($current);
                 $this->listAllRecords()->generateObject($current);
             } else {
                 if ($this->_currentAction == self::ACTION_NEW || $this->_currentAction == self::ACTION_VIEW || $this->_currentAction == self::ACTION_EDIT || $this->_currentAction == self::ACTION_DELETE) {
                     $this->showCurrentRecord()->generateObject($current);
                 } else {
                     $this->listAllRecords()->generateObject($current);
                 }
             }
         }
     }
 }
示例#10
0
 public function CreatePage()
 {
     parent::CreatePage();
     $this->myWords = $this->WordCollection();
     $this->setTitlePage($this->myWords->Value("TITLE"));
     $this->setHelp($this->myWords->Value("DESCRIPTION"));
     $block = new XmlBlockCollection($this->myWords->Value("BLOCK_TITLE"), BlockPosition::Center);
     $anydatafile = new AnydatasetFilenameProcessor("_db");
     if ($this->_action != "test") {
         $processfields = new CrudFieldCollection();
         $field = new CrudField();
         $field->fieldName = "dbname";
         $field->editable = true;
         $field->key = true;
         $field->visibleInList = true;
         $field->dataType = INPUTTYPE::TEXT;
         $field->fieldXmlInput = XmlInputObjectType::TEXTBOX;
         $field->fieldCaption = $this->myWords->Value("DBNAME");
         $field->size = 20;
         $field->maxLength = 20;
         $field->required = true;
         $field->newColumn = true;
         $processfields->addCrudField($field);
         $field = new CrudField();
         $field->fieldName = "dbtype";
         $field->editable = true;
         $field->key = false;
         $field->visibleInList = true;
         $field->dataType = INPUTTYPE::TEXT;
         $field->fieldXmlInput = XmlInputObjectType::SELECTLIST;
         $field->fieldCaption = $this->myWords->Value("DBTYPE");
         $field->size = 15;
         $field->maxLength = 15;
         $field->required = true;
         $field->arraySelectList = array("dsn" => "dsn (use it)", "literal" => "PDO Literal connection string", "dblib" => "FreeTDS / Microsoft SQL Server / Sybase", "firebird" => "Firebird/Interbase 6", "informix" => "IBM Informix Dynamic Server", "mysql" => "MySQL 3.x/4.x/5.x", "oci" => "Oracle Call Interface", "odbc" => "ODBC v3 (IBM DB2, unixODBC and win32 ODBC)", "pgsql" => "PostgreSQL", "sqlite" => "SQL Lite");
         $field->defaultValue = "dsn";
         $field->newColumn = true;
         $processfields->addCrudField($field);
         $field = new CrudField();
         $field->fieldName = "dbconnectionstring";
         $field->editable = true;
         $field->key = false;
         $field->visibleInList = true;
         $field->dataType = INPUTTYPE::TEXT;
         $field->fieldXmlInput = XmlInputObjectType::TEXTBOX;
         $field->fieldCaption = $this->myWords->Value("DBCONNECTIONSTRING");
         $field->size = 50;
         $field->maxLength = 200;
         $field->required = true;
         $field->defaultValue = "adodriver://*****:*****@server/datasource?persist";
         $field->newColumn = true;
         $processfields->addCrudField($field);
         $buttons = new CustomButtons();
         $buttons->action = "test";
         $buttons->alternateText = $this->myWords->Value("TESTALTERNATETEXT");
         $buttons->enabled = true;
         $buttons->icon = "common/editlist/ic_selecionar.gif";
         $buttons->message = $this->myWords->Value("TESTMESSAGETEXT");
         $buttons->multiple = MultipleSelectType::ONLYONE;
         $crud = new XmlnukeCrudAnydata($this->_context, $processfields, $this->myWords->Value("AVAILABLELANGUAGES"), "module:Xmlnuke.Admin.ManageDBConn", array($buttons), $anydatafile);
         $block->addXmlnukeObject($crud);
         $p = new XmlParagraphCollection();
         $p->addXmlnukeObject(new XmlnukeText($this->myWords->Value("NOTE"), true));
         $p->addXmlnukeObject(new XmlnukeText($this->myWords->Value("PHPNOTE")));
         $block->addXmlnukeObject($p);
     } else {
         $p = new XmlParagraphCollection();
         $db = $this->_context->get("valueid");
         if ($db == "") {
             $p->addXmlnukeObject(new XmlnukeText($this->myWords->Value("ERRORDBEMPTY")));
         } else {
             try {
                 $dbdataset = new DBDataset($db);
                 $dbdataset->TestConnection();
                 $p->addXmlnukeObject(new XmlnukeText($this->myWords->Value("SEEMSOK")));
             } catch (Exception $ex) {
                 $p->addXmlnukeObject(new XmlnukeText($this->myWords->Value("GOTERROR", $ex->getMessage())));
             }
         }
         $block->addXmlnukeObject($p);
         $p = new XmlParagraphCollection();
         $href = new XmlAnchorCollection("module:Xmlnuke.Admin.ManageDBConn");
         $href->addXmlnukeObject(new XmlnukeText($this->myWords->Value("GOBACK")));
         $p->addXmlnukeObject($href);
         $block->addXmlnukeObject($p);
     }
     $this->defaultXmlnukeDocument->addXmlnukeObject($block);
     return $this->defaultXmlnukeDocument->generatePage();
 }
示例#11
0
文件: Sample.php 项目: byjg/xmlnuke
 protected function Opcao18()
 {
     $block = new XmlBlockCollection("Exemplo 18: UI Alert", BlockPosition::Center);
     //XmlnukeBreakLine br = new XmlnukeBreakLine();
     $para = new XmlParagraphCollection();
     $para->addXmlnukeObject(new XmlnukeText("Esse exemplo mostra como mostrar uma mensagem de alert no cliente"));
     $block->addXmlnukeObject($para);
     if ($this->_context->get("type") != "") {
         switch ($this->_context->get("type")) {
             case 1:
                 $uialert = new XmlnukeUIAlert($this->_context, UIAlert::Dialog, "Isso é um teste");
                 break;
             case 2:
                 $uialert = new XmlnukeUIAlert($this->_context, UIAlert::ModalDialog, "Isso é um teste");
                 $uialert->setAutoHide(10000);
                 break;
             case 3:
                 $uialert = new XmlnukeUIAlert($this->_context, UIAlert::ModalDialog, "Isso é um teste");
                 $uialert->addRedirectButton("Ok", $this->_url);
                 $uialert->addCloseButton("Cancel");
                 break;
             case 4:
                 $uialert = new XmlnukeUIAlert($this->_context, UIAlert::ModalDialog, "Isso é um teste");
                 $uialert->addRedirectButton("Ok, proceed!", $this->_url);
                 $uialert->addCloseButton("Cancel");
                 $uialert->setOpenAction(UIAlertOpenAction::Button, "Clique me");
                 break;
             case 5:
                 $uialert = new XmlnukeUIAlert($this->_context, UIAlert::BoxInfo, "Isso é um teste");
                 $uialert->setAutoHide(2000);
                 break;
             case 6:
                 $uialert = new XmlnukeUIAlert($this->_context, UIAlert::BoxAlert, "Isso é um teste");
                 break;
         }
         $uialert->addXmlnukeObject(new XmlnukeText("Isso é um novo teste, novo teste"));
         $block->addXmlnukeObject($uialert);
     }
     $list = array();
     $list[$this->_url . "?op=18&type=1"] = "Caixa de Diálogo";
     $list[$this->_url . "?op=18&type=2"] = "Caixa de Diálogo Modal";
     $list[$this->_url . "?op=18&type=3"] = "Caixa de Diálogo Modal com botão de fechar";
     $list[$this->_url . "?op=18&type=4"] = "Caixa de Diálogo Modal com botões de confirmação e abrir personalizado";
     $list[$this->_url . "?op=18&type=5"] = "Box de Informação com auto hide";
     $list[$this->_url . "?op=18&type=6"] = "Box de Alerta";
     $listElement = new XmlListCollection(XmlListType::UnorderedList, "Opções");
     foreach ($list as $key => $value) {
         $href = new XmlAnchorCollection($key);
         $href->addXmlnukeObject(new XmlnukeText($value));
         $listElement->addXmlnukeObject($href);
     }
     $block->addXmlnukeObject($listElement);
     $this->_document->addXmlnukeObject($block);
 }