public function value() { $id = $this->module->orm->field("id"); $ormRel = ORM::make($this->linkTableName); $values = array(); $entries = $ormRel->where($this->linkFromKeyField, "=", $id)->leftJoin($this->relationTableName, array($this->relationTableName . "." . $this->relationKeyField, "=", $this->linkTableName . "." . $this->linkToKeyField))->orderByAsc($this->relationTableName . "." . $this->relationNameField)->find(); foreach ($entries as $entry) { $values[] = (int) $entry->field($this->linkToKeyField); } return $values; }
function __construct($connName = null) { if (!is_null(static::$tableName)) { $tableName = static::$tableName; } else { $tableName = Str::lower(preg_replace(array('/\\\\/', '/(?<=[a-z])([A-Z])/', '/__/'), array('_', '_$1', '_'), ltrim(get_class($this), '\\'))); } if (is_null($connName) && !is_null(static::$connName)) { $connName = static::$connName; } $this->orm = ORM::make($tableName, $connName); $this->orm->className = get_class($this); }
public static function routes() { static::loadModules(); foreach (static::$modulesObjects as $object) { $object->routes(); } //Load login routes.. login, logoff, etc.. Router::register("GET", "manager/api/config/", function () { header("Content-Type: text/javascript; charset=utf-8"); if (Request::isLocal()) { if (@DB::query("select id from " . J_TP . "manager_users LIMIT 1;")->success === false) { DB::query("CREATE TABLE `" . J_TP . "manager_users` (\n\t\t\t\t\t\t\t\t`id` int(11) unsigned NOT NULL AUTO_INCREMENT,\n\t\t\t\t\t\t\t\t`name` varchar(255) DEFAULT NULL,\n\t\t\t\t\t\t\t\t`email` varchar(255) DEFAULT NULL,\n\t\t\t\t\t\t\t\t`typeID` int(11) unsigned NULL,\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t`username` varchar(255) DEFAULT NULL,\n\t\t\t\t\t\t\t\t`password` varchar(40) DEFAULT NULL,\n\t\t\t\t\t\t\t\t`active` int(11) DEFAULT NULL,\n\t\t\t\t\t\t\t\tPRIMARY KEY (`id`)\n\t\t\t\t\t\t\t) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;"); $user = ORM::make("manager_users"); $user->name = "Joy Interactive"; $user->email = "*****@*****.**"; $user->username = "******"; $user->password = "******"; $user->typeID = 1; $user->active = 1; $user->save(); } if (@DB::query("select id from " . J_TP . "manager_tokens LIMIT 1;")->success === false) { DB::query("CREATE TABLE `" . J_TP . "manager_tokens` (\n\t\t\t\t\t\t\t\t`id` int(40) NOT NULL AUTO_INCREMENT,\n\t\t\t\t\t\t\t\t`userID` int(11) DEFAULT NULL,\n\t\t\t\t\t\t\t\t`typeID` int(11) DEFAULT NULL,\n\t\t\t\t\t\t\t\t`token` varchar(100) DEFAULT NULL,\n\t\t\t\t\t\t\t\t`expirationDate` datetime DEFAULT NULL,\n\t\t\t\t\t\t\t\tPRIMARY KEY (`id`)\n\t\t\t\t\t\t\t) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;"); } } $config = array(); $config["api_url"] = URL::to("api/"); return "window.config = " . json_encode($config); }); Router::register("GET", "manager/api/structure/", function () { return Response::json(Structure::modules()); }); Router::register("POST", "manager/api/token/", function () { return User::generateToken(); }); Router::register("POST", "manager/api/token/renew/", function () { return User::renewToken(); }); Router::register("GET", "manager/api/logout/", function () { return User::logout(); }); Router::register("GET", "manager/api/customJS/", function () { $path = J_MANAGERPATH . "custom.js"; if (file_exists($path)) { return File::get($path); } }); }
public function value() { if (!$this->multiple) { $value = $this->module->orm->field($this->name); return $this->format($value); } else { $id = $this->module->orm->field("id"); $ormRel = ORM::make($this->multipleTable); $values = array(); $entries = $ormRel->where($this->multipleFieldFrom, "=", $id)->find(); foreach ($entries as $entry) { $values[] = (int) $entry->field($this->multipleFieldTo); } return $values; } }
private static function token($emitError = true) { $token = Request::get("access_token", Request::post("access_token", Session::get("j_manager_token", ""))); $result = array(); if ($token != "") { $orm = ORM::make("manager_tokens")->select(array("expirationDate", "userID", "typeID"))->where("token", "=", $token)->findFirst(); if ($orm) { $time = $orm->expirationDate; $result["token"] = $token; $result["expirationDate"] = $time; $result["userID"] = $orm->userID; $result["typeID"] = $orm->typeID; if (time() < $time) { if ($emitError) { $result["error"] = static::error(403, "expired_token"); } else { $result["error"] = true; } } } } if (!isset($result["token"]) || empty($token)) { if ($emitError) { $result["error"] = static::error(403, "invalid_token"); } else { $result["error"] = true; } } return $result; }