Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Шаблоны (TPL) Ваших публикаций, ожидающих модерации, нет

Ваших публикаций, ожидающих модерации, нет


     22.03.2013    Шаблоны (TPL), Общие вопросы по PHP    5151

вопрос
Здравствуйте. Хочу убрать на личной странице пользователя блок в котором говориться, что (публикаций, ожидающих модерации, нет). В файле \engine\modules\show.short.php за это отвечает
$tpl->set( '{error}', $lang['mod_list_f'] );
,
но это файл короткой новости. А в файле profile.php такой строки вообще нет. Вот и не знаю как быть:/

Ответил: BR0kEN


Откройте info.tpl и весь код возьмите в теги [not-aviable=userinfo][/not-aviable].

Комментарии пользователей (13)

TheImDim
18

327 | 291

TheImDim - 22 марта 2013 13:53 - Юзер

Ищем в engine/modules/show.short.php:


if( !$news_found and $allow_userinfo and $member_id['name'] == $user and $user_group[$member_id['user_group']]['allow_adds'] ) {
        $tpl->load_template( 'info.tpl' );
        $tpl->set( '{error}', $lang['mod_list_f'] );
        $tpl->set( '{title}', $lang['all_info'] );
        $tpl->compile( 'content' );
        $tpl->clear();
    } elseif( !$news_found and $do == 'newposts' and $view_template != 'rss') {


Заменяем на:

if( !$news_found and $do == 'newposts' and $view_template != 'rss') {

kprod
6

113 | 20

kprod - 14 сентября 2013 09:58 - Юзер

А как сделать, чтобы, если есть новости- они всё равно не отображались бы?

Mitya1982
38 | 1

Mitya1982 - 10 ноября 2015 22:05 - Юзер

Здравствуйте!

Этот код
if( !$news_found and $allow_userinfo and $member_id['name'] == $user and $user_group[$member_id['user_group']]['allow_adds'] ) {
        $tpl->load_template( 'info.tpl' );
        $tpl->set( '{error}', $lang['mod_list_f'] );
        $tpl->set( '{title}', $lang['all_info'] );
        $tpl->compile( 'content' );
        $tpl->clear();
    } elseif( !$news_found and $do == 'newposts' and $view_template != 'rss') {


Отвечает только за профиль?

Если уберу и поставлю
if( !$news_found and $do == 'newposts' and $view_template != 'rss') {
, то ничего на сайте не изменится? Мне не нужно, чтобы на сайте что-то поменялось. Хочу убрать только в профиле
это "Информация. Ваших публикаций, ожидающих модерации, нет" и всё.

TheImDim
18

327 | 291

TheImDim - 22 марта 2013 13:54 - Юзер

BR0kEN к чему изобретать еще один велосипед и вешать ненужные функции?

BR0kEN
163

235 | 275

BR0kEN - 22 марта 2013 13:55 - Эксперт

Вообще-то велосипед у вас.

TheImDim
18

327 | 291

TheImDim - 22 марта 2013 14:04 - Юзер

мда

BR0kEN
163

235 | 275

BR0kEN - 22 марта 2013 14:10 - Эксперт

Вот и я писал комментарий с таким же видом.

Зачем лезть в код если можно использовать теги? Человек, не разбирающийся в php, через неделю забудет что он правил в каком-то там файле.

TheImDim
18

327 | 291

TheImDim - 22 марта 2013 18:40 - Юзер

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

BR0kEN
163

235 | 275

BR0kEN - 22 марта 2013 18:49 - Эксперт

Эммм. А нагрузка от чего? Я наверное чего-то не знаю, да?

RaperXXX
7 | 5

RaperXXX - 31 августа 2013 13:41 - Юзер

Цитата: BR0kEN
Вообще-то велосипед у вас.

Не сказал бы так. Так как если весь код взять в тег [not-aviable=userinfo][/not-aviable], то после этого ошибки в профиле не будут выводиться. К примеру 1 из них, если аватар превышает размер заданного в админ панели. Так что способ от TheImDim будет лучше.

Gopr
10

494 | 164

Gopr - 22 марта 2013 19:35 - Юзер

Способ BR0KEN мне больше подходит, да и если придется обратно все вернуть, то в этом не возникнет проблем.
TheImDim по поводу нагрузки, коль вы сами заикнулись о ней. У меня в main.tpl прописаны 90% всех скриптов от всего сайта, даже стили и скрипты со страницы добавления новостей перемещены в main.tpl для улучшения оптимизации сайта. Выглядит это примерно так:
[aviable=userinfo|pm]скрипт[/aviable]
[aviable=main|cat|favorites|allnews|date]скрипт[/aviable]
[aviable=showfull]скрипт[/aviable]
[aviable=addnews]скрипт[/aviable]. Вы считаете это плохо?

BR0kEN
163

235 | 275

BR0kEN - 22 марта 2013 23:31 - Эксперт

Я считаю что это не плохо и абсолютно не понимаю о чем говорит TheImDim. Теги aviable работают до боли просто: проверяется переменная $dle_module (которая, кстати, является тем же, что и $do) и если просматриваемая страница модуля является одним из условий switch, то на ней используется то, что заключено в соответствующие теги.

Если же мой оппонент в этом споре говорит о функции check_module, которая выполняется для проверки тегов aviable и о замедлении от ее работы, то да, банальный оператор if в show.full сработает быстрее. Прирост будет в 0.00001 секунду. Если скатываться до такой чуши в оптимизации быстродействия, то да, это успех.

romanuch222
2

romanuch222 - 5 декабря 2015 02:10 - Юзер

У меня на 10 версии DLE не сработало. Решил так - в engine.php

//------------------------МОД
//        } elseif ($subaction == 'userinfo') {
//            // ################ Вывод профиля пользователя #################
//            if ($cstart) {
//                
//                $cstart = $cstart - 1;
//                $cstart = $cstart * $config['news_number'];
//            
//            }
//            
//            $url_page = $config['http_home_url'] . "user/" . urlencode ( $user );
//            $user_query = "subaction=userinfo&user=" . urlencode ( $user );
//            
//            if ($member_id['name'] == $user or $user_group[$member_id['user_group']]['allow_all_edit']) {
//                if (isset ( $_SESSION['dle_sort_userinfo'] )) $news_sort_by = $_SESSION['dle_sort_userinfo'];
//                if (isset ( $_SESSION['dle_direction_userinfo'] )) $news_direction_by = $_SESSION['dle_direction_userinfo'];
//                
//                $sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE autor = '{$user}' AND approve=0 ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
//                $sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE autor = '$user' AND approve=0";
//                $allow_active_news = true;
//            } else {
//                $allow_active_news = false;
//            }
//            
//            $config['allow_cache'] = false;
//------------------------МОД

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы