function process($params, $options) { $token = Url::tryQueryParam("gt"); if (empty($token)) { header("Location: / "); } $gpage = Url::tryQueryParam("gpage"); $gpage = empty($gpage) ? "1" : $gpage; $sphinx = new \com\indigloo\sc\search\SphinxQL(); $qparams = Url::getRequestQueryParams(); $pageSize = Config::getInstance()->get_value("search.page.items"); $paginator = new Pagination($qparams, $pageSize); $ids = $sphinx->getPagedPosts($token, $paginator); $template = NULL; $searchTitle = NULL; if (sizeof($ids) > 0) { $pageHeader = "{$token}"; $pageBaseUrl = "/search/site"; $template = APP_WEB_DIR . '/view/search.php'; $postDao = new \com\indigloo\sc\dao\Post(); $postDBRows = $postDao->getOnSearchIds($ids); } else { $pageHeader = "No results"; $template = APP_WEB_DIR . '/view/notiles.php'; } $groupIds = $sphinx->getGroups($token, 0, 25); $groupDao = new \com\indigloo\sc\dao\Group(); $groupDBRows = $groupDao->getOnSearchIds($groupIds); $sphinx->close(); $pageTitle = SeoData::getPageTitleWithNumber($gpage, $token); $metaKeywords = SeoData::getMetaKeywords($token); $metaDescription = SeoData::getMetaDescriptionWithNumber($gpage, $token); include $template; }
static function getWidget($row, $options = NULL) { $html = NULL; $view = new \stdClass(); $template = '/fragments/comment/text.tmpl'; if (is_null($options)) { $options = ~UIConstants::COMMENT_ALL; } $view->id = $row['id']; $view->title = $row['title']; $view->postId = $row['post_id']; $view->itemId = PseudoId::encode($view->postId); $view->comment = $row['description']; $view->createdOn = AppUtil::convertDBTime($row['created_on']); $view->showUser = false; if ($options & UIConstants::COMMENT_USER) { $view->loginId = $row['login_id']; $view->pubUserId = PseudoId::encode($view->loginId); $view->userName = $row['user_name']; $view->showUser = true; } $encodedId = PseudoId::encode($view->id); $params = array('id' => $encodedId, 'q' => base64_encode(Url::current())); $view->editUrl = Url::createUrl('/qa/comment/edit.php', $params); $view->deleteUrl = Url::createUrl('/qa/comment/delete.php', $params); $html = Template::render($template, $view); return $html; }
static function getHtml($map, $template, $classMap) { $currentUrl = Url::current(); $pos = strpos($currentUrl, '?'); //remove the part after ? from Url if ($pos !== false) { $currentUrl = substr($currentUrl, 0, $pos); } $bucket = array(); $activeName = NULL; foreach ($map as $url => $name) { //links to store if (!array_key_exists($name, $bucket)) { $record = array(); $record["name"] = $name; $record["url"] = $url; $record["class"] = $classMap["normal"]; $bucket[$name] = $record; } if (strcmp($url, $currentUrl) == 0) { //name to highlight $activeName = $name; } } if (!is_null($activeName)) { $bucket[$activeName]["class"] = $classMap["active"]; } $view = new \stdClass(); $view->records = array_values($bucket); $html = Template::render($template, $view); return $html; }
function process($params, $options) { $seoKey = Util::getArrayKey($params, "category_id"); $collectionDao = new \com\indigloo\sc\dao\Collection(); $zmember = $collectionDao->uizmemberOnSeoKey(Nest::ui_category(), $seoKey); if (is_null($zmember) || !isset($zmember["ui_code"])) { $controller = new \com\indigloo\sc\controller\Http404(); $controller->process(); exit; } $code = $zmember["ui_code"]; $catName = $zmember["name"]; $postDao = new \com\indigloo\sc\dao\Post(); $qparams = Url::getRequestQueryParams(); $gpage = Url::tryQueryParam("gpage"); $gpage = empty($gpage) ? "1" : $gpage; $pageSize = Config::getInstance()->get_value("search.page.items"); $paginator = new Pagination($qparams, $pageSize); $postDBRows = $postDao->getPagedOnCategory($paginator, $code); $pageHeader = $catName; $pageBaseUrl = "/category/{$seoKey}"; $pageTitle = SeoData::getPageTitleWithNumber($gpage, $catName); $metaKeywords = SeoData::getMetaKeywords($catName); $metaDescription = SeoData::getMetaDescriptionWithNumber($gpage, $catName); $file = APP_WEB_DIR . '/view/tiles-page.php'; include $file; }
function process($feedObj, $templates = array()) { $html = ''; $keys = array("subject", "subjectId", "object", "objectId"); $flag = $this->checkKeys($feedObj, $keys); $view = array(); if (empty($templates)) { $templates = array(AppConstants::FOLLOW_VERB => "/fragments/feed/vanilla.tmpl"); } if ($flag) { $view['subject'] = $feedObj->subject; $view['object'] = $feedObj->object; $pubId = PseudoId::encode($feedObj->subjectId); $view['subjectUrl'] = sprintf("%s/pub/user/%s", Url::base(), $pubId); $pubId = PseudoId::encode($feedObj->objectId); $view['objectUrl'] = sprintf("%s/pub/user/%s", Url::base(), $pubId); $view['verb'] = $this->getVerb($feedObj->verb); if (isset($templates[$feedObj->verb])) { $template = $templates[$feedObj->verb]; } else { trigger_error("invalid feed template", E_USER_ERROR); } $html = Template::render($template, $view); } return $html; }
function process($params, $options) { $qparams = Url::getRequestQueryParams(); $gpage = Url::tryQueryParam("gpage"); $gpage = empty($gpage) ? "1" : $gpage; $redis = new redis\Activity(); $pageSize = Config::getInstance()->get_value("main.page.items"); $paginator = new \com\indigloo\ui\Pagination($qparams, $pageSize); $zsetKey = Nest::score("post", "likes"); $members = $redis->getPagedZSet($zsetKey, $paginator); //first one is id, second one is score $count = 0; $scores = array(); $ids = array(); for ($i = 1; $i < sizeof($members); $i++) { if ($i % 2 == 0) { array_push($scores, $members[$i - 1]); } else { $itemId = $members[$i - 1]; $postId = PseudoId::decode($itemId); array_push($ids, $postId); } } //get post rows using ids $postDao = new \com\indigloo\sc\dao\Post(); $postDBRows = $postDao->getOnSearchIds($ids); $pageHeader = 'Most popular'; $pageBaseUrl = '/pub/popular'; $pageTitle = SeoData::getPageTitleWithNumber($gpage, "popular items"); $metaKeywords = SeoData::getHomeMetaKeywords(); $metaDescription = SeoData::getMetaDescriptionWithNumber($gpage, "popular items"); $file = APP_WEB_DIR . '/view/tiles-page.php'; include $file; }
function create($firstName, $lastName, $email, $password) { $provider = \com\indigloo\sc\auth\Login::MIK; if (Util::tryEmpty($firstName) || Util::tryEmpty($lastName)) { throw new UIException(array("User name is missing!")); } $userName = $firstName . ' ' . $lastName; $remoteIp = \com\indigloo\Url::getRemoteIp(); mysql\Login::create($provider, $userName, $firstName, $lastName, $email, $password, $remoteIp); }
function process($feedObj, $templates = array()) { $html = ''; $keys = array("subject", "subjectId", "title", "objectId"); $flag = $this->checkKeys($feedObj, $keys); $view = array(); if (empty($templates)) { $templates = array(AppConstants::LIKE_VERB => "/fragments/feed/image/post.tmpl", AppConstants::COMMENT_VERB => "/fragments/feed/image/comment.tmpl", AppConstants::POST_VERB => "/fragments/feed/image/post.tmpl", AppConstants::FOLLOW_VERB => NULL); } if ($flag) { // extra processing for comments // @imp: activity row for comment stores // post_id as object_id and not item_id if (strcmp($feedObj->verb, AppConstants::COMMENT_VERB) == 0) { if (property_exists($feedObj, 'content')) { $view['content'] = $feedObj->content; } $feedObj->objectId = PseudoId::encode($feedObj->objectId); } $view['subject'] = $feedObj->subject; $view['object'] = $feedObj->title; $pubId = PseudoId::encode($feedObj->subjectId); $view['subjectUrl'] = sprintf("%s/pub/user/%s", Url::base(), $pubId); $view['objectUrl'] = sprintf("%s/item/%s", Url::base(), $feedObj->objectId); $view['hasImage'] = false; //image for feed if (property_exists($feedObj, 'srcImage')) { if (!empty($feedObj->srcImage)) { $srcImage = $feedObj->srcImage; $m_bucket = \parse_url($srcImage, \PHP_URL_HOST); // aws s3 bucket mapping for cloud front // host is a CNAME mapped to amazon s3 bucket // format is store.bucket.mapto=<mapped-bucket> $mapKey = sprintf("s3.%s.mapto", $m_bucket); $bucket = Config::getInstance()->get_value($mapKey, $m_bucket); $view['srcImage'] = str_replace($m_bucket, $bucket, $srcImage); $view['nameImage'] = $feedObj->nameImage; $view['hasImage'] = true; } } $view['verb'] = $this->getVerb($feedObj->verb); if (isset($templates[$feedObj->verb])) { $template = $templates[$feedObj->verb]; } else { trigger_error("invalid feed template", E_USER_ERROR); } $html = Template::render($template, $view); } return $html; }
static function get($row) { $html = NULL; $view = new \stdClass(); $template = '/fragments/monitor/feedback.tmpl'; $view->id = $row['id']; $params = array("id" => $row['id'], "q" => base64_encode(Url::current())); $view->deleteUrl = Url::createUrl("/monitor/feedback/delete.php", $params); $view->description = $row['feedback']; $view->name = $row['name']; $view->phone = $row['phone']; $view->email = $row['email']; $html = Template::render($template, $view); return $html; }
function process($params, $options) { if (is_null($params) || empty($params)) { $controller = new \com\indigloo\sc\controller\Http400(); $controller->process(); exit; } $plistId = Util::getArrayKey($params, "list_id"); $listId = PseudoId::decode($plistId); $qparams = Url::getRequestQueryParams(); $gpage = Url::tryQueryParam("gpage"); $gpage = empty($gpage) ? "1" : $gpage; //@todo input check // people can type all sort of input garbage settype($listId, "int"); $listDao = new \com\indigloo\sc\dao\Lists(); $listDBRow = $listDao->getOnId($listId); if (empty($listDBRow)) { //not found $controller = new \com\indigloo\sc\controller\Http404(); $controller->process(); exit; } $listName = $listDBRow["name"]; $listPubUrl = sprintf("%s/pub/list/%d/%s", Url::base(), $plistId, $listDBRow["seo_name"]); //get items from sc_list_item table $model = new \com\indigloo\sc\model\ListItem(); $filter = new Filter($model); $filter->add($model::LIST_ID, Filter::EQ, $listId); $pageSize = Config::getInstance()->get_value("user.page.items"); $filters = array(); array_push($filters, $filter); $paginator = new \com\indigloo\ui\Pagination($qparams, $pageSize); $itemDBRows = $listDao->getPagedItems($paginator, $filters); $loginId = $listDBRow["login_id"]; $userDao = new \com\indigloo\sc\dao\User(); $userDBRow = $userDao->getOnLoginId($loginId); $template = APP_WEB_DIR . '/view/list/pub.php'; //page variables $pageBaseUrl = $listPubUrl; $pageTitle = sprintf("page %d of %s", $gpage, $listDBRow["name"]); $description = Util::abbreviate($listDBRow["description"], 160); $metaDescription = SeoData::thisOrHomeDescription($description); $metaKeywords = SeoData::getHomeMetaKeywords(); include $template; }
function process($params, $options) { $postDao = new \com\indigloo\sc\dao\Post(); $qparams = Url::getRequestQueryParams(); $gpage = Url::tryQueryParam("gpage"); $gpage = empty($gpage) ? "1" : $gpage; $pageSize = Config::getInstance()->get_value("main.page.items"); $paginator = new \com\indigloo\ui\Pagination($qparams, $pageSize); $postDBRows = $postDao->getPaged($paginator); $pageHeader = ''; $pageBaseUrl = $options["path"]; $pageTitle = SeoData::getPageTitleWithNumber($gpage, "recent items"); $metaKeywords = SeoData::getHomeMetaKeywords(); $metaDescription = SeoData::getMetaDescriptionWithNumber($gpage, "recent items"); $file = APP_WEB_DIR . '/view/tiles-page.php'; include $file; }
function getOrCreate($twitterId, $name, $screenName, $location, $image) { $loginId = NULL; //is existing record? $twitterId = trim($twitterId); $remoteIp = \com\indigloo\Url::getRemoteIp(); $row = $this->getOnTwitterId($twitterId); if (empty($row)) { $message = sprintf("Login::Twitter::create id %s ,name %s, screenname %s ", $twitterId, $name, $screenName); Logger::getInstance()->info($message); $provider = \com\indigloo\sc\auth\Login::TWITTER; $loginId = mysql\Twitter::create($twitterId, $name, $screenName, $location, $image, $provider, $remoteIp); } else { //found $loginId = $row['login_id']; } return $loginId; }
function getOrCreate($googleId, $email, $name, $firstName, $lastName, $photo) { $loginId = NULL; //is existing record? $googleId = trim($googleId); $remoteIp = \com\indigloo\Url::getRemoteIp(); $row = $this->getOnId($googleId); if (empty($row)) { $message = sprintf("Login::Google::create id %s, email %s ", $googleId, $email); Logger::getInstance()->info($message); $provider = \com\indigloo\sc\auth\Login::GOOGLE; $loginId = mysql\Google::create($googleId, $email, $name, $firstName, $lastName, $photo, $provider, $remoteIp); } else { //found $loginId = $row['login_id']; } return $loginId; }
function process($feedObj) { $html = ''; $keys = array("subject", "subjectId", "object", "objectId"); $flag = $this->checkKeys($feedObj, $keys); $view = array(); if ($flag) { $view['subject'] = $feedObj->subject; $view['object'] = "this item"; $pubId = PseudoId::encode($feedObj->subjectId); $view['subjectUrl'] = sprintf("%s/pub/user/%s", Url::base(), $pubId); $view['objectUrl'] = sprintf("%s/item/%s", Url::base(), $feedObj->objectId); $view['verb'] = $this->getVerb($feedObj->verb); $template = '/fragments/feed/vanilla.tmpl'; $html = Template::render($template, $view); } return $html; }
static function createView($loginId, $row) { $view = new \stdClass(); $userId = $row["login_id"]; $pubUserId = PseudoId::encode($userId); $pubUserUrl = Url::base() . "/pub/user/" . $pubUserId; $view->pubUserUrl = $pubUserUrl; $view->name = $row["name"]; $view->srcImage = $row["photo_url"]; // This is for follow action on my follower's page. // for follow action :- I will start following // so followerId - is me // for unfollow action :- I was following the user // so again, followerId is - me $view->followingId = $userId; $view->followerId = $loginId; return $view; }
static function getPubHeader($listDBRow, $userDBRow) { $view = self::createListView($listDBRow); $view->userName = $userDBRow["name"]; $view->photoUrl = $userDBRow["photo_url"]; if (empty($view->photoUrl)) { // @hardcoded $view->photoUrl = UIConstants::PH2_PIC; } $encodedId = PseudoId::encode($listDBRow["login_id"]); $view->userPubUrl = Url::base() . "/pub/user/" . $encodedId; $view->createdOn = AppUtil::convertDBTime($listDBRow['created_on']); $view->description = $listDBRow["description"]; $view->count = $listDBRow["item_count"]; $template = NULL; $template = "/fragments/lists/pub/header.tmpl"; $html = Template::render($template, $view); return $html; }
function getOrCreate($facebookId, $name, $firstName, $lastName, $link, $gender, $email, $access_token, $expires) { $loginId = NULL; //is existing record? $facebookId = trim($facebookId); $remoteIp = \com\indigloo\Url::getRemoteIp(); $row = $this->getOnFacebookId($facebookId); if (empty($row)) { $message = sprintf("Login::Facebook::create id %s, email %s ", $facebookId, $email); Logger::getInstance()->info($message); //create login + facebook user $provider = \com\indigloo\sc\auth\Login::FACEBOOK; $loginId = mysql\Facebook::create($facebookId, $name, $firstName, $lastName, $link, $gender, $email, $provider, $access_token, $expires, $remoteIp); } else { //found $loginId = $row["login_id"]; } return $loginId; }
function spewRecent($params, $options) { $qparams = Url::getRequestQueryParams(); $filters = array(); $groupDao = new \com\indigloo\sc\dao\Group(); $pageSize = 100; $paginator = new Pagination($qparams, $pageSize); $groups = $groupDao->getPaged($paginator, $filters); $startId = NULL; $endId = NULL; if (sizeof($groups) > 0) { $startId = $groups[0]["id"]; $endId = $groups[sizeof($groups) - 1]["id"]; } $pageBaseUrl = $options["path"]; $title = "Recent groups"; $file = APP_WEB_DIR . "/view/group/cards-page.php"; include $file; }
static function getNoResult($message, $options = NULL) { $defaults = array("hkey" => NULL, "form" => "vanilla"); $settings = Util::getSettings($options, $defaults); //get qparams from Url $qparams = \com\indigloo\Url::getRequestQueryParams(); $gpage = -1; //hkey supplied - means show help on page #1. if (!empty($qparams) && isset($qparams["gpage"])) { $gpage = $qparams["gpage"]; $gpage = intval($gpage); } else { $gpage = 1; } $html = NULL; $help_key = $settings["hkey"]; if ($gpage <= 1 && !is_null($help_key)) { try { $html = self::getHelp($help_key); return $html; } catch (\Exception $ex) { $html = NULL; $errorMsg = $ex->getMessage(); Logger::getInstance()->error($errorMsg); Logger::getInstance()->error($ex->getMessage()); } } $view = new \stdClass(); $template = NULL; $form = $settings["form"]; switch ($form) { case "tile": $template = "/fragments/site/noresult/tile.tmpl"; break; default: $template = "/fragments/site/noresult/vanilla.tmpl"; break; } $view->message = $message; $html = Template::render($template, $view); return $html; }
static function render($options, $default) { $tab = Url::tryQueryParam("tab", $default); if (Util::tryEmpty($tab)) { $tab = $default; } if (!array_key_exists($tab, $options)) { $tab = $default; } $buffer = ''; $item = '<li class="%s"> <a href="%s">%s</a></li>'; foreach ($options as $key => $value) { $pageURI = Url::addQueryParameters($_SERVER['REQUEST_URI'], array("tab" => $key)); $class = $tab == $key ? 'active' : ''; $strItem = sprintf($item, $class, $pageURI, $value); $buffer .= $strItem; } $buffer = '<ul class="nav nav-tabs">' . $buffer . '</ul>'; $data = array("buffer" => $buffer, "active" => $tab); return $data; }
function process($params, $options) { if (is_null($params) || empty($params)) { $controller = new \com\indigloo\sc\controller\Http400(); $controller->process(); exit; } // our router discards the query part from a URL so the // routing works with the query part as well (like /router/url?q1=x&q2=y $token = Util::getArrayKey($params, "location"); if (is_null($token)) { header("Location: / "); } //search sphinx index $sphinx = new \com\indigloo\sc\search\SphinxQL(); $qparams = Url::getRequestQueryParams(); $gpage = Url::tryQueryParam("gpage"); $gpage = empty($gpage) ? "1" : $gpage; $pageSize = Config::getInstance()->get_value("search.page.items"); $paginator = new Pagination($qparams, $pageSize); $ids = $sphinx->getPagedPosts($token, $paginator); $sphinx->close(); $template = NULL; $searchTitle = NULL; if (sizeof($ids) > 0) { $pageHeader = "{$token}"; $pageBaseUrl = "/search/location/{$token}"; $template = APP_WEB_DIR . '/view/tiles-page.php'; $postDao = new \com\indigloo\sc\dao\Post(); $postDBRows = $postDao->getOnSearchIds($ids); } else { $pageHeader = "No Results"; $template = APP_WEB_DIR . '/view/notiles.php'; } $pageTitle = SeoData::getPageTitleWithNumber($gpage, $token); $metaKeywords = SeoData::getMetaKeywords($token); $metaDescription = SeoData::getMetaDescriptionWithNumber($gpage, $token); include $template; }
function process($params, $options) { if (is_null($params) || empty($params)) { $controller = new \com\indigloo\sc\controller\Http400(); $controller->process(); exit; } $siteId = Util::tryArrayKey($params, "site_id"); $cname = Url::tryQueryParam("cname"); if (empty($siteId) || empty($cname)) { $controller = new \com\indigloo\sc\controller\Http400(); $controller->process(); exit; } $siteDao = new \com\indigloo\sc\dao\Site(); $postDBRows = $siteDao->getPostsOnId($siteId, 50); $pageHeader = $cname; $pageTitle = SeoData::getHomePageTitle(); $metaDescription = SeoData::getHomeMetaDescription(); $metaKeywords = SeoData::getHomeMetaKeywords(); $file = APP_WEB_DIR . '/view/tiles.php'; include $file; }
function process($params, $options) { if (is_null($params) || empty($params)) { $controller = new \com\indigloo\sc\controller\Http400(); $controller->process(); exit; } $token = Util::getArrayKey($params, "name"); // group controller is invoked via the fixed links // (as opposed to users typing in search box) // so we (exact) match this token against post_groups index. $sphinx = new \com\indigloo\sc\search\SphinxQL(); $qparams = Url::getRequestQueryParams(); $gpage = Url::tryQueryParam("gpage"); $gpage = empty($gpage) ? "1" : $gpage; $pageSize = Config::getInstance()->get_value("search.page.items"); $paginator = new Pagination($qparams, $pageSize); $ids = $sphinx->getPagedPostByGroup($token, $paginator); $sphinx->close(); $template = NULL; $searchTitle = NULL; $groupName = \com\indigloo\util\StringUtil::convertKeyToName($token); if (sizeof($ids) > 0) { $pageHeader = "{$groupName}"; $pageBaseUrl = "/group/{$token}"; $template = APP_WEB_DIR . '/view/tiles-page.php'; $postDao = new \com\indigloo\sc\dao\Post(); $postDBRows = $postDao->getOnSearchIds($ids); } else { $pageHeader = "No results"; $template = APP_WEB_DIR . '/view/notiles.php'; } $pageTitle = SeoData::getPageTitleWithNumber($gpage, $groupName); $metaKeywords = SeoData::getMetaKeywords($groupName); $metaDescription = SeoData::getMetaDescriptionWithNumber($gpage, $groupName); include $template; }
if (strcmp($gSessionLogin->provider, Login::MIK) != 0) { $message = "change password only works for 3mik logins!"; throw new UIException(array($message)); } $userDao = new \com\indigloo\sc\dao\User(); $userDBRow = $userDao->getonLoginId($loginId); //tokens for use in next screen $ftoken = Util::getMD5GUID(); $email = $userDBRow["email"]; $femail = Util::encrypt($email); $gWeb = \com\indigloo\core\Web::getInstance(); $gWeb->store("change.password.email", $femail); $gWeb->store("change.password.token", $ftoken); $title = $userDBRow["email"]; $qUrl = base64_encode(Url::current()); $fUrl = Url::current(); $submitUrl = "/user/account/form/change-password.php"; ?> <!DOCTYPE html> <html> <head> <title> Change password - <?php echo $title; ?> </title> <?php include APP_WEB_DIR . '/inc/meta.inc'; ?> <?php
<?php //sc/monitor/analytic/users.php include 'sc-app.inc'; include APP_WEB_DIR . '/inc/header.inc'; include APP_WEB_DIR . '/inc/role/admin.inc'; use com\indigloo\Util; use com\indigloo\Url; use com\indigloo\Configuration as Config; use com\indigloo\ui\Filter; use com\indigloo\sc\redis; use com\indigloo\sc\util\Nest; use com\indigloo\sc\util\PseudoId; $qparams = Url::getRequestQueryParams(); $redis = new redis\Activity(); $tab = isset($qparams["tab"]) ? $qparams["tab"] : 1; settype($tab, "integer"); $sortVariable = "followers"; $pageSize = 25; $paginator = new \com\indigloo\ui\Pagination($qparams, $pageSize); $baseURI = "/monitor/analytic/users.php"; $userDao = new \com\indigloo\sc\dao\User(); switch ($tab) { case 1: $sortVariable = "followers"; break; case 2: $sortVariable = "likes"; break; case 3: $sortVariable = "comments";
function loadNextPage($gpage) { $postDao = new \com\indigloo\sc\dao\Post(); $qparams = Url::getRequestQueryParams(); $pageSize = Config::getInstance()->get_value("main.page.items"); $paginator = new \com\indigloo\ui\Pagination($qparams, $pageSize); $postDBRows = $postDao->getPaged($paginator); $pageHeader = ''; $pageBaseUrl = '/'; $pageTitle = SeoData::getHomePageTitleWithNumber($gpage); $metaKeywords = SeoData::getHomeMetaKeywords(); $metaDescription = SeoData::getHomeMetaDescriptionWithNumber($gpage); $file = APP_WEB_DIR . '/view/tiles-page.php'; include $file; }
<?php //sc/user/account/form/edit.php include 'sc-app.inc'; include APP_WEB_DIR . '/inc/header.inc'; include APP_WEB_DIR . '/inc/role/user.inc'; use com\indigloo\ui\form as Form; use com\indigloo\Constants; use com\indigloo\exception\UIException; use com\indigloo\sc\auth\Login; if (isset($_POST['save']) && $_POST['save'] == 'Save') { $gWeb = \com\indigloo\core\Web::getInstance(); $fvalues = array(); $fUrl = \com\indigloo\Url::tryFormUrl("fUrl"); try { $fhandler = new Form\Handler('web-form-1', $_POST); $fhandler->addRule('first_name', 'First Name', array('required' => 1, 'maxlength' => 32)); $fhandler->addRule('last_name', 'Last Name', array('required' => 1, 'maxlength' => 32)); $fhandler->addRule('email', 'Email', array('required' => 1, 'maxlength' => 64)); $fhandler->addRule('qUrl', 'qUrl', array('required' => 1, 'rawData' => 1)); $fvalues = $fhandler->getValues(); //decode q param to use in redirect $qUrl = base64_decode($fvalues['qUrl']); if ($fhandler->hasErrors()) { throw new UIException($fhandler->getErrors()); } $loginId = Login::getLoginIdInSession(); $userDao = new \com\indigloo\sc\dao\User(); $userDao->update($loginId, $fvalues['first_name'], $fvalues['last_name'], $fvalues['nick_name'], $fvalues['email'], $fvalues['website'], $fvalues['blog'], $fvalues['location'], $fvalues['age'], $fvalues['photo_url'], $fvalues['about_me']); //success header("Location: " . $qUrl);
$counters = $analyticDao->getUserCounters($loginId); $activityDao = new \com\indigloo\sc\dao\Activity(); $feedDataObj = $activityDao->getUserFeeds($loginId, 20); //suggestions are editor picks right now $postDao = new \com\indigloo\sc\dao\Post(); //post featured filter $filters = array(); $model = new \com\indigloo\sc\model\Post(); $filter = new Filter($model); $filter->add($model::FEATURED, Filter::EQ, TRUE); array_push($filters, $filter); // pick 12 posts from editor picks $postDBRows = $postDao->getPosts(12, $filters); $dashItemHelp = \com\indigloo\sc\html\Site::getDashItemHelp($counters["post_count"]); $params = array("q" => base64_encode(Url::current())); $linkInvitation = Url::createUrl("/user/invite.php", $params); ?> <!DOCTYPE html> <html> <head> <title> Dashboard - <?php echo $loginName; ?> </title> <?php include APP_WEB_DIR . '/inc/meta.inc'; ?> <?php
static function convertImageJsonObj($jsonObj) { $view = array(); if (strcmp($jsonObj->store, "s3") == 0 || strcmp($jsonObj->store, "local") == 0) { $view["name"] = $jsonObj->originalName; $prefix = $jsonObj->store == 's3' ? 'http://' : Url::base() . '/'; $fileName = NULL; //@imp: if thumbnail is not available then fallback on original image if (property_exists($jsonObj, "thumbnailName")) { $view["tname"] = $jsonObj->thumbnailName; $fileName = $jsonObj->thumbnail; } else { $view["tname"] = $jsonObj->originalName; $fileName = $jsonObj->storeName; } // aws s3 bucket mapping for cloud front $m_bucket = $jsonObj->bucket; // format is store.bucket.mapto=<mapped-bucket> $mapKey = sprintf("%s.%s.mapto", $jsonObj->store, $m_bucket); $bucket = Config::getInstance()->get_value($mapKey, $m_bucket); $view["source"] = $prefix . $bucket . '/' . $jsonObj->storeName; $view["thumbnail"] = $prefix . $bucket . '/' . $fileName; $view["width"] = $jsonObj->width; $view["height"] = $jsonObj->height; //@todo add thumbnail width and height to image json data } else { $view["name"] = "placeholder"; $view["tname"] = "placeholder"; $view["source"] = UIConstants::PH1_PIC; $view["thumbnail"] = UIConstants::PH1_PIC; $view["width"] = 48; $view["height"] = 48; $view["twidth"] = 40; $view["theight"] = 40; } return $view; }
header("Location: / "); } $qUrl = Url::tryBase64QueryParam("q", "/user/dashboard/index.php"); $fUrl = Url::current(); // should login do some action? $gSessionAction = Url::tryQueryParam("g_session_action"); if (!empty($gSessionAction)) { $gWeb->store("global.session.action", $gSessionAction); } $fUrl = Url::current(); $sticky = new Sticky($gWeb->find(Constants::STICKY_MAP, true)); $stoken = Util::getMD5GUID(); $gWeb->store("mik_state_token", $stoken); //Facebook OAuth2 $fbAppId = Config::getInstance()->get_value("facebook.app.id"); $host = Url::base(); $fbCallback = $host . "/callback/fb2.php"; $fbDialogUrl = "https://www.facebook.com/dialog/oauth?client_id=" . $fbAppId; $fbDialogUrl .= "&redirect_uri=" . urlencode($fbCallback) . "&scope=email&state=" . $stoken; //Google OAuth2 $googleClientId = Config::getInstance()->get_value("google.client.id"); $googleCallback = $host . "/callback/google2.php"; $googleAuthUrl = "https://accounts.google.com/o/oauth2/auth?scope="; //space delimited scope $googleScope = "https://www.googleapis.com/auth/userinfo.email"; $googleScope = $googleScope . Constants::SPACE . "https://www.googleapis.com/auth/userinfo.profile"; $googleAuthUrl .= urlencode($googleScope); $googleAuthUrl .= "&client_id=" . $googleClientId; $googleAuthUrl .= "&state=" . $stoken; $googleAuthUrl .= "&response_type=code"; $googleAuthUrl .= "&redirect_uri=" . urlencode($googleCallback);