public function actionBuscar()
 {
     if (isset($_POST["busqueda"])) {
         $q = new CDbCriteria();
         $q->addSearchCondition('folio', $_POST["busqueda"]);
         $detalle = Archivo::model()->findAll($q);
         $this->renderPartial("_verdetalle", array("detalles" => $detalle));
     }
 }
Exemple #2
0
 public function actionArchivo()
 {
     if (!$_GET['hash']) {
         throw new CHttpException(404, 'No se encontró la página solicitada');
     }
     $hash = $_GET['hash'];
     $url = Url::model()->findByAttributes(array('slug' => $hash));
     $params = array();
     if ($url->tipo_id == 10) {
         $c = Carpeta::model()->findByAttributes(array('url_id' => $url->id));
         if ($c) {
             $params['carpeta_id'] = $c->id;
             $w = ' carpeta_id = ' . $c->id . ' AND ';
         }
     } else {
         if ($url->tipo_id == 11) {
             $params['url_id'] = $url->id;
             $w = ' url_id = ' . $url->id . ' AND ';
         }
     }
     $json = '';
     $dependencia = new CDbCacheDependency("SELECT GREATEST(MAX(creado), MAX(modificado)) FROM archivo WHERE estado <> 0");
     $a = Archivo::model()->findAllByAttributes($params, array('order' => 'nombre ASC'));
     if ($a) {
         $json .= '[';
         foreach ($a as $archivo) {
             $json .= '{';
             $json .= '"id":"' . CHtml::encode($archivo->id) . '",';
             $json .= '"url":"' . CHtml::encode($archivo->url->slug) . '",';
             $json .= '"tipo_archivo":"' . $archivo->tipoArchivo->nombre . '",';
             //$json .= '"carpeta":"'.CHtml::encode($archivo->carpeta->ruta).'",';
             $json .= '"carpeta":';
             $json .= '{';
             $json .= '"ruta":"' . CHtml::encode($archivo->carpeta->ruta) . '",';
             $json .= '"url":"' . CHtml::encode($archivo->carpeta->url->slug) . '"';
             $json .= '},';
             $json .= '"nombre":"' . CHtml::encode($archivo->nombre) . '",';
             $json .= '"archivo":"' . $archivo->archivo . '"';
             $json .= '},';
         }
         $json = substr($json, 0, -1);
         $json .= ']';
     }
     $this->_sendResponse(200, $json, 'application/json');
     Yii::app()->end();
 }
 public function actionRenamearchivo()
 {
     if (!Yii::app()->request->isAjaxRequest || !isset($_POST['name']) || !isset($_POST['new_name'])) {
         throw new CHttpException(404, 'No se encontró la página solicitada');
     }
     $new_name = $_POST['new_name'];
     $archivo = Archivo::model()->with('carpeta')->findByAttributes(array('archivo' => $_POST['name']));
     $parent = Carpeta::model()->findByPk($archivo->carpeta_id);
     $nombre_slug = $this->slugger($new_name);
     $nueva_ruta = $parent->ruta . '/' . $nombre_slug;
     $url = Url::model()->findByPk($archivo->url_id);
     $slug = $parent->url->slug . '/' . $nombre_slug;
     $slug = $this->verificarSlug($slug);
     $url->slug = $slug;
     $url->save();
     $base = Yii::getPathOfAlias('webroot') . '/archivos/';
     header('HTTP/1.1 200 OK');
     $archivo->archivo = $new_name;
     $archivo->nombre = $new_name;
     if (!$archivo->save()) {
         $json = array('error' => '1');
         echo json_encode($json);
     }
     Yii::app()->end();
 }
Exemple #4
0
 protected function beforeDelete()
 {
     try {
         foreach ($this->archivos as $archivo) {
             $a = Archivo::model()->findByPk($archivo->id);
             $a->delete();
         }
         return parent::beforeDelete();
     } catch (Exception $e) {
         return false;
     }
 }