/** Alimenta la cola de procesamiento de producciones * * @return boolean */ public function feedQueue() { //El repositorio de datos debe ser cargado if (!count($this->dataRepository) > 0) { return false; } foreach ($this->dataRepository as $data) { $queue = new QueueProductions(); if (QueueProductions::existsByLink($data[1])) { continue; } $queue->name = $data[0]; $queue->link = $data[1]; $queue->date_creation = DateUtil::getCurrentTime(); $queue->save(); } }
/** Agrega una nueva produccion desde un link * * @param Request $request * @return type */ function ajaxAddFromIMDB(Request $request) { if (!$request->ajax()) { return; } $data = $request->all(); $name = $data["name"]; $link = $data["link"]; if (QueueProductions::existsByLink($link, true)) { return json_encode(array("msg" => "<span class='glyphicon glyphicon-remove-circle'></span> " . $name . " Ya fue agregado y procesado anteriormente")); } $provider = new ProductionProvider($name, $link); $production_id = $provider->save(); if (is_null($production_id)) { return json_encode(array("msg" => "<span class='glyphicon glyphicon-remove-circle'></span> " . $name . " El acceso a la información de la producción no fue posible intentalo de nuevo.")); } //Verifica si ya existia en la cola de procesamiento, si es asi lo indica como procesado y si no, lo crea. if (QueueProductions::existsByLink($link)) { $queue = QueueProductions::where(QueueProductions::ATTR_LINK, $link)->get()[0]; $queue->date_processed = DateUtil::getCurrentTime(); $queue->production_id = $production_id; $queue->save(); return json_encode(array("msg" => "<span class='glyphicon glyphicon-ok-circle'></span> " . $name . " Procesado con éxito")); } else { $queue = new QueueProductions(); $queue->production_id = $production_id; $queue->name = $name; $queue->link = $link; $queue->date_creation = DateUtil::getCurrentTime(); $queue->date_processed = DateUtil::getCurrentTime(); $queue->save(); return json_encode(array("msg" => "<span class='glyphicon glyphicon-ok-circle'></span> " . $name . " Agregado y procesado con éxito")); } }