Перейти к публикации

Critical Error

местные
  • Публикации

    1 063
  • Зарегистрирован

  • Посещение

  • Дней в лидерах

    42

Сообщения, опубликованные пользователем Critical Error

  1. Заметил такую неприятную вещь. Когда в админке в разделе редактирования публикаций я выставляю статус новостей "Ожидающие модерации новости" дальнейшая сортировка новостей возможна только по дате. Это не есть хорошо.

  2. Нашел пример прикрепления фала. Код следующий:

    
    <?php
    
      $filename = "form.txt"; //Имя файла для прикрепления
    
      $to = "abc@mail.ru"; //Кому
    
      $from = "def@gmail.com"; //От кого
    
      $subject = "Test"; //Тема
    
      $message = "Текстовое сообщение"; //Текст письма
    
      $boundary = "---"; //Разделитель
    
      /* Заголовки */
    
      $headers = "From: $from\nReply-To: $from\n";
    
      $headers .= "Content-Type: multipart/mixed; boundary=\"$boundary\"";
    
      $body = "--$boundary\n";
    
      /* Присоединяем текстовое сообщение */
    
      $body .= "Content-type: text/html; charset='utf-8'\n";
    
      $body .= "Content-Transfer-Encoding: quoted-printablenn";
    
      $body .= "Content-Disposition: attachment; filename==?utf-8?B?".base64_encode($filename)."?=\n\n";
    
      $body .= $message."\n";
    
      $body .= "--$boundary\n";
    
      $file = fopen($filename, "r"); //Открываем файл
    
      $text = fread($file, filesize($filename)); //Считываем весь файл
    
      fclose($file); //Закрываем файл
    
      /* Добавляем тип содержимого, кодируем текст файла и добавляем в тело письма */
    
      $body .= "Content-Type: application/octet-stream; name==?utf-8?B?".base64_encode($filename)."?=\n";
    
      $body .= "Content-Transfer-Encoding: base64\n";
    
      $body .= "Content-Disposition: attachment; filename==?utf-8?B?".base64_encode($filename)."?=\n\n";
    
      $body .= chunk_split(base64_encode($text))."\n";
    
      $body .= "--".$boundary ."--\n";
    
      mail($to, $subject, $body, $headers); //Отправляем письмо
    
    ?>
    
    

    Путь к файлу, находящемуся на лок. машине, приходит на сервер.

    Как из выше написанного кода выделить нужное не совсем понимаю. Если не сложно, подскажите, пожалуйста.

  3. Владимир, подскажите, пожалуйста, как правильно добавить заголовки в письмо, не влезая в файл класса и чтобы не переопределить те что в нем?

    Из своего файла правильна ли будет запись:

    
    $mail->mail_headers .= "Мои заголовки"
    
    

  4. Привет, друзья.

    Написал небольшой мод для отправки сообщений на почту, он использует настройки DLE, отвечающие за отправку сообщений на почту.

    Стала задача прикреплять изображение. Способен ли mail.class.php выполнить это действие?

  5. Увы, в этой версии так и не появилось хранение доп. полей не в таком формате что сейчас, жестко ограничивая их вывод последовательными ключами массива генерируемого из строки из файла xfields.txt

    Очень бы хотелось в следующей версии увидеть хранение полей в формате json. Черт возьми, это же в миллионы раз удобнее будет. Не будет этой ограниченности.

    
    {
    
        "field_name": {                                  // field_name - название поля латиницей
    
    	    "field_label"                     :   string  //"Название поля на русском",
    
    	    "field_description":           :   string  // "Полное описание поля",
    
    	    "field_placeholder"           :   string  // "Краткое описание поля",
    
    	    "field_categories"             :   array  // "Категории",
    
    	    "field_type"                      :   string  // "Тип поля",
    
    	    "field_default_value"          :   string  // "Значение по умолчанию",
    
    	    "field_optionally_use"        :   boolean  // "Использование при желании",
    
    	    "field_safe_mode"             :   boolean  // "Безопасный режим",
    
    	    "field_editor"                     :   boolean  // "Подключать редактор",
    
    	    "field_cross_references"    :   boolean  // "Использование значения как перекрестные ссылки"
    
        }
    
    }
    
    

    • Поддерживаю 6
  6. Работал с друпалом. Там конечно много крутых примочек, но для верстальщика это адская машина. Так вот, понравились пресеты стилей изображений. То есть сколько бы их не было и как бы они не были набиты эффектами - при загрузке изображений создаются копии для всех стилей. Хотелось бы увидеть подобное в DLE.

    • Поддерживаю 1
  7. Если используете FTP менеджер, то можно установить права доступа для каждого файла через контекстное меню. Либо если хостинг предоставляет такую возможность в управлении файлов, то там ищите.

    Самый же простой способ - в свойствах файла поставить "Только чтение"

  8. В разработке очередного адаптивного сайта возникла необходимость в выводе информации на основном сайте только для мобильных устройств и наоборот.

    Для этого я решил добавить два новых глобальных тега на основе проверки используемого посетителем устройства.

    В движке уже предусмотрена функция проверки мобильного устройства - check_smartphone() - возвращающая true если посетитель использует какое-либо мобильное устройство.

    Вот небольшой туториал по установке:

    Открываем файл engine/classes/templates.class.php и находим функцию check_tag. После нее добавим новую функцию check_mobile()

    
    	function check_mobile( $matches=array() ) {
    
    		$block = $matches[2];
    
    		if ($matches[1] == "mobile") $action = true; else $action = false;
    
    		if( $action ) {
    
    			if( !check_smartphone() ) return "";
    
    			else return $block;
    
    		}
    
    		else {
    
    			if( check_smartphone() ) return "";
    
    			else return $block;
    
    		}
    
    	}
    
    
    Полдела сделано. Едем дальше. В этом же файле находим функцию load_template(). После условия
    
    		if (strpos ( $this->template, "[not-news=" ) !== false) {
    
    			$this->template = preg_replace_callback ( "#\\[(not-news)=(.+?)\\](.*?)\\[/not-news\\]#is", array( &$this, 'check_tag'), $this->template );
    
    		}
    
    
    добавляем след. код
    
    		if (strpos ( $this->template, "[mobile]" ) !== false) {
    
    			$this->template = preg_replace_callback ( "#\\[(mobile)\\](.*?)\\[/mobile\\]#is", array( &$this, 'check_mobile'), $this->template );
    
    		}
    
    		if (strpos ( $this->template, "[not-mobile]" ) !== false) {
    
    			$this->template = preg_replace_callback ( "#\\[(not-mobile)\\](.*?)\\[/not-mobile\\]#is", array( &$this, 'check_mobile'), $this->template );
    
    		}
    
    
    Далее в функции sub_load_template() после условия
    
    		if (strpos ( $template, "[not-news=" ) !== false) {
    
    			$template = preg_replace_callback ( "#\\[(not-news)=(.+?)\\](.*?)\\[/not-news\\]#is", array( &$this, 'check_tag'), $template );
    
    		}
    
    
    вставляем код
    
    		if (strpos ( $template, "[mobile]" ) !== false) {
    
    			$template = preg_replace_callback ( "#\\[(mobile)\\](.*?)\\[/mobile\\]#is", array( &$this, 'check_mobile'), $template );
    
    		}
    
    		if (strpos ( $template, "[not-mobile]" ) !== false) {
    
    			$template = preg_replace_callback ( "#\\[(not-mobile)\\](.*?)\\[/not-mobile\\]#is", array( &$this, 'check_mobile'), $template );
    
    		}
    
    

    Вот, в общем-то, и все телодвижения. Теперь в любом файле шаблона есть возможность вывода информации только для мобильного устройства либо только для ПК.

    [mobile] текст [/mobile] - для девайсов

    [not-mobile] текст [/not-mobile] - для ПК

    С разделом немного промахнулся. Владимир, если посчитаете нужным, перенесите в Хаки.

    • Поддерживаю 1
  9. Я уже предлагал, но все же.

    1. Все дополнительные поля к новости, что вкупе хранятся в xfields в БД вынести в отдельную таблицу. Хранить там news_id, xfield_name, xfield_value. Это даст в дальнейшем широкие возможности, сортировка только начало.

    2. Сделать для типа поля список специальный синтаксис: [text(value)], где text - текст в option, value - значение option

    3. Добавить тип поля Загрузка файла.

    4. Интегрировать для загрузки изображений их обработку: JCROP, поворот, несколько размеров для одного изображения. Очень в этом плане нравится реализация WordPress

    • Поддерживаю 3
  10. Права доступа к дополнительным полям новостей для каждой из групп. [Чтение, Чтение и Запись]. Настраивать в разделе админки соответствующем.

    Иногда хочется ограничить редактирование некоторых полей для тех у кого есть возможность редактировать новости

  11. Ну, перешел я на сайт первый.. глянул... и ни на что не кликая и не прокручивая скролл - закрыл и забыл.

    Могли бы вообще не писать комментарий, так как смысла в нём 0!

    Раз Вы не уловили суть моего комментария, дальше не о чем говорить.

    PS: Продолжайте делать сайт в том же духе, непонятно для кого, рассчитывая на прибыль.

  12. Прежде чем ставить CMS, неважно какую, да и вообще, для того чтобы создавать сайты, нужно хоть что-то понимать в html и css для начала. К тому же есть люди, которые работают в этой сфере.

    Используйте padding и/или margin

×
×
  • Создать...