コード例 #1
0
 /** Akcia pre editaciu informacii o dokumente
  * @param int $id Id dokumentu na editaciu
  */
 public function actionEdit($id)
 {
     if (($this->dokument = $this->dokumenty->find($id)) === FALSE) {
         return $this->error(sprintf("Pre zadané id som nenašiel prílohu! id=' %s'!", $id));
     }
     $this["dokumentEditForm"]->setDefaults($this->dokument);
 }
コード例 #2
0
ファイル: PrilohyClanok.php プロジェクト: petak23/echo-msz
 public function handleShowInText($id)
 {
     $priloha = $this->dokumenty->find($id);
     $priloha->update(['zobraz_v_texte' => 1 - $priloha->zobraz_v_texte]);
     if (!$this->presenter->isAjax()) {
         $this->redirect('this');
     } else {
         $this->redrawControl('');
     }
 }
コード例 #3
0
  {
      $values = $button->getForm()->getValues();
      //Nacitanie hodnot formulara
      try {
          $uloz = ['id_hlavne_menu' => $values->id_hlavne_menu, 'id_user_profiles' => $this->id_user_profiles, 'id_registracia' => $values->id_registracia, 'popis' => isset($values->popis) && strlen($values->popis) > 2 ? $values->popis : NULL, 'zmena' => StrFTime("%Y-%m-%d %H:%M:%S", Time())];
          $nazov = isset($values->nazov) ? $values->nazov : "";
          if ($values->priloha && $values->priloha->name != "") {
              $priloha_info = $this->_uploadPriloha($values);
              $uloz = array_merge($uloz, ['nazov' => strlen($nazov) > 2 ? $nazov : $priloha_info['finalFileName'], 'spec_nazov' => Strings::webalize($priloha_info['finalFileName']), 'pripona' => $priloha_info['pripona'], 'subor' => $this->prilohy_adresar . $priloha_info['finalFileName'], 'thumb' => $priloha_info['thumb']]);
          } else {
              $uloz = array_merge($uloz, ['nazov' => strlen($nazov) > 2 ? $nazov : ""]);
          }
          $vysledok = $this->dokumenty->uloz($uloz, $values->id);
          if (!empty($vysledok) && isset($priloha_info['is_image']) && $priloha_info['is_image']) {
              $this->dokumenty->oprav($vysledok['id'], ['znacka' => '#I-' . $vysledok['id'] . '#']);
          }
      } catch (Database\DriverException $e) {
          $button->addError($e->getMessage());
      }
  }
  /**
 * Upload prilohy
 * @param \Nette\Http\FileUpload $values
 * @return array */
  private function _uploadPriloha($values)
  {
      $pr = $this->dokumenty->find($values->id);
      //Zmazanie starej prílohy
      if ($pr !== FALSE) {
          if (is_file($pr->subor)) {
              unlink($this->wwwDir . "/" . $pr->subor);
          }
          if (in_array(strtolower($pr->pripona), ['png', 'gif', 'jpg']) && is_file($pr->thumb)) {
              unlink($this->wwwDir . "/" . $pr->thumb);
          }
      }
      $fileName = $values->priloha->getSanitizedName();
      $pi = pathinfo($fileName);
      $file = $pi['filename'];
      $ext = $pi['extension'];
      $additionalToken = 0;
      //Najdi meno suboru
      if (file_exists($this->prilohy_adresar . $fileName)) {
コード例 #4
0
ファイル: ArticlePresenter.php プロジェクト: petak23/scspp
 /** Funkcia pre spracovanie signálu vymazavania
  * @param int $id Id polozky v hlavnom menu
  * @param string $druh Blizsia specifikacia, kde je to potrebne
  */
 function confirmedDelete($id, $druh = "")
 {
     //Vstupna kontrola
     if (!(isset($id) && $id)) {
         $this->error("Id položky nie je nastavené!");
     }
     if ($druh != 'priloha') {
         $hl_m = $this->hlavne_menu_lang->findOneBy(["id_hlavne_menu" => $id, "id_lang" => 1]);
         if ($hl_m === FALSE) {
             $this->error("Položka s id = " . $id . " sa nenašla!");
         }
         $presenter = $hl_m->hlavne_menu->druh->presenter;
     }
     if ($druh == 'avatar') {
         $hl = $this->hlavne_menu->find($id);
         $this->vymazSubor("www/" . $this->avatar_path . $hl->avatar);
         $uloz = $this->hlavne_menu->uloz(["avatar" => NULL], $id);
         $this->_ifMessage($uloz !== FALSE ? TRUE : FALSE, 'Titulný obrázok bol vymazaný!', 'Došlo k chybe a titulný obrázok nebol vymazaný!');
         $this->redirect($presenter . ':', $id);
     } elseif ($druh == 'priloha') {
         //Poziadavka na zmazanie prilohy
         $pr = $this->dokumenty->find($id);
         //najdenie prislusnej polozky menu, ku ktorej priloha patri
         if ($pr !== FALSE) {
             $id_nadradenej = $pr->id_hlavne_menu;
             //Nechcem smerovat na nadradeny clanok, len na seba
             $vysledok = $this->vymazSubor($pr->subor) ? in_array(strtolower($pr->pripona), ['png', 'gif', 'jpg']) ? $this->vymazSubor($pr->thumb) : TRUE : FALSE;
             $this->_ifMessage($vysledok ? $pr->delete() : FALSE, 'Príloha bola vymazaná!', 'Došlo k chybe a príloha nebola vymazaná!');
         } else {
             $this->flashRedirect("Homepage:", 'Došlo k chybe a príloha nebola vymazaná!', 'danger');
         }
     } elseif ($druh == "") {
         $id_nadradenej = $hl_m->hlavne_menu->id_nadradenej == NULL ? -1 * $hl_m->hlavne_menu->id_hlavne_menu_cast : $hl_m->hlavne_menu->id_nadradenej;
         if ($presenter == "Clanky") {
             //Mazanie clanku
             $this->_ifMessage($this->_delClanok($id), 'Článok bol úspešne vymazaný!', 'Došlo k chybe a článok nebol vymazaný!');
             //Poziadavka na zmazanie clanku
         } elseif ($presenter == "Menu") {
             $this->_ifMessage($id_nadradenej = $this->_delHlMenu($id), 'Položka menu bola úspešne vymazaná!', 'Došlo k chybe a položka menu nebola vymazaná!');
         }
         if ($id_nadradenej < 0) {
             $this->redirect('Homepage:', ["id" => $id_nadradenej]);
         } else {
             if (($nadr = $this->hlavne_menu->find($id_nadradenej)) !== FALSE) {
                 $this->redirect($nadr->druh->presenter . ':', $nadr->id);
             }
         }
     }
 }