Ejemplo n.º 1
0
 function restoreAction()
 {
     $backupFile = new UploadedFile("backupFile");
     if (!$backupFile->wasUploaded()) {
         return;
     }
     $gzipMode = $this->request->fileType == "gzip";
     $fileName = $backupFile->getTempName();
     $fp = $gzipMode ? gzopen($fileName, "r") : fopen($fileName, "r");
     $inString = false;
     $query = "";
     while (!feof($fp)) {
         $line = $gzipMode ? gzgets($fp) : fgets($fp);
         if (!$inString) {
             $isCommentLine = false;
             foreach (array("#", "--") as $commentTag) {
                 if (strpos($line, $commentTag) === 0) {
                     $isCommentLine = true;
                 }
             }
             if ($isCommentLine || trim($line) == "") {
                 continue;
             }
         }
         $deslashedLine = str_replace('\\', '', $line);
         if ((substr_count($deslashedLine, "'") - substr_count($deslashedLine, "\\'")) % 2) {
             $inString = !$inString;
         }
         $query .= $line;
         if (substr_compare(rtrim($line), ";", -1) == 0 && !$inString) {
             $this->database->sqlQuery($query);
             $query = "";
         }
     }
 }
Ejemplo n.º 2
0
 protected function beforeInit()
 {
     $this->data = $this->request->getArray(array("subject", "text", "mailsPerMinute", "newsletterType", 'fromEmail'));
     $message = $this->customMessage->findByPk("newsletterFooter");
     $this->data['newsletterFooterDescription'] = $message->description;
     if ($this->data['newsletterType'] == 'csv') {
         $csvFile = new UploadedFile('csvFile');
         if ($csvFile->wasUploaded()) {
             $this->data['emails'] = array_values(file($csvFile->getTempName(), FILE_IGNORE_NEW_LINES));
         } else {
             $this->data['emails'] = array();
         }
     }
 }
Ejemplo n.º 3
0
 /**
  * Sets a new logo image by given temp file
  *
  * @param CUploadedFile $file
  */
 public function setNew(UploadedFile $file)
 {
     $this->delete();
     move_uploaded_file($file->getTempName(), $this->getPath());
     ImageConverter::Resize($this->getPath(), $this->getPath(), array('height' => $this->height, 'width' => 0, 'mode' => 'max', 'transparent' => $file->getExtensionName() == 'png' && ImageConverter::checkTransparent($this->getPath())));
 }
Ejemplo n.º 4
0
 function importNewsletterEmailAction()
 {
     $csvFile = new UploadedFile("csvFile");
     try {
         $csvFile->validate();
         $fileName = $csvFile->getTempName();
         $buff = file_get_contents($fileName);
         $this->newsletterEmail->del(new Criteria());
         foreach (preg_split("#[\r\n]+#", $buff) as $email) {
             $email = trim($email);
             if (empty($email)) {
                 continue;
             }
             $newsletterEmail = new NewsletterEmailRecord();
             $newsletterEmail->email = $email;
             $newsletterEmail->active = "1";
             $newsletterEmail->save();
         }
     } catch (Exception $e) {
     }
     $this->redirect($this->moduleLink("newsletterEmail"));
 }