/** * @before _secure, memberLayout */ public function create() { $this->seo(array("title" => "Ping | Create", "view" => $this->getLayoutView())); $view = $this->getActionView(); if (RequestMethods::post('title')) { $ping = Registry::get('MongoDB')->ping; $time = strtotime(date('d-m-Y H:i:s')); $mongo_date = new MongoDate($time); $url = RequestMethods::post('url', ''); $regex = Shared\Markup::websiteRegex(); if (!preg_match("/^{$regex}\$/", $url)) { $view->set("success", "Invalid Url"); return; } $record = $ping->findOne(array('user_id' => (int) $this->user->id, 'url' => $url)); if ($record) { $view->set("success", "Ping already created! Go to <a href='/ping/edit/" . $record['url'] . "'>Edit</a>"); return; } $ping->insert(array("user_id" => (int) $this->user->id, "title" => RequestMethods::post('title'), "url" => $url, "interval" => RequestMethods::post('interval'), "live" => 1, "created" => $mongo_date)); $view->set('success', 'Ping Created Successfully'); } }
/** * @return string|array Array on DB validation errors, else string messages */ private function _saveSerp($keyword, $link) { $keyword = RequestMethods::post("keyword"); $link = RequestMethods::post("link"); $regex = Shared\Markup::websiteRegex(); if (!preg_match("/^{$regex}\$/", $link)) { return "Invalid URL"; } $serp = Keyword::first(array("link = ?" => $link, "user_id = ?" => $this->user->id, "keyword = ?" => $keyword, "serp = ?" => true)); if ($serp) { return "SERP Already Registered"; } $serp = new Keyword(array("link" => $link, "user_id" => $this->user->id, "keyword" => $keyword, "serp" => true)); if ($serp->validate()) { $serp->save(); return "Serp Action saved succesfully!!"; } else { $errors = $keyword->errors; return $errors; } }
/** * @return string */ private function _saveSocial() { $regex = Shared\Markup::websiteRegex(); $link = RequestMethods::post("link"); if (!preg_match("/^{$regex}\$/", $link)) { return "Invalid URL"; } $tracker = Keyword::first(array("link = ?" => $link, "user_id = ?" => $this->user->id, "serp = ?" => false)); if ($tracker) { return "Already added"; } $tracker = new Keyword(array("keyword" => "social", "link" => $link, "user_id" => $this->user->id, "serp" => false)); $tracker->save(); return "Social Tracker Added"; }