array("default" => 0), "modified" => array("default" => 0), "user_created" => array("default" => ''), // user logged in on creation "user_modified" => array("default" => ''), "created_source" => array("default" => 'unknown'), // from editor / pack / collection ? "user_edited" => array("default" => false), // did a user ever edit this button? "in_collections" => array("default" => array() ), // map collections this button is in. "is_virtual" => array("default" => false), // this button is not really in the database ); /*function __construct() { parent::__construct(); } */ public function save_fields($data, $post) { $data = parent::save_fields($data,$post); $blockdata = $data[$this->blockname]; $button_id = isset($data["id"]) ? $data["id"] : 0; $user = wp_get_current_user(); if ($button_id == 0) { $blockdata["created"] = time(); $blockdata["user_created"] = $user->user_login; } $blockdata["modified"] = time(); $blockdata["user_modified"] = $user->user_login; $data[$this->blockname] = $blockdata; return $data; } public function admin_fields() { //return false; $data = (isset($this->data[$this->blockname]) && is_array($this->data[$this->blockname])) ? $this->data[$this->blockname] : array(); foreach($this->fields as $field => $options) { $default = (isset($options["default"])) ? $options["default"] : ''; $$field = (isset($data[$field])) ? $data[$field] : $default; ${$field . "_default"} = $default; } if(! isset($data["id"]) || $data["id"] == 0) $created_source = 'editor'; // button born at the editor ?>