当前位置: 首页>>代码示例>>PHP>>正文


PHP S::doToken方法代码示例

本文整理汇总了PHP中S::doToken方法的典型用法代码示例。如果您正苦于以下问题:PHP S::doToken方法的具体用法?PHP S::doToken怎么用?PHP S::doToken使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在S的用法示例。


在下文中一共展示了S::doToken方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getSiteURL

 /**
  * Will get the siteURL, concatenated or not with a pageSuffix, which can be NULL. The method will return the current URL, which
  * can be used to determine the current page the client is on. Either you can use this function from inside a child of the
  * current one or you can use the {@link URL::rewriteURL} method to retrieve such information.
  *
  * @return S Will return the current website URL string
  * @author Elena Ramona <no_reply@raphpframework.ro>
  * @copyright Under the terms of the GNU General Public License v3
  * @version $Id: 09_URL.php 313 2009-10-09 13:27:52Z catalin.zamfir $
  * @since Version 1.0
  * @access protected
  * @static
  * @final
  */
 protected static final function getSiteURL(S $websiteURL = NULL, S $pageSuffix = NULL)
 {
     // Make a switch ...
     switch ($pageSuffix != NULL) {
         case TRUE:
             $objURL = new S(DOCUMENT_HOST . $pageSuffix . _WS . $websiteURL);
             break;
         case FALSE:
             $pageSuffix = new S(str_replace(DOCUMENT_ROOT, _NONE, $_SERVER['SCRIPT_FILENAME']));
             $objURL = new S(DOCUMENT_HOST . $pageSuffix . _WS . $websiteURL);
             break;
     }
     // Do return ...
     return REWRITE_ENGINE == TRUE && strpos($_SERVER['REQUEST_URI'], _WS . ADMIN_DIR . _WS) === FALSE ? $objURL->doToken($pageSuffix . _WS, _NONE) : $objURL;
 }
开发者ID:ajbm6,项目名称:raphpframework,代码行数:29,代码来源:09_URL.php

