Lines Matching full:action

4 require_once dirname(__FILE__) . '/action.php';
20 // this holds the renderer of the specific action
22 // this holds the handler of the specific action
37 // create an object and check if it responds to the correct action
38 private static function create($class, $action) { argument
40 return ($handler->action() != $action) ? NULL : $handler;
55 // can handle the action, and is not extended
56 private function unique($classes, $action) { argument
59 $new = $this->create($class, $action);
64 if ($new && $new->action() == $action) {
75 * perform the action
76 * the action name must be plugin_name.action_name.
79 * @param string $action the action to be peformed;
80 * @return bool whether the action has been performed (regardless of being successful).
82 public function act(&$action) { argument
83 // some times the action is an array
84 if (is_array($action))
85 list($action) = array_keys($action);
92 $components = explode('.', $action);
95 $action = implode('.', $components);
97 $this->load($path, $action);
99 $this->handler = $this->unique($this->handlers, $action);
100 $this->renderer = $this->unique($this->renderers, $action);
102 // check if the action is disabled
103 if (!actionOK($action)) {
104 msg('action disabled: ' . htmlspecialchars($action), -1);
105 $action = 'show';
106 return self::act($action);
109 // check if we can handle the action
115 $action = 'denied';
116 return $this->act($action);
119 // handle the action
121 // handle the next action
122 if ($new_action && $new_action !== $action) {
123 $action = $new_action;
124 return $this->act($action);
131 * Doku_Action public interface to render the result of an action
133 * @param type $action the action to display
136 public function render($action) { argument
138 if (is_array($action)) {
140 foreach ($action as $act => $x)