public static function getInstance(modX &$modx, $className, $properties = array()) { // Здесь мы имеем возможность переопределить реальный класс процессора if (!empty($properties['basket_action']) && !self::$actualClassName) { switch ($properties['basket_action']) { case 'products_add': case 'products/add': require dirname(dirname(__FILE__)) . '/orders/products/add.class.php'; self::$actualClassName = 'modBasketWebOrdersProductsAddProcessor'; break; case 'products_getdata': require dirname(dirname(__FILE__)) . '/orders/products/getdata.class.php'; self::$actualClassName = 'modBasketWebOrdersProductsGetdataProcessor'; break; // Это чисто для Ajax-а. Состояние корзины // Это чисто для Ajax-а. Состояние корзины case 'getdata': require dirname(dirname(__FILE__)) . '/ajax/orders/getdata.class.php'; self::$actualClassName = 'modBasketWebAjaxOrdersGetdataProcessor'; break; case 'products_remove': case 'products/remove': require dirname(dirname(__FILE__)) . '/orders/products/remove.class.php'; self::$actualClassName = 'modBasketWebOrdersProductsRemoveProcessor'; break; case 'recalculate': require dirname(dirname(__FILE__)) . '/orders/recalculate.class.php'; self::$actualClassName = 'modBasketWebOrdersRecalculateProcessor'; break; case 'empty_basket': require dirname(dirname(__FILE__)) . '/orders/empty.class.php'; self::$actualClassName = 'modBasketWebOrdersEmptyProcessor'; break; default: } /* Если переопределяете в дочернем процессоре, не забудьте скопировать и это */ /*if($actualClassName){ $className = $actualClassName; unset($properties['basket_action']); }*/ } if (self::$actualClassName) { $className = self::$actualClassName; } return parent::getInstance($modx, $className, $properties); }
public static function getInstance(modX &$modx, $className, $properties = array()) { $actualClass = ''; // Here we cah redefine processor class if (!empty($properties['pub_action'])) { switch ($properties['pub_action']) { case 'dictionary/getfield': require dirname(dirname(__FILE__)) . '/dictionaries/getfield.class.php'; $actualClass = 'modWebDictionariesGetfieldProcessor'; break; default: } } if ($actualClass) { $className = $actualClass; unset($properties['pub_action']); } return parent::getInstance($modx, $className, $properties); }
public static function getInstance(modX &$modx, $className, $properties = array()) { // Здесь мы имеем возможность переопределить реальный класс процессора if (!empty($properties['pub_action']) && !self::$actualClassName) { switch ($properties['pub_action']) { case 'currencies/update_courses': require_once dirname(dirname(__FILE__)) . '/currencies/update_courses.class.php'; self::$actualClassName = "modWebCurrenciesUpdatecoursesProcessor"; break; case 'login': require_once dirname(dirname(__FILE__)) . '/users/login.class.php'; self::$actualClassName = "modWebUsersLoginProcessor"; break; default: } } if (self::$actualClassName) { $className = self::$actualClassName; return $className::getInstance($modx, $className, $properties); } return parent::getInstance($modx, $className, $properties); }
public static function getInstance(modX &$modx, $className, $properties = array()) { $actualClass = ''; // Здесь мы имеем возможность переопределить реальный класс процессора if (!empty($properties['society_action'])) { switch ($properties['society_action']) { case 'comments/add': require dirname(dirname(__FILE__)) . '/threads/comments/create.class.php'; $actualClass = 'modSocietyWebThreadsCommentsCreateProcessor'; break; case 'comments/hide': case 'comments/edit': require dirname(dirname(__FILE__)) . '/threads/comments/update.class.php'; $actualClass = 'modSocietyWebThreadsCommentsUpdateProcessor'; break; case 'comments/remove': require dirname(dirname(__FILE__)) . '/threads/comments/remove.class.php'; $actualClass = 'modSocietyWebThreadsCommentsRemoveProcessor'; break; case 'bcomments/getdiffs': require dirname(dirname(__FILE__)) . '/threads/broadcastcomments/getdiffs.class.php'; $actualClass = 'modSocietyWebThreadsBroadcastcommentsGetdiffsProcessor'; break; case 'bcomments/getdiffnodes': require dirname(dirname(__FILE__)) . '/threads/broadcastcomments/getdiffnodes.class.php'; $actualClass = 'modSocietyWebThreadsBroadcastcommentsGetdiffnodesProcessor'; break; case 'bcomments/edit': require dirname(dirname(__FILE__)) . '/threads/broadcastcomments/update.class.php'; $actualClass = 'modSocietyWebThreadsBroadcastcommentsUpdateProcessor'; break; case 'bcomments/remove': require dirname(dirname(__FILE__)) . '/threads/broadcastcomments/remove.class.php'; $actualClass = 'modSocietyWebThreadsBroadcastcommentsRemoveProcessor'; break; case 'topics/update': require dirname(dirname(__FILE__)) . '/topics/update.class.php'; $actualClass = 'modSocietyWebTopicsUpdateProcessor'; break; /*case 'subscribe/update': require dirname(dirname(__FILE__)) . '/users/subscribes/update.class.php'; $actualClass = 'modSocietyWebUsersSubscribesUpdateProcessor'; break;*/ /*case 'subscribe/update': require dirname(dirname(__FILE__)) . '/users/subscribes/update.class.php'; $actualClass = 'modSocietyWebUsersSubscribesUpdateProcessor'; break;*/ case 'subscribe/create': require dirname(dirname(__FILE__)) . '/users/subscribes/create.class.php'; $actualClass = 'modSocietyWebUsersSubscribesCreateProcessor'; break; case 'subscribe/remove': require dirname(dirname(__FILE__)) . '/users/subscribes/remove.class.php'; $actualClass = 'modSocietyWebUsersSubscribesRemoveProcessor'; break; default: } } if ($actualClass) { $className = $actualClass; unset($properties['society_action']); } return parent::getInstance($modx, $className, $properties); }
public static function getInstance(modX &$modx, $className, $properties = array()) { // Здесь мы имеем возможность переопределить реальный класс процессора if (!empty($properties['pub_action']) && !self::$actualClassName) { switch ($properties['pub_action']) { case 'currencies/update_courses': require_once dirname(dirname(__FILE__)) . '/currencies/update_courses.class.php'; self::$actualClassName = "modWebCurrenciesUpdatecoursesProcessor"; break; case 'weather/update': require_once dirname(dirname(__FILE__)) . '/weather/update.class.php'; self::$actualClassName = "modWebWeatherUpdateProcessor"; break; case 'login': require_once dirname(dirname(__FILE__)) . '/users/login.class.php'; self::$actualClassName = "modWebUsersLoginProcessor"; break; case 'topics/preview/getcode': require dirname(dirname(__FILE__)) . '/society/topics/preview/getcode.class.php'; self::$actualClassName = 'modWebSocietyTopicsPreviewGetcodeProcessor'; break; case 'topic/save': require dirname(dirname(__FILE__)) . '/society/topics/create.class.php'; self::$actualClassName = 'modWebSocietyTopicsCreateProcessor'; break; case 'topics/comments/save': require dirname(dirname(__FILE__)) . '/society/topics/comments/create.class.php'; self::$actualClassName = 'modWebSocietyTopicsCommentsCreateProcessor'; break; case 'topics/votes/create': require dirname(dirname(__FILE__)) . '/society/topics/votes/create.class.php'; self::$actualClassName = 'modWebSocietyTopicsVotesCreateProcessor'; break; case 'topics/comments/votes/create': require dirname(dirname(__FILE__)) . '/society/topics/comments/votes/create.class.php'; self::$actualClassName = 'modWebSocietyTopicsCommentsVotesCreateProcessor'; break; case 'comments/remove': require_once MODX_CORE_PATH . 'components/modsociety/processors/society/web/threads/comments/remove.class.php'; self::$actualClassName = "modSocietyWebThreadsCommentsRemoveProcessor"; break; case 'comments/publish': require_once dirname(dirname(__FILE__)) . '/society/comments/status/publish.class.php'; self::$actualClassName = "modWebSocietyCommentsStatusPublishProcessor"; break; case 'comments/unpublish': require_once dirname(dirname(__FILE__)) . '/society/comments/status/unpublish.class.php'; self::$actualClassName = "modWebSocietyCommentsStatusUnpublishProcessor"; break; case 'email_messages/articles/create_mailing': require dirname(dirname(__FILE__)) . '/society/email_messages/articles/create_mailing.class.php'; self::$actualClassName = 'modWebSocietyEmailmessagesArticlesCreatemailingProcessor'; break; case 'email_messages/send': require dirname(dirname(__FILE__)) . '/society/email_messages/send.class.php'; self::$actualClassName = 'modWebSocietyEmailmessagesSendProcessor'; break; default: } } if (self::$actualClassName) { $className = self::$actualClassName; return $className::getInstance($modx, $className, $properties); } return parent::getInstance($modx, $className, $properties); }