⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 admindeletecustomfieldsaction.class.php

📁 一个用PHP编写的
💻 PHP
字号:
<?php	lt_include( PLOG_CLASS_PATH."class/dao/customfields/customfields.class.php" );	lt_include( PLOG_CLASS_PATH."class/dao/customfields/customfieldsvalues.class.php" );	lt_include( PLOG_CLASS_PATH."class/view/admin/admincustomfieldslistview.class.php" );	lt_include( PLOG_CLASS_PATH."class/data/validator/arrayvalidator.class.php" );	lt_include( PLOG_CLASS_PATH."class/action/admin/adminaction.class.php" );	lt_include( PLOG_CLASS_PATH."class/data/validator/integervalidator.class.php" );	    /**     * \ingroup Action     * @private     *	 * Removes a custom field, and all the values that have been given	 * to that field in all posts	 */	class AdminDeleteCustomFieldsAction extends AdminAction	{				var $_fieldIds;				function AdminDeleteCustomFieldsAction( $actionInfo, $request )        {        	$this->AdminAction( $actionInfo, $request );						// data validation, which may vary depending on the parameter			$this->_op = $actionInfo->getActionParamValue();			if( $this->_op == "deleteCustomField" )				$this->registerFieldValidator( "fieldId", new IntegerValidator());			else				$this->registerFieldValidator( "fieldIds", new ArrayValidator());			$view = new AdminCustomFieldsListView( $this->_blogInfo );			$view->setErrorMessage( $this->_locale->tr("error_incorrect_field_id"));			$this->setValidationErrorView( $view );									$this->requirePermission( "update_custom_field" );        }        		/**		 * prepares the data for AdminDeleteCustomFieldsAction::_deleteFields		 */		function perform()		{			if( $this->_op == "deleteCustomField" ) {				$this->_fieldId = $this->_request->getValue( "fieldId" );				$this->_fieldIds = Array();				$this->_fieldIds[] = $this->_fieldId;			}			else				$this->_fieldIds = $this->_request->getValue( "fieldIds" );							$this->_deleteFields();		}				/**		 * @private		 */		function _deleteFields()		{			// otherwise, go through all the selected fields and remove them one by one, 			// also removing the rows that contain the values			$customFields = new CustomFields();			$errorMessage = "";			$successMessage = "";			$totalOk = 0;						$this->_view = new AdminCustomFieldsListView( $this->_blogInfo );						foreach( $this->_fieldIds as $fieldId ) {				$field = $customFields->getCustomField( $fieldId );								if( $field ) {					// fire the pre-event					$this->notifyEvent( EVENT_PRE_CUSTOM_FIELD_DELETE, Array( "field" => &$field ));										$result = $customFields->removeCustomField( $fieldId );					if( $result ) {						$totalOk++;						if( $totalOk > 1 ) 							$successMessage = $this->_locale->pr( "fields_deleted_ok", $totalOk );						else							$successMessage = $this->_locale->pr( "field_deleted_ok", $field->getName());													// fire the post-event						$this->notifyEvent( EVENT_POST_CUSTOM_FIELD_DELETE, Array( "field" => &$field ));					}					else						$errorMessage .= $this->_locale->pr( "error_deleting_field", $field->getName())."<br/>";				}				else					$errorMessage .= $this->_locale->pr( "error_deleting_field2", $fieldId )."<br/>";			}						if( $errorMessage != "" ) $this->_view->setErrorMessage( $errorMessage );			if( $successMessage != "" ) $this->_view->setSuccessMessage( $successMessage );			$this->setCommonData();						return true;		}	}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -