public function actionAddExLink() { if (isset($_POST['dataset_id']) && isset($_POST['url']) && isset($_POST['externalLinkType'])) { $url = $_POST['url']; if (!preg_match("/\\b(?:(?:https?|ftp):\\/\\/|www\\.)[-a-z0-9+&@#\\/%?=~_|!:,.;]*[-a-z0-9+&@#\\/%=~_|]/i", $url)) { Util::returnJSON(array("success" => false, "message" => Yii::t("app", "The URL is invalid. Please enter a valid URL including http://"))); } $exLink = ExternalLink::model()->findByAttributes(array('dataset_id' => $_POST['dataset_id'], 'url' => $url)); if ($exLink) { Util::returnJSON(array("success" => false, "message" => Yii::t("app", "This external link has been added already."))); } $exLink = new ExternalLink(); $exLink->dataset_id = $_POST['dataset_id']; $exLink->url = $url; $exLink->external_link_type_id = $_POST['externalLinkType']; if ($exLink->save()) { Util::returnJSON(array("success" => true)); } Util::returnJSON(array("success" => false, "message" => Yii::t("app", "Save Error."))); } }
private function addExternalLink($dataset_id, $additional_information, $genome_browser) { if (!empty($additional_information)) { $external_link_type = ExternalLinkType::model()->find("name=?", array("additional_information")); $external_link = new ExternalLink(); $external_link->dataset_id = $dataset_id; $external_link->external_link_type_id = $external_link_type->id; $external_link->url = $additional_information; $external_link->save(false); } if (!empty($genome_browser)) { $external_link_type = ExternalLinkType::model()->find("name=?", array("genome_browser")); $external_link = new ExternalLink(); $external_link->dataset_id = $dataset_id; $external_link->external_link_type_id = $external_link_type->id; $external_link->url = $genome_browser; $external_link->save(false); } }