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

Muddy

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

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

  • Посещение

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

    2

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

  1. Да и еще у кого есть ИЕ 6, сделайте пожалуйста скрин, как сайт в нем выглядит, а то у меня нету возможности посмотреть.

    Internet Explorer 5 / 5.5 / 6 / 7 / 8

    http://www.debugbar.com/download.php

    Думаю, многим пригодится. Хотя я перестал оптимизировать под 6 и ниже. Браузеры столько не должны жить.

  2. Мне тоже понравилось :)

    Zeos. Подскажи. Почему у меня jpeg картинки в бэкграунде не отображаются. В чем может быть причина. Кэш обновил. Не помогает.

    Сайт прикольный. Только у меня в лисе нижнее меню вылезает за визуальную границу блока

    Firefox v. 3.5.5 - всё нормально. :unsure:

  3. Вот, активировал лицензию, теперь можно показать народу:

    http://dealers.ereality.ru

    Думаю, для многих будет интересно посмотреть не совсем стандартное применение DLE, так как три колонки уже набили оскомину, хотя профи вряд ли почерпнут что-то новое для себя.

    Особенности:

    1. На главной выводятся новости в опредленном формате, на других страницах новостей нет, только контент.

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

    3. Новости и статические страницы имеют разные шаблоны, можно определить по баннерам справа, которые разные.

    А так, в принципе, ничего особенного. Профи могут ругать, начинающим работать с DLE, думаю, будет интересно.

    P.S. на тяжесть, просьба не ругаться, изображения в топе кушают траффик, но красота требует жертв:(

    • Поддерживаю 1
  4. В шаблоне делаешь

    <input type="hidden" name="recip" value="1">

    value - это ID пользователя, которому будут отправлятюся email. ID можно посмотреть в админке - редактирование пользователя, кликни на никнейм (изменить) и увидишь в открывшемся окне URL, в котором и присутствует ID, например,

    .../admin.php?mod=editusers&action=edituser&id=1

    а я просто стандартную форму обратной связи переделал под форму заказа, на мыле поставил фильтр по заголовку (заголовок скрыт от пользователя) и сейчас все письма с заказом попадают в одну папку ;) очень удобно и сразу понятно от какого юзера ;)

    проблема в том, что мне надо было сделать три независмые и разные формы. То есть одна форма связи и два опросника.

    • Поддерживаю 1
  5. Пардон, совсем уже не смотрю, что копи-паст делаю, Title для нашей страницы можно сделать без проблем. Вернитесь к пункту 3 и вместо него сделайте:

    3. Открываем файл engine/engine.php находим:

    находим:

    elseif ($do == 'feedback') $nam_e=$lang['title_feed'];
    ниже всталвяем:
    elseif ($do == 'formorder') $nam_e=$lang['title_formorder'];

    И в языковом файле прописываем 'title_formorder' с названием нашей страницы.

    • Поддерживаю 1
  6. Потребовалось создать дополнительную форму обратной связи, поискал на форуме - решение есть, но оно в разделе для клиентов, хотя мы и купили за всё время работы с DLE порядка 5-6 лицензий, а может и больше, но никогда не покупали поддержку, поэтому доступ в тот раздел нет, а решение нужно. Есть ещё модуль платный для создания форм из админки, но иногда проще потратить денек, чтобы самому найти решение, чем несколько дней, на проверку чужого решения, да и отзывы о модуле настораживают (см. 4dle.ru)

    Сразу оговорюсь, я не прораммист, PHP не знаю, javascript не знаю, умею только делать copy -> paste - этим и займемся.

    И так, нам надо создать дополнительную форму обратной связи, так как feedback уже используется, а нужно, например получить дополнительные данные от пользовтеля с помощью формы на администраторский email, к примеру форму заказа (делалось на версии 7.3).

    1. Берем файл feedback.tpl и по его подобию создаем шаблон с другим названием, например, formorder.tpl

    2. Берем файл engine/modules/feedback.php по его подобию создаем файл formorder.php

    3. Открываем файл engine/engine.php находим:

    case "feedback" :
    
    		include ENGINE_DIR.'/modules/feedback.php';
    
    		break;
    ниже вставляем:
    case "formorder" :
    
    		include ENGINE_DIR.'/modules/formorder.php';
    
    		break;
    находим:
    elseif ($do == 'feedback') $nam_e=$lang['title_feed'];
    ниже всталвяем:
    elseif ($do == 'formorder') $nam_e=$lang['title_feed'];
    4. Открываем созданный нами engine/modules/formorder.php находим:
    $tpl->load_template('feedback.tpl');
    меняем на
    $tpl->load_template('formorder.tpl');
    Наша новая форма готова, можно посмотреть: http://.../index.php?do=formorder'>http://.../index.php?do=formorder --------------------------------------------------------------------------------------------------- Но клон уже готовой формы отправки нам не нужен, нам нужно в эту форму вставить дополнительные поля, которые бы пользователь мог заполнить и эти данные пришли бы нам на email. 1. Откроем созданный нами шаблон formorder.tpl, и вставим дополнительные поля, например, добавим 2 новых поля (по аналогии вы сможете сделать больше):
     <tr>
    
    							  <td width="120" height="25">Город:</td>
    
    							  <td><input type="text" maxlength="45" name="city" class="text" /></td>
    
    							</tr>
    
    							<tr>
    
    							  <td width="120" height="25">Страна:</td>
    
    							  <td><input type="text" maxlength="45" name="country" class="text" /></td>
    
    							</tr>
    2. Теперь внесем изменения в файл engine/modules/formorder.php чтобы наши поля отправлялись на email, а не просто украшали страницу: находим строчку:
    $message = strip_tags(stripslashes($_POST['message']));
    заменяем на:
    		$message = 'Город: '.strip_tags(stripslashes($_POST['city'])).'
    
    Страна: '.strip_tags(stripslashes($_POST['country'])).'
    
    
    Сообщение: '.strip_tags(stripslashes($_POST['message']));
    Обратите внимание, что между строчками Страна и Сообщение пропущена строка - точно также она будет пропущена и при получении email'а. Сюда же можно вставить и другие поля, которые уже реализованы в DLE: email, name В принципе наша форма уже готова, сообщение приходит на почту так, как нам нужно. Поля, которые мы сделали необязательны к заполнению и пользователь может оставить их пустыми. Но зачем нам форма, если нам поля будут присылать пустые, будем делать проверку - заполнено ли поле, плюс ко всему мне нужно было, чтобы заполненная форма не скидывалась, а сообщение вылатело тут же средствами alert, помимо всего хотелось, чтобы пользователю в алерте писалось, какое поле он не заполнил. начинаем делать: 1. В нашем файле engine/modules/formorder.php находим
    $tpl->copy_template = "<form  method=\"post\" name=\"sendmail\" onsubmit=\"if(document.sendmail.subject.value == '' || document.sendmail.message.value == ''){alert('{$lang['comm_req_f']}');return false}\"action=\"\">\n".$tpl->copy_template."
    меняем на:
    $tpl->copy_template = "<form  method=\"post\" name=\"sendmail\" onsubmit=\"
    
    if(document.sendmail.name.value == ''){alert('{$lang['feed_err_name']}');return false}
    
    if(document.sendmail.subject.value == ''){alert('{$lang['feed_err_subject']}');return false}
    
    if(document.sendmail.city.value == ''){alert('{$lang['feed_err_city']}');return false}
    
    if(document.sendmail.country.value == ''){alert('{$lang['feed_err_country']}');return false}
    
    if(document.sendmail.message.value == ''){alert('{$lang['feed_err_message']}');return false}
    
    if(document.sendmail.sec_code.value == ''){alert('{$lang['reg_err_sec_code']}');return false}
    
    \"action=\"\">\n".$tpl->copy_template."
    Обратите внимание, что мы также повесили проверки без перезагрузки страницы на name, message и sec-code. 2. Открываем файл language/Russian/website.lng находим строку (чтобы всё в одном месте было):
    'feed_err_7'		=>	"Данный пользователь не найден в базе данных, либо он не хочет получать письма от других пользователей",
    после неё добавляем:
    'feed_err_name'			=>	"Вы не указали имя.",
    
    'feed_err_subject'		=>	"Вы не указали Заголовок.",
    
    'feed_err_city'			=>	"Вы не указали город.",
    
    'feed_err_country'		=>	"Вы не указали страну.",
    
    'feed_err_message'		=>	"Вы не написали сообщение.",
    
    'reg_err_sec_code'		=>	"Вы не написали защитный код.",
    В принципе всё. Теперь по багам и улучшениям: 1. Title страницы http://.../index.php?do=formorder'>http://.../index.php?do=formorder - будет таким же, как и у формы обратной связи, что в принципе не страшно. 2. Для своей формы я прятал заголовок письма, так как пользовтаелю это дополнительное поле, а мы будем знать какую форму он нам заполнил по заголовку: Открываем файл formorder.tpl находим:
    <tr>
    
    							  <td width="120" height="25">Заголовок:</td>
    
    							  <td><input type="text" maxlength="45" name="subject" class="text" /></td>
    
    							</tr>
    заменяем на:
    <tr>
    
    							  <td width="120"></td>
    
    							  <td><input maxlength="45" value="Form: Order" name="subject" class="text" type="hidden" /></td>
    
    							</tr>

    Проверку в этом случаев файле engine/modules/formorder.php , мне кажется, можно снять, но не обязательно.

    3. Форма письма, которое приходит к нам на email, имеет точный вид формы feedback - саму форму можно редактировать в административной панели "Шаблоны E-mail сообщений" - я оставил шаблон единый, очень не хотелось погружаться в это, так как там правки нужно вносить и в БД, насколько я понимаю.

    4. Капча. Если поле остается пустым, то мы его проверяем, но если пользователь что-то неправильно ввел, то страница перезагрузится, выдавая ошибку ив се введенные данные пропадут - это, пожалуй, самое большое упущение DLE, так как при заполнении большой формы - скидывание введенного бесит невероятно. Если кто-то нашел решение - прошу поделиться. Возможно celsoft реализует проверку капчи без перезагрузки страницы и потери введенного, так как неоднократно слышал - мы ввели ВО-О-От такое сообщение в форме обратной связи, а капчу ошиблись и всё пропало.

    Я данное упущение закрыл тем, что рядом с капчей написал: "Пожалуйста, при вводе защитного кода будьте внимательны, если код будет введен неправильно, страница перезагрузится и введенные данные будут потеряны."

    В принципе всё. Если кто-то найдет решение с капчей, пожалуйста напишите. В создании хака очень помог Kiborgik

    • Нравится 1
    • Поддерживаю 1
  7. Для того, чтобы дать группе "главные редакторы" чуть больше прав, чем дает группа в административной панели (то, что у меня получилось, не знаю насколько это влияет на защищенноть, может celsoft ответит. Версия 7.3).

    Статические страницы:

    engine/inc/option.php

    Было:

    array(
    
    'name'	   => $lang['opt_static'],
    
    'url'		=> "$PHP_SELF?mod=static",
    
    'descr'	  => $lang['opt_staticd'],
    
    'image'		 => "spset.png",
    
    'access'	 => "1",
    
    ),
    Стало:
    array(
    
    'name'	   => $lang['opt_static'],
    
    'url'		=> "$PHP_SELF?mod=static",
    
    'descr'	  => $lang['opt_staticd'],
    
    'image'		 => "spset.png",
    
    'access'	 => "2",
    
    ),
    admin.php Было:
    elseif($system_modules[$mod] == "admin" and $member_db[1] == 1){ include(ENGINE_DIR.'/inc/'. $mod . '.php'); }
    Стало:
    elseif($system_modules[$mod] == "admin" and $member_db[1] == 1){ include(ENGINE_DIR.'/inc/'. $mod . '.php'); }
    
    elseif($system_modules[$mod] == "admin" and $member_db[1] == 2){ include(ENGINE_DIR.'/inc/'. $mod . '.php'); }
    В файле engine/inc/static.php - ничего не менял. Права на Создание, Редактирование, Удаление группе "главные редакторы" появились. Категории engine/inc/option.php Было:
    array(
    
    'name'	   => $lang['opt_cat'],
    
    'url'		=> "$PHP_SELF?mod=categories",
    
    'descr'	  => $lang['opt_catc'],
    
    'image'	  => "cats.png",
    
    'access'	 => "1",
    
    ),
    Стало:
    array(
    
    'name'	   => $lang['opt_cat'],
    
    'url'		=> "$PHP_SELF?mod=categories",
    
    'descr'	  => $lang['opt_catc'],
    
    'image'	  => "cats.png",
    
    'access'	 => "2",
    
    ),
    Файл admin.php изменил, как сказано выше. engine/inc/categories.php Было:
    if($member_db[1] != 1){ msg("error", $lang['addnews_denied'], $lang['cat_perm']); }
    Стало:
    if($member_db[1] > 2){ msg("error", $lang['addnews_denied'], $lang['cat_perm']); }
    Появились права на изменения, создание и удаление категорий. Реадктировани пользователей engine/inc/option.php Было:
    array(
    
    'name'	   => $lang['opt_user'],
    
    'url'		=> "$PHP_SELF?mod=editusers&action=list",
    
    'descr'	  => $lang['opt_userc'],
    
    'image'		 => "uset.png",
    
    'access'	 => "1",
    
    ),
    Стало:
    array(
    
    'name'	   => $lang['opt_user'],
    
    'url'		=> "$PHP_SELF?mod=editusers&action=list",
    
    'descr'	  => $lang['opt_userc'],
    
    'image'		 => "uset.png",
    
    'access'	 => "2",
    
    ),
    Файл admin.php изменил, как сказано выше. engine/inc/editusers.php Было:
    if($member_db[1] != 1){ msg("error", $lang['addnews_denied'], $lang['user_denied']); }
    Стало:
    if($member_db[1] > 2){ msg("error", $lang['addnews_denied'], $lang['user_denied']); }
    Управление картинками (только загрузка, без доступа удаления и управление директорями): Было:
    array(
    
    'name'	   => $lang['opt_img'],
    
    'url'		=> "$PHP_SELF?mod=files",
    
    'descr'	  => $lang['opt_imgc'],
    
    'image'	=> "iset.png",
    
    'access'	 => "1",
    
    ),
    Стало:
    array(
    
    'name'	   => $lang['opt_img'],
    
    'url'		=> "$PHP_SELF?mod=files",
    
    'descr'	  => $lang['opt_imgc'],
    
    'image'	=> "iset.png",
    
    'access'	 => "2",
    
    ),
    Файл admin.php изменил, как сказано выше. engine/inc/files.php Было:
    if(!$user_group[$member_db[1]]['allow_image_upload'] OR ($member_db[1] != 1 and $action != "quick")){msg("error", "Доступ запрещен", "Вы не можете выполнять операции с файлами");}
    Стало:
    if(!$user_group[$member_db[1]]['allow_image_upload'] OR ($member_db[1] > 2 and $action != "quick")){msg("error", "Доступ запрещен", "Вы не можете выполнять операции с файлами");}

    К сожалению, дать права на удаление и управление директорями не удалось.

  8. Интересный модуль сам по себе. Странно, что celsoft не включил данную возможность в основной пак.

    Хотелось бы видеть следующую реализацию на ajax:

    1. В полной новости линк "Отправить новость другу"

    2. При нажатии появляется окошко с просьбой заполнить следующие поля:

    - Ваше имя - Ваш email

    - Имя Вашего друга - Email Вашего друга

    3. Обязательные поля к заполнению: Ваше имя, Имя Вашего друга, Email Вашего друга

    4. В этом же окошке линк "Отправляемое письмо". При нажатии выводится текст сообщения, как будет выглядеть письмо, которое получит друг

    5. В этом же окне кнопка с плюсиком - пзволяет добавить Имя и Email ещё одного друга.

    4. Письмо отправляется на почтовый ящик друга с указанием имени и email отправителя

    5. Текст сообщения можно изменять в административной панеле:

    "Добрый день, %friendname!

    На сайте %website я прочитал интересную новость, рекомендую посмотреть, возможно, тебе тоже понравится!

    Линк на новость: %link

    С уважением, %name

    -------------------------------------------

    Данное письмо был отправлено с сайта %website одним из пользователей. Администрация сайта не несет ответственности за получение Вами этого письма.

  9. http://news.ereality.ru/index.php?do=gallery

    Сделать:

    По дефолту - Личные альбомы

    http://news.ereality.ru/index.php?do=galle...mp;image=77#com

    Комментарии неправильно сортируются (нужно - последний вниз), не всегда записываются (когда переходишь на фотографию через клик на картинку)

    ФотоГрани >> Личные альбомы >> Muddy >> мой альбом;-) (все категории - ссылки)

    Оценка фотографий: от 1 до 5 звезд, топ самых популярных фотографий по просмотрам и оценке.

    [Создать альбом] [Добавить фотографии] вынести вверх, выделить картинкой.

    Сделать: Личные альбомы – поиск по нику.

    Общая фотогалерея игроков (134) – показ кол-ва фотографий в альбоме

    Удаление комментариев и фотографий администрацией, запрет на добавление фотографий в общий раздел и в личные альбомы по нику.

    Поиск по нику – существует ли фотоальбом.

    Пофиксать модуль вывода новых фотографий

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

    Список авторов – перемещение во все альбомы автора

    Сделать сортировку по новым альбомам

    Очень беглое описание, в процессе будет много правок и дополнений. Называйте Ваши примерные сроки и желаемую плату здесь или в icq: 328-186-197

    P.S. лучше здесь, тема просматривается администратором проекта Грани Реальности

  10. МДФ сделали мне, изменяются файлы:

    engne/modules/poll.php

    engine/ajax/poll.php

    if($_SESSION['dle_name'] == 'admin' || $_SESSION['dle_name'] == 'administrator'
    
    || $_COOKIE['dle_name'] == 'admin' || $_COOKIE['dle_name'] == 'administrator')
    
    {
    
    
    $list .= <<<HTML
    
    {$body[$v]} - {$num} ({$proc}%)<br />
    
    <img src="{$config['http_home_url']}templates/{$config['skin']}/dleimages/poll{$pn}.gif" height="10" width="{$proc}%" style="border:1px solid black"><br />
    
    HTML;
    
    }
    
    else
    
    {
    
    $list = <<<HTML
    
    Спасибо, за ваш голос!
    
    HTML;
    
    }

    Теперь просто пользователи после того, как они отдали свой голос видят надпись "Спасибо, за ваш голос!", а админы перечисленные видят результаты, кнопку результаты можно по идее спрятать под HIDE.

    Всё что уловил написал, программист очень быстро делал - не успевал записывать.

  11. Суть простая, ряд новостей, в каждой новости опросы. Выбираем ответ, нажимаем проголосовать, наш голос учитывается - нам показываются результаты опроса на данный момент.

    Нужно: чтобы вместо результатов голосования высвечивалась какая-то картинка или надпись: "Спасибо! Ваш голос учтен!" при повторной попытке проголосовать: "Вы уже проголосовали в этом опросе".

    Группе "Администраторы" вместо этого демонстрируются результаты голосования. Для любых иных групп - результаты не видны.

    Интересно для любой версии DLE не выше 6-ой.

    Заранее спасибо, надеюсь на понимание!

    P.S. В этом плане очень жаль, что не существет отдельного от тега {list} тега {result} и сам опрос выводится единым тегом с результатами. Просто думал сделать тайно голосование. Повторюсь, опрос не общий, а в новостях ({poll}).

    Ещё раз спасибо!

  12. очень хорошая задумка :)

    А можно к этому как-то приложить возможность задавать адрес для админ входа? Хотя, сомневаюсь что это возможно, только если ручками переписывть всё:-(

    Уж не знаю, хотя бы листинг файлов и номера строчек?!

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