示例2: renderForm

 /**
  * Will render a specified form, the name of the form given by the first parameter;
  *
  * This method will render one of the forms for our object, invoked by giving the proper form identifier to the current form. We
  * have chosen this method of invoking forms, because we just had too many this->renderSomethingMethod (), which really had
  * an impact on code massiveness. Also, having code organized in switch/case statements leads us to be able to share common
  * settings between different forms, as we've done with the methods defined in the __CALL method above;
  *
  * For example, if we wanted to share some common configuration between a create and an edit form, we could have introduced
  * two switches in this method, one that would have set the common options, and the second, would have just passed through
  * again, and get the already set configuration options, using them. This means that if we needed to change behavior of
  * some interconnected forms, that would mean modifying the needed code one place only, which is a big advantage over
  * having separated methods for each form. Maybe if we extended this object, you guys could understand the functionality better;
  *
  * @param string $objFormToRender The name of the form to render;
  * @return mixed Depends on the rendered form if it returns something or not;
  */
 public function renderForm(S $objFormToRender, A $objFormArray = NULL)
 {
     // Make them defaults ...
     if ($objFormArray == NULL) {
         $objFormArray = new A();
     }
     // Do a switch ...
     switch ($objFormToRender) {
         case 'countryCreate':
             // The URL to go back too;
             $objURLToGoBack = URL::rewriteURL();
             // Do the form, make it happen;
             $this->setMethod(new S('POST'))->setFieldset(new S(SETTINGS_ADD_COUNTRY))->setSQLAction(new S('update'))->setTableName(self::$objSettingsCountryTable);
             // Make the ISO ...
             if ($this->checkPOST()->toBoolean() == TRUE) {
                 $this->setUpdateId($this->getPOST(self::$objSettingsCountryTableFIso))->setExtraUpdateData(self::$objSettingsCountryTableFName, $this->getPOST(self::$objSettingsCountryTableFPrnt)->toUpper());
             }
             // Continue;
             $this->setUpdateField(self::$objSettingsCountryTableFIso)->setName($objFormToRender)->setRedirect($objURLToGoBack)->setInputType(new S('submit'))->setValue(new S(SETTINGS_ADD_COUNTRY))->setInputInfoMessage($this->getHELP($objFormToRender))->setContainerDiv(new B(TRUE))->setInputType(new S('text'))->setName(self::$objSettingsCountryTableFIso)->setLabel(new S(SETTINGS_COUNTRY_ISO))->setInputType(new S('text'))->setName(self::$objSettingsCountryTableFPrnt)->setLabel(new S(SETTINGS_COUNTRY_NAME))->setInputType(new S('text'))->setName(self::$objSettingsCountryTableFIsoT)->setJSRegExpReplace(new S('[^A-Z]'))->setLabel(new S(SETTINGS_COUNTRY_ISO3))->setInputType(new S('text'))->setName(self::$objSettingsCountryTableFCode)->setJSRegExpReplace(new S('[^0-9]'))->setLabel(new S(SETTINGS_COUNTRY_CODE))->setFormEndAndExecute(new B(TRUE));
             break;
         case 'countryEdit':
             // The URL to go back too;
             $objURLToGoBack = URL::rewriteURL(new A(array(ADMIN_ACTION, ADMIN_ACTION_ID)));
             // Do the form, make it happen;
             $this->setMethod(new S('POST'))->setFieldset(new S(SETTINGS_EDIT_COUNTRY))->setSQLAction(new S('update'))->setTableName(self::$objSettingsCountryTable)->setUpdateId($_GET[ADMIN_ACTION_ID]);
             // Set the printable country name;
             if ($this->checkPOST()->toBoolean() == TRUE) {
                 $objCountryName = clone $this->getPOST(self::$objSettingsCountryTableFPrnt);
                 $this->setExtraUpdateData(self::$objSettingsCountryTableFName, $objCountryName->toUpper());
             }
             // Continue;
             $this->setUpdateField(self::$objSettingsCountryTableFIso)->setName($objFormToRender)->setRedirect($objURLToGoBack)->setInputType(new S('submit'))->setValue(new S(SETTINGS_EDIT_COUNTRY))->setInputInfoMessage($this->getHELP($objFormToRender))->setContainerDiv(new B(TRUE))->setInputType(new S('text'))->setName(self::$objSettingsCountryTableFPrnt)->setLabel(new S(SETTINGS_COUNTRY_NAME))->setInputType(new S('text'))->setName(self::$objSettingsCountryTableFIsoT)->setJSRegExpReplace(new S('[^A-Z]'))->setLabel(new S(SETTINGS_COUNTRY_ISO3))->setInputType(new S('text'))->setName(self::$objSettingsCountryTableFCode)->setJSRegExpReplace(new S('[^0-9]'))->setLabel(new S(SETTINGS_COUNTRY_CODE))->setFormEndAndExecute(new B(TRUE));
             break;
         case 'countryErase':
             // The URL to go back too;
             $objURLToGoBack = URL::rewriteURL(new A(array(ADMIN_ACTION, ADMIN_ACTION_ID)));
             // Set some requirements;
             $objSQLConditionForUsers = new S('WHERE %objAuthUsersTableFCountry = "%cId"');
             if (self::$objAuthenticationMech->getUserCount($objSQLConditionForUsers->doToken('%cId', $_GET[ADMIN_ACTION_ID]))->toInt() == 0) {
                 // Do ERASE;
                 $this->_Q(_QS('doDELETE')->doToken('%table', self::$objSettingsCountryTable)->doToken('%condition', new S('%objSettingsCountryTableFIso = "%sId"'))->doToken('%sId', $_GET[ADMIN_ACTION_ID]));
                 // Redirect;
                 $this->setHeaderKey($objURLToGoBack, new S('Location'));
             } else {
                 // Do me, ERROR;
                 self::$objAdministration->setErrorMessage(new S(SETTINGS_CANNOT_DELETE_COUNTRY), $objURLToGoBack);
             }
             break;
         case 'errorPageCreate':
             // The URL to go back too;
             $objURLToGoBack = URL::rewriteURL();
             // Check CODE is unique;
             if ($this->checkPOST(self::$objSettingsErrTableFCode)->toBoolean() == TRUE) {
                 if ($this->checkErrorPageCodeIsUnique($this->getPOST(self::$objSettingsErrTableFCode))->toBoolean() == FALSE) {
                     $this->setErrorOnInput(self::$objSettingsErrTableFCode, new S(SETTINGS_ERROR_CODE_MUST_BE_UNIQUE));
                 }
             }
             // Do the form, make it happen;
             $this->setMethod(new S('POST'))->setFieldset(new S(SETTINGS_ADD_ERROR_PAGE))->setSQLAction(new S('update'))->setTableName(self::$objSettingsErrTable)->setUpdateId(new S('#nextTableAutoIncrement'))->setUpdateField(self::$objSettingsErrTableFId)->setName($objFormToRender)->setRedirect($objURLToGoBack)->setInputType(new S('submit'))->setValue(new S(SETTINGS_ADD_ERROR_PAGE))->setInputInfoMessage($this->getHELP($objFormToRender))->setContainerDiv(new B(TRUE))->setInputType(new S('text'))->setName(self::$objSettingsErrTableFCode)->setLabel(new S(SETTINGS_ERROR_PAGE_CODE))->setJSRegExpReplace(new S('[^0-9]'))->setContainerDiv(new B(TRUE))->setInputType(new S('text'))->setName(self::$objSettingsErrTableFTitle)->setLabel(new S(SETTINGS_ERROR_PAGE_TITLE))->setContainerDiv(new B(TRUE))->setInputType(new S('textarea'))->setName(self::$objSettingsErrTableFContent)->setLabel(new S(SETTINGS_ERROR_PAGE_CONTENT))->setTinyMCETextarea(new B(TRUE))->setContainerDiv(new B(TRUE))->setFormEndAndExecute(new B(TRUE));
             break;
         case 'errorPageEdit':
             // The URL to go back too;
             $objURLToGoBack = URL::rewriteURL(new A(array(ADMIN_ACTION, ADMIN_ACTION_ID)));
             // Check CODE is unique;
             if ($this->checkPOST(self::$objSettingsErrTableFCode)->toBoolean() == TRUE) {
                 if ($this->getPOST(self::$objSettingsErrTableFCode) != $this->getErrorPageById($_GET[ADMIN_ACTION_ID], self::$objSettingsErrTableFCode)) {
                     if ($this->checkErrorPageCodeIsUnique($this->getPOST(self::$objSettingsErrTableFCode))->toBoolean() == FALSE) {
                         $this->setErrorOnInput(self::$objSettingsErrTableFCode, new S(SETTINGS_ERROR_CODE_MUST_BE_UNIQUE));
                     }
                 }
             }
             // Do the form, make it happen;
             $this->setMethod(new S('POST'))->setFieldset(new S(SETTINGS_EDIT_ERROR_PAGE))->setSQLAction(new S('update'))->setTableName(self::$objSettingsErrTable)->setUpdateId($_GET[ADMIN_ACTION_ID])->setUpdateField(self::$objSettingsErrTableFId)->setName($objFormToRender)->setRedirect($objURLToGoBack)->setInputType(new S('submit'))->setValue(new S(SETTINGS_EDIT_ERROR_PAGE))->setInputInfoMessage($this->getHELP($objFormToRender))->setContainerDiv(new B(TRUE))->setInputType(new S('text'))->setName(self::$objSettingsErrTableFCode)->setLabel(new S(SETTINGS_ERROR_PAGE_CODE))->setJSRegExpReplace(new S('[^0-9]'))->setContainerDiv(new B(TRUE))->setInputType(new S('text'))->setName(self::$objSettingsErrTableFTitle)->setLabel(new S(SETTINGS_ERROR_PAGE_TITLE))->setContainerDiv(new B(TRUE))->setInputType(new S('textarea'))->setName(self::$objSettingsErrTableFContent)->setLabel(new S(SETTINGS_ERROR_PAGE_CONTENT))->setTinyMCETextarea(new B(TRUE))->setContainerDiv(new B(TRUE))->setFormEndAndExecute(new B(TRUE));
             break;
         case 'errorPageErase':
             // The URL to go back too;
             $objURLToGoBack = URL::rewriteURL(new A(array(ADMIN_ACTION, ADMIN_ACTION_ID)));
             // Make the erase, than redirect;
             $this->_Q(_QS('doDELETE')->doToken('%table', self::$objSettingsErrTable)->doToken('%condition', new S('%objSettingsErrTableFId = "%sId"'))->doToken('%sId', $_GET[ADMIN_ACTION_ID]));
             // Redirect;
             $this->setHeaderKey($objURLToGoBack, new S('Location'));
             break;
         case 'configurationEdit':
//.........这里部分代码省略.........
开发者ID:ajbm6,项目名称:raphpframework,代码行数:101,代码来源:00_Settings.php

示例3: getFieldsFromTable

 /**
  * Will return an array containing field names of the given string table name. This method is used to find out what fields a table
  * has so we can use that information for example in the development of our auto-forms. Other uses can also be found easily when
  * knowing or not knowing the table structure;
  *
  * @param S $queryTable The table to query for fields
  * @return A An array containing the fields from the table
  * @author Catalin Z. Alexandru <catalin.zamfir@raphpframework.ro>
  * @copyright Under the terms of the GNU General Public License v3
  * @version $Id: 11_SQL.php 313 2009-10-09 13:27:52Z catalin.zamfir $
  * @since Version 1.0
  * @access protected
  * @static
  */
 protected static function getFieldsFromTable(S $queryTable)
 {
     $ex = new R(mysql_list_fields(self::$objSQLD, $queryTable->doToken(SQL_PREFIX, self::$objSQLR)));
     $tableFieldColumns = new I(mysql_num_fields($ex->toResource()));
     for ($i = 0, $tableFieldArray = new A(); $i < $tableFieldColumns->toInt(); ++$i) {
         $tableFieldArray[$i] = new S(mysql_field_name($ex->toResource(), $i));
     }
     // We already know what it is, return it;
     return $tableFieldArray;
 }
开发者ID:ajbm6,项目名称:raphpframework,代码行数:24,代码来源:11_SQL.php

示例4: renderBackendPage

 /**
  * Will render a specified form, the name of the form given by the first parameter;
  *
  * This method will render one of the forms for our object, invoked by giving the proper form identifier to the current form.
  * We have chosen this method of invoking forms, because we just had too many this->renderSomethingMethod (), which really had
  * an impact on code massiveness. Also, having code organized in switch/case statements leads us to be able to share common
  * settings between different forms, as we've done with the methods defined in the __CALL method above;
  *
  * For example, if we wanted to share some common configuration between a create and an edit form, we could have introduced
  * two switches in this method, one that would have set the common options, and the second, would have just passed through
  * again, and get the already set configuration options, using them. This means that if we needed to change behavior of
  * some interconnected forms, that would mean modifying the needed code one place only, which is a big advantage over
  * having separated methods for each form. Maybe if we extended this object, you guys could understand the functionality ...
  *
  * @param string $objFormToRender The name of the form to render;
  * @return mixed Depends on the rendered form if it returns something or not;
  */
 public function renderBackendPage(S $objPageToRender)
 {
     // Get a specific CSS file for this controller ...
     TPL::manageCSS(new FilePath($this->getPathToSkinCSS()->toRelativePath() . $objPageToRender . CSS_EXTENSION), $objPageToRender);
     // Do pagination ...
     if (isset($_GET[ADMIN_PAGINATION])) {
         $objLowerLimit = (int) $_GET[ADMIN_PAGINATION]->toString() * 10 - 10;
         $objUpperLimit = 10;
     } else {
         $objLowerLimit = 0;
         $objUpperLimit = 10;
     }
     // Do a switch on the rendered page ...
     switch ($objPageToRender) {
         case 'welcomePage':
             // Set the template file ...
             $tpF = new FilePath($this->getPathToSkin()->toRelativePath() . 'welcomePage.tp');
             TPL::tpSet(self::$objAdministration->getWidget(NULL), new S('objWidgets'), $tpF);
             TPL::tpExe($tpF);
             break;
         case 'manageUsers':
             // Do specific actions, based on _GET parameters;
             if (isset($_GET[ADMIN_ACTION])) {
                 // Switch ...
                 switch ($_GET[ADMIN_ACTION]) {
                     case ADMIN_ACTION_EDIT:
                         $this->renderForm(new S('userEdit'));
                         break;
                     case ADMIN_ACTION_ERASE:
                         $this->renderForm(new S('userErase'));
                         break;
                 }
             } else {
                 // Show them ordered by DESC;
                 if (!isset($_GET[ADMIN_ACTION_SORT])) {
                     $this->setHeaderKey(URL::rewriteURL(new A(array(ADMIN_ACTION_SORT)), new A(array('DescByRegistered'))), new S('Location'));
                 }
                 // Set some requirements;
                 $objGetCondition = new S();
                 if (isset($_GET[ADMIN_ACTION_BY])) {
                     // Do a switch ...
                     switch ($_GET[ADMIN_ACTION_BY]) {
                         case AUTHENTICATION_PROFILE_USERNAME:
                             $objGetCondition->appendString('WHERE %objAuthUsersTableFUName');
                             break;
                         case AUTHENTICATION_PROFILE_EMAIL:
                             $objGetCondition->appendString('WHERE %objAuthUsersTableFEML');
                             break;
                         case AUTHENTICATION_PROFILE_GROUP:
                             $objGetCondition->appendString('AS t1 LEFT JOIN %objAuthGroupTable
                             AS t2 ON t1.%objAuthUsersTableFUGId = t2.%objAuthGroupTableFId
                             WHERE t2.%objAuthGroupTableFName');
                             break;
                     }
                     // Add LIKE searching ...
                     $objGetCondition->appendString(_SP)->appendString('LIKE "%%Search%"')->doToken('%Search', $_GET[ADMIN_ACTION_SEARCH]);
                 }
                 if (isset($_GET[ADMIN_ACTION_SORT])) {
                     // Switch ...
                     switch ($_GET[ADMIN_ACTION_SORT]) {
                         case 'AscByUsername':
                         case 'DescByUsername':
                             // Set the order ...
                             $objGetCondition->appendString(_SP)->appendString('ORDER BY %objAuthUsersTableFUName');
                             // Switch ...
                             switch ($_GET[ADMIN_ACTION_SORT]) {
                                 case 'AscByUsername':
                                     $objGetCondition->appendString(_SP)->appendString('ASC');
                                     break;
                                 case 'DescByUsername':
                                     $objGetCondition->appendString(_SP)->appendString('DESC');
                                     break;
                             }
                             break;
                         case 'AscByEMail':
                         case 'DescByEMail':
                             // Set the order ...
                             $objGetCondition->appendString(_SP)->appendString('ORDER BY %objAuthUsersTableFEML');
                             // Switch ...
                             switch ($_GET[ADMIN_ACTION_SORT]) {
                                 case 'AscByEMail':
                                     $objGetCondition->appendString(_SP)->appendString('ASC');
                                     break;
//.........这里部分代码省略.........
开发者ID:ajbm6,项目名称:raphpframework,代码行数:101,代码来源:00_Authentication.php

示例5: S

 /**
  * Will execute necessary SQL operations on the current form ...
  *
  * This method, setSQLOperationsOnForm, you don't need to know the internal workings of it. This is because, as you can see
  * it is a private method, and thus, it's used internally by the class, to achieve it's goals of execution. Just pass on
  * and read any other 'public' or 'protected' method out there ...
  *
  * @param array $inputAttributes The core attributes (found in every HTML element) that can be set;
  * @param string $tp The path to the .tp file where to set those variables;
  */
 private static final function updateObjectPropertiesonSQLUpdateorInsert()
 {
     if (isset(self::$objFormDataContainer['update_or_insert']) && isset(self::$objFormDataContainer['table_name'])) {
         if (isset(self::$objFormDataContainer['update_where'])) {
             // Set it to what ever the developer wants it set to ...
             self::$objUpdateWhere = self::$objFormDataContainer['update_where'];
         } else {
             self::$objUpdateWhere = new S('%who = "%what"');
             self::$objUpdateWhere->doToken('%who', self::$objUpdateUpdateField);
             self::$objUpdateWhere->doToken('%what', self::$objUpdateUpdateId);
         }
         // Check to see which operation to execute ...
         if (self::$objFormDataContainer['update_or_insert'] == new S('update')) {
             // Do we have multiple or simple updates ...
             if (isset(self::$objFormDataContainer['table_join_on']) && isset(self::$objFormDataContainer['table_save_into'])) {
                 self::$objUpdateTableName = new S(self::$objFormDataContainer['table_name'] . _SP . self::$objFormDataContainer['table_join_on']);
                 $updateTable = self::$objFormDataContainer['table_save_into']->toValues();
                 $updateTableCount = count($updateTable);
                 $updateTable[$updateTableCount++] = self::$objFormDataContainer['table_name'];
                 for ($i = 0; $i < $updateTableCount; ++$i) {
                     self::$objUpdateTableFields = new A(array_merge(self::$objUpdateTableFields->toArray(), self::getFieldsFromTable(new S($updateTable[$i]))->toArray()));
                 }
             } else {
                 self::$objUpdateTableName = self::$objFormDataContainer['table_name'];
                 self::$objUpdateTableFields = self::getFieldsFromTable(self::$objUpdateTableName);
             }
         }
         if (!self::checkPOST()->toBoolean() == TRUE) {
             $q = new S('SELECT * FROM %table WHERE %condition LIMIT 1');
             $q->doToken('%table', self::$objUpdateTableName)->doToken('%condition', self::$objUpdateWhere);
             self::$objUpdateSELECTData = self::getQuery($q);
         }
     }
 }
开发者ID:ajbm6,项目名称:raphpframework,代码行数:44,代码来源:13_FRM.php


注:本文中的S::doToken方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。