public static function load() { $modeler = static::$modeler; if (SessionAuthority::isCookieValid() && SessionModeler::exists(SessionModeler::model()->session_id, 'session_id')) { $modeler::exists(SessionStore::get('user_id'), 'id'); } }
public static function login($json = null) { $module = static::$module; $dialogs = $module::model()->components->dialogs; $dialog = forward_static_call_array(array($dialogs, __FUNCTION__), array()); if (!SessionStore::is($dialog->session_store_key)) { return; } $xhr_cards = $module::model()->xhr->cards; $operations_xhr = $module::model()->xhr->operations; $operations = $module::model()->operations; $modeler = $module::model()->modeler; if ($json != null) { $input = json_decode(rawurldecode($json)); if (isset($input->reset)) { SessionStore::set($dialog->session_store_key, $dialog->session_store_setup); return forward_static_call_array(array($xhr_cards, __FUNCTION__), array()); } } $dialog_store = SessionStore::get($dialog->session_store_key); $dialog_step = $dialog->steps[$dialog_store->step]; if (isset($dialog_step->prep) && $dialog_step->prep == true) { if (isset($dialog_step->required_members)) { foreach ($dialog_step->required_members as $m) { if (!isset($input->{$m})) { return; } } } switch ($dialog_store->step) { case 0: if (($modeler::exists(rawurldecode($input->login), 'email') || $modeler::exists(rawurldecode($input->login), 'name')) && \Sequode\Application\Modules\Account\Authority::isActive($modeler::model())) { $dialog_store->prep->user_id = $modeler::model()->id; SessionStore::set($dialog->session_store_key, $dialog_store); } else { $error = 1; } break; case 1: if ($modeler::exists($dialog_store->prep->user_id, 'id') && \Sequode\Application\Modules\Account\Authority::isPassword(rawurldecode($input->secret), $modeler::model())) { $_a = array($modeler::model()); } else { $error = 2; } break; } } if (isset($dialog_step->operation) && is_array($_a)) { if (!forward_static_call_array(array($operations, $dialog_step->operation), $_a)) { $error = 3; } } if (!isset($error)) { $dialog_store->step++; SessionStore::set($dialog->session_store_key, $dialog_store); $console_module = ModuleRegistry::model()['Console']; return intval($dialog_store->step) == 2 ? forward_static_call_array(array($console_module::model()->routes['http'], 'js'), array(false)) : forward_static_call_array(array($xhr_cards, __FUNCTION__), array()); } }
public static function search() { $module = static::$module; $finder = $module::model()->finder; $collection = $module::model()->context . '_' . __FUNCTION__; $nodes = array(); if (SessionStore::is($collection)) { $_array = $finder::search(SessionStore::get($collection)); foreach ($_array as $_object) { $nodes[] = '"' . $_object->id . '":{"id":"' . $_object->id . '","n":"' . $_object->name . '"}'; } } echo '{' . implode(',', $nodes) . '}'; return; }
public static function signup() { $module = static::$module; $dialogs = $module::model()->components->dialogs; $dialog = forward_static_call_array(array($dialogs, __FUNCTION__), array()); if (!SessionStore::is($dialog->session_store_key)) { SessionStore::set($dialog->session_store_key, $dialog->session_store_setup); } $dialog_store = SessionStore::get($dialog->session_store_key); $step = $dialog->steps[$dialog_store->step]; $_o = (object) null; $_o->icon_background = 'users-icon-background'; $_o->size = 'small'; if ($dialog_store->step != 0 && $dialog_store->step < count($dialog->steps) - 1) { $_o->menu = (object) null; $_o->menu->items = array(); $_o->menu->items[] = CardKit::onTapEventsXHRCallMenuItem('Start Over', 'operations/account/' . __FUNCTION__, array(FormComponent::jsQuotedValue('{"reset":"1"}'))); } $_o->head = ' Create Account'; $_o->body = array(''); if (isset($step->content)) { if (isset($step->content->head)) { $_o->body[] = '<div class="subline">' . $step->content->head . '</div>'; } if (isset($step->content->head)) { $_o->body[] = $step->content->body; } } if (isset($step->forms)) { foreach ($step->forms as $form) { $_o->body = array_merge($_o->body, ModuleForm::render($module::$registry_key, $form)); } } if ($dialog_store->step != 0 && $dialog_store->step < count($dialog->steps) - 1) { $_o->body[] = CardKit::resetDialogButton('operations/register/' . __FUNCTION__); } $_o->body[] = (object) array('js' => '$(\'.focus-input\').focus(); $(\'.focus-input\').select();'); return $_o; }
public static function updateEmail($json = null) { $module = static::$module; $dialogs = $module::model()->components->dialogs; $dialog = forward_static_call_array(array($dialogs, __FUNCTION__), array()); if (!SessionStore::is($dialog->session_store_key)) { return; } $xhr_cards = $module::model()->xhr->cards; $operations = $module::model()->operations; $modeler = $module::model()->modeler; if ($json != null) { $input = json_decode(rawurldecode($json)); if (isset($input->reset)) { SessionStore::set($dialog->session_store_key, $dialog->session_store_setup); return forward_static_call_array(array($xhr_cards, __FUNCTION__), array()); } } $dialog_store = SessionStore::get($dialog->session_store_key); $dialog_step = $dialog->steps[$dialog_store->step]; if (isset($dialog_step->prep) && $dialog_step->prep == true) { if (isset($dialog_step->required_members)) { foreach ($dialog_step->required_members as $m) { if (!isset($input->{$m})) { return; } } } switch ($dialog_store->step) { case 0: if (!$modeler::exists(rawurldecode($input->email), 'email') && \Sequode\Application\Modules\Account\Authority::isAnEmailAddress(rawurldecode($input->email))) { $dialog_store->prep->new_email = rawurldecode($input->email); $dialog_store->prep->token = Hashes::generateHash(); SessionStore::set($dialog->session_store_key, $dialog_store); $hooks = array("searchStrs" => array('#TOKEN#'), "subjectStrs" => array($dialog_store->prep->token)); Email::systemSend($dialog_store->prep->new_email, 'Verify your email address with sequode.com', EmailContent::render('activation.txt', $hooks)); } else { $error = true; } break; case 1: if ($dialog_store->prep->token == rawurldecode($input->token)) { $_a = array($dialog_store->prep->new_email); } else { $error = true; } break; } } if (isset($dialog_step->operation) && is_array($_a)) { if (!forward_static_call_array(array($operations, $dialog_step->operation), $_a)) { $error = true; } } if (!isset($error)) { $dialog_store->step++; SessionStore::set($dialog->session_store_key, $dialog_store); return forward_static_call_array(array($xhr_cards, __FUNCTION__), array()); } }
public static function search($json) { $_o = json_decode(stripslashes($json)); $_o = !is_object($_o) || (trim($_o->search) == '' || empty(trim($_o->search))) ? (object) null : $_o; $collection = 'sequode_search'; SessionStore::set($collection, $_o); $js = array(); if (SessionStore::get('palette') == $collection) { $js[] = DOMElementKitJS::fetchCollection('palette'); } $js[] = DOMElementKitJS::fetchCollection($collection); return implode('', $js); }
public static function palette() { $module = static::$module; $modeler = $module::model()->modeler; if (SessionStore::get('palette') == 'sequode_search') { self::search(); } elseif (SessionStore::get('palette') == 'sequode_favorites') { self::favorited(); } elseif (SessionStore::is('palette')) { $sequode_model = new $modeler::$model(); $sequode_model->exists(SessionStore::get('palette'), 'id'); $sequence = array_unique(json_decode($sequode_model->sequence)); $nodes = array(); foreach ($sequence as $id) { $sequode_model->exists($id, 'id'); $nodes[] = '"' . $sequode_model->id . '":{"id":"' . $sequode_model->id . '","n":"' . $sequode_model->name . '"}'; } echo '{' . implode(',', $nodes) . '}'; } else { echo '{}'; } }