public function events()
 {
     WaxEvent::add("cms.model.columns", function () {
         $obj = WaxEvent::data();
         $obj->scaffold_columns['preview'] = true;
     });
     parent::events();
 }
コード例 #2
0
 public function controller_global()
 {
     WaxEvent::add("cms.cms_stack_set", function () {
         $obj = WaxEvent::data();
         array_unshift($obj->cms_stack, $obj->controller);
     });
     parent::controller_global();
 }
コード例 #3
0
ファイル: setup.php プロジェクト: phpwax/wildfire.dealer
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]);
            }
        }
    });
});
コード例 #4
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'));
    }
});
コード例 #5
0
 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);
             });
         }
     });
 }