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

MSW

новички
  • Публикации

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

  • Посещение

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

  1. я делал подобное - http://0-web.ru/dle/hack-dle/160-news-lifetime-v10.html

    Хак предназначен для автоматического выставления периода действия новости при добавлении её пользователем с определённой группы/групп в определённую категорию/категории.

    То есть автоматическое задействование стандартных средств DLE по установке периода и действия по истечению данного периода.

    В частности если пользователь, из группы пользователи, добавляет новость в определённую категорию, то этой новости устанавливаются параметры - удалить новость через 14 дней с момента добавления, автоматически новость не попадает на главную страницу и ей отключается рейтинг(все эти параметры можно отредактировать в коде хака).

  2. Файл: /engine/ajax/clean.php

    срока 140

    $db->query("DELETE FROM " . PREFIX . "_files WHERE news_id = '{$row['id']}'");
    а дальше в строке 147
    $getfiles = $db->query("SELECT onserver FROM " . PREFIX . "_files WHERE news_id = '{$row['id']}'");[/code]
    
    
    идёт запрос тех записей что уже удалены в строке 140 
    
    как следствие файлы останутся на диске не удалённые... 
    
    
    
    
    
    
    
    надо исправить так:
    
    
    
    
    
    Файл: /engine/ajax/clean.php
    
    Найти и удалить:
    
    
    [code]$db->query("DELETE FROM " . PREFIX . "_files WHERE news_id = '{$row['id']}'");[/code]
    Найти:
    [code]$db->free ($getfiles);[/code]
    Добавить ниже:
    [CODE]$db->query("DELETE FROM " . PREFIX . "_files WHERE news_id = '{$row['id']}'");[/code]

  3. MSW,

    Нельзя этого делать. подключение можно использовать только в шаблонах. В данном случае подключение стороннего модуля необходимо переместить в шаблон

    тогда как идентифицировать какую статическую страницу смотрит пользователь?

    $dle_module - содержит информацию о разделе сайта, который просматривает пользователь, либо информацию переменной do из URL браузера.

    выводит static

    $category_id - содержит ID категории которую просматривает посетитель.

    ничего не выводит...

    по сему резонный вопрос - как получить айди или имя статической страницы что бы знать что модуль должен делать и выводить, так как на каждой странице статической модуль должен выводить разные данные.

    в шаблоне статик страницы

    [aviable=static_name]{include file="engine/modules/mymod.php"}[/aviable]

    тоже не срабатывает

  4. GET http://fonts.googleapis.com/css?family=verdana&subset=latin,cyrillic 400 (Bad Request) webfont.js:17
    
    GET http://fonts.googleapis.com/css?family=arial&subset=latin,cyrillic 400 (Bad Request) webfont.js:17

    http://ajax.googleap...nt/1/webfont.js

    аналогичная проблема, видать причина в запросе к гУглофонтам, наверно у них что-то поменялось в протоколе

  5. после патча безопасности перестала работать функция подключения модулей в статических страницах... раньше можно было выбрать "Исходный текст HTML без фильтрации и изменений" и подключаемый модуль через "include file" работал, теперь пишет фильтеред... будет фикс этого? или добавление возможности подключения модулей в статические страницы?

    как временное решение помогает в файле: /engine/classes/templates.class.php

    за комментировать строку:

    if( substr_count ($this->template, "{include file=") < substr_count ($this->copy_template, "{include file=")) return "Filtered";[/CODE]

    [/size][/font][/color]

  6. Спасибо за модуль!

    Но не работает автоматическая выдача наград...

    Fatal error: Cannot use object of type mysqli_result as array in /home/www/engine/inc/awards.php on line 1089

    это если включено оповещение в ПМ

    			$db->query("UPDATE " . USERPREFIX . "_awards_list set count=count+1 where id=$row[id]");
    
    1089 >>							   if ($config_awards['awards_pm'] == 1) {
    
    							   $time = time()+($config['date_adjust']*60);

    и выдача награды с комментария не работает:

    при переходе пишет вместо ника награждаемого - ник того кто награждает, и не выводит список медалей

    былоб хорошо еслиб ещё добавить к автоматической выдаче параметры, например: время вместе с сайтом, количество раз сказаного спасибо, количество раз когда поблагодарили.

  7. к сожалению тоже самое...

    После:

    if (!$icq) $icq = "";
    Вставить:
    $question = $db->safesql($question_array[intval($_REQUEST['question'])]);
    
    $answer = $db->safesql(trim($_REQUEST['answer']));
    После
    xfields='$filecontents', allowed_ip='$allowed_ip'
    Добавить:(2 раза)
    , question='$question', answer='$answer'
    Это вместо:
    question='".$db->safesql($question_array[intval($_REQUEST['question'])])."',  answer='".$db->safesql(trim($_REQUEST['answer']))."'

    Так просто немножко красивше будет :) и не будет сильно выделятся от стиля кода в движке

  8. kaliostro,

    спасибо! работает!

    единственное неудобство: при последующем редактировании профиля сбрасывается опять на первый вариант вопроса.

    может сделать первую строку вариантов пустой? и при редактировании профиля проверку вставить - если пустая строка в вопросе то не изменять этот параметр?

  9. kaliostro,

    добавил, в нужное место по дизайну, в userinfo.tpl:

    <tr>
    
    <td width="130" height="25">Вопрос для восстановления пароля</td>
    
    <td>{questions}</td>
    
    </tr>
    
    <tr>
    
    <td width="130" height="25">ответ на вопрос</td>
    
    <td><input type="text" name="answer" class="f_input" /></td>
    
    </tr>

    а вот как правильно добавить в engine\modules\profile.php?

  10. suslik

    как я понял имелось ввиду:

    // Module Configuration

    $lost_advance = 1; // 1-выключить модуль, 0-выключить

    $requred_answer = 1; //Поле ответа будет обязательным для заполнения

    $question_array = array(

    "Девичья фамилия матери",

    "Любимое блюдо",

    "Почтовый индекс родителей",

    "Дата рождения бабушки",

    "Любимый номер телеофна",

    "Номер паспорта",

    );

    $lost_method = 1; // 1-пользователь сам водит новый пароль, 0-пароль генерируется автоматически

    ////////////////////////

    из файла lost_advance.php

    так оно и есть :)

    теперь вопрос:

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

    как добавить эти поля тем кто уже зарегистрирован?

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