public function events() { WaxEvent::add("cms.model.columns", function () { $obj = WaxEvent::data(); $obj->scaffold_columns['preview'] = true; }); parent::events(); }
public function controller_global() { WaxEvent::add("cms.cms_stack_set", function () { $obj = WaxEvent::data(); array_unshift($obj->cms_stack, $obj->controller); }); parent::controller_global(); }
WaxEvent::add(DEALER_MODEL . ".user_creation", function () { $dealer = WaxEvent::data(); $dealer->wu->dealer = $dealer; }); WaxEvent::add("cms.save.after", function () { $data = WaxEvent::data(); if ($data->model_class == DEALER_MODEL && ($model = $data->model) && $model->primval) { if ($model->create_site) { $model->dealer_creation(); } if ($model->create_user) { $model->user_creation(); } if ($model->columns['create_branch'] && $model->create_branch) { $model->branch_creation(); } } }); WaxEvent::add("wax.action", function () { WaxEvent::add("cms.layout.sublinks", function () { $obj = WaxEvent::data(); if ($obj->module_name == "home") { $obj->quick_links = array(); } elseif ($obj->current_user) { $can = $obj->current_user->restricted_tree($obj->model_class); if ($can) { $obj->quick_links = array("create new " . $obj->module_name => '/admin/' . $obj->module_name . "/create/?wildfire_content[parent_id]=" . $can[0]); } } }); });
<?php CMSApplication::register_module("advertising", array('plugin_name' => 'wildfire.advertising.advanced', 'assets_for_cms' => true, "display_name" => "Advertising", "link" => "/admin/advertising/", 'split' => true)); if (!defined("CONTENT_MODEL")) { $con = new ApplicationController(false, false); define("CONTENT_MODEL", $con->cms_content_class); } WaxEvent::add(CONTENT_MODEL . ".setup", function () { $model = WaxEvent::data(); if (!$model->columns['ads']) { $model->define("ads", "ManyToManyField", array('target_model' => 'WildfireAdvertAdvanced', "eager_loading" => true, "join_model_class" => "WaxModelWeightedJoin", "join_order" => "weight DESC", 'group' => 'advertising', 'module' => 'advertising', 'extra_fields_view' => '_advertising_extra_fields', 'existing_media_list' => '_existing_ad_list')); } });
protected function event_setup() { parent::event_setup(); //look for cms content by calling functions etc WaxEvent::clear("cms.content.lookup"); WaxEvent::add("cms.content.lookup", function () { $obj = WaxEvent::data(); $dealer_lookup = false; //check domain name $server = $_SERVER['HTTP_HOST']; if ($server != Config::get("domains/live") && $server != Config::get("domains/dev")) { $dclass = $obj->domain_class; $domain = new $dclass(); if (($found = $domain->filter("webaddress", $server)->filter("status", 1)->first()) && ($dealer = $found->dealers) && ($dealer = $dealer->first()) && ($page = $dealer->pages) && ($page = $page->scope("live")->first())) { $dealer_lookup = $page; $obj->setup_dealer_vars($page, $dealer); } } if (!$dealer_lookup) { $obj->content_lookup($obj); if (in_array("dealers", $obj->cms_stack) && count($obj->cms_stack) > 1) { $obj->dealer_checked = "/" . trim(implode("/", array_slice($obj->cms_stack, 0, 2)), "/") . "/"; $obj->dealer_check(); } } //lookin for dealer, so push the dealer urls on to the stack if ($dealer_lookup) { $obj->dealer_checked = $dealer_lookup->permalink; $original_stack = $obj->cms_stack; foreach (array_reverse(explode("/", trim($dealer_lookup->permalink, "/"))) as $push) { array_unshift($obj->cms_stack, $push); } $obj->content_lookup($obj); //this might be one of those magic internal pages then... if ($obj->cms_throw_missing_content) { $obj->cms_throw_missing_content = false; $obj->cms_stack = $original_stack; $obj->content_lookup($obj); $obj->canonical_url = "/" . trim(implode("/", $original_stack), "/") . "/"; } } //check for dealer urls /dealer/xx if ($obj->cms_throw_missing_content) { $stack = $obj->cms_stack; //if this is a dealer url, then pop off the first 2 if (array_shift($stack) == "dealers" && count($stack)) { $dealer = array_shift($stack); $obj->cms_stack = $stack; if (!$obj->dealer_checked) { $obj->dealer_checked = "/dealers/" . $dealer . "/"; } $obj->cms_throw_missing_content = false; $obj->canonical_url = "/" . trim(implode("/", $stack), "/") . "/"; WaxEvent::run("cms.content.lookup", $obj); } } if (($dealer_model = $obj->dealer_model) && defined("UVL")) { WaxEvent::add("uvl.vehicle.filters", function () use($dealer_model) { $model = WaxEvent::data(); $model->filter("dealer_id", $dealer_model->id); }); } }); }