Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Хаки Как разрешить группе "Гости" добавлять новости на сайт?

Как разрешить группе "Гости" добавлять новости на сайт?


     03.01.2014    Хаки    3897

вопрос
Здравствуйте! Собственно возникла проблема с тем, что пользователи находящиеся в группе "Гости" (не зарегистрированные) в dle не могут вообще добавлять новости, я так понял это даже не предусмотрено в двжике, т.к в настройке группы кнопка разрешения публикации неактивна. Подскажите пожалуйста, как можно разрешить гостям публиковать новости, версия dle 10.1.

Ответил: rocksmart


В админ панели создаеш нового пользователя

Например:

Логин: quest
Пароль: quest
Емайл: можно указать свой

В файле engine\modules\addnews.php

После строки

if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}



Вставить


if($member_id ['user_group'] == '5'){
include("engine/api/api.class.php");
$member_id = $dle_api->take_user_by_name('test');
$is_logged = true;
//print_r($member_id);
}



Теперь любой пользователь будет добавлять новости под ником test

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

vitnet
218

2171 | 930

vitnet - 3 января 2014 09:26 - Эксперт


narkom6n
2

51 | 4

narkom6n - 3 января 2014 09:34 - Юзер

Там все хаки устаревшие, на старые ветки dle.

ПафНутиЙ
1065

3394 | 2433

ПафНутиЙ - 3 января 2014 11:12 - Админ

А какие конкретно вы пробовали устанавливать?

Каков вопрос - таков и ответ. Просто помните об этом.

alle347
7 | 4

alle347 - 8 января 2014 10:54 - Юзер

Присоединяюсь к вопросу. Ответ пока не прозвучал :(

studiolfilms
28 | 1

studiolfilms - 19 сентября 2014 14:56 - Юзер

up - тоже нужно

Петрушка
7 | 1

Петрушка - 24 декабря 2015 09:08 - Юзер

Тоже интересно, авторизацию отключил - а запрещать новости присылать не хочется..

Петрушка
7 | 1

Петрушка - 24 декабря 2015 09:33 - Юзер

Нашел в интернете, попробовал на своём сайте - всё работает!

Открыть файл engine/modules/addnews.php
После строки (в самом верху):
$parse = new ParseFilter( Array (), Array (), 1, 1 ); Добавить:

if( !$is_logged ){
$is_logged=true; //Искусственно делаем гостя зарегеным
$member_id['user_group']=4; //Искусственно ставим права пользователя для гостя при добавлении новости
$member_id['user_id']=1; //Ну надо же кому-то в счетчик новость прибавить <img src='http://talkwebber.ru/public/style_emoticons/<EMO_DIR>/smile_mini.gif' class='bbc_emoticon' alt=':)' />
} Далее перед строкой:

$stop = ""; Вставить:

if( !$member_id['name'] ){
$name = $db->safesql( $parse->process( htmlspecialchars( trim( $_POST['name'] ) ) ) ); //Удаляем вскую кракозябру из ника
if( strlen( $name ) > 20 ) die("Too long name!"); //Длинные имена не пропускаем
if( preg_match( "/[\||\'|\<|\>|\[|\]|\"|\!|\?|\$|\@|\/|\\\|\&\~\*\{\+]/", $name ) ) die("Hacking attempt!"); //Спесимволы не пропускаем
if( $name == "" ) die("Please enter your name!"); //Пустое имя не пропускаем
$member_id['name'] = $name; //Присваиваем имя
$config['sec_addnews']=false; //Сносим лишнюю проверку хэша
}
В файле шаблона addnews.tpl добавить
<input type="text" name="name"/> Вот и вся хитрость....

deamonsda
3

deamonsda - 12 февраля 2016 11:38 - Юзер

работает. но при добавлении файла в новость выдаёт в модальном окне {"error":"Вы не авторизированы на сайте"} Как это подправить?

timalamer
18 | 1

timalamer - 17 марта 2016 16:04 - Юзер

Я решил это так:

В login.tpl вписал логин и пароль, используя value=""

Добавил кнопке "Войти" id="davay"

И с помощью этой функции, каждый гость автоматом логинится на сайте.

$(document).ready(function(){
$('#davay').click()
})

SanekFisherman
4

SanekFisherman - 28 июля 2016 21:38 - Юзер

А можете указать как прописать именно в логин тпл логин и пароль? И ещё, как и куда подключить автомат. авторизацию гостя?

timalamer
18 | 1

timalamer - 29 июля 2016 07:31 - Юзер

В addnews.tpl добавил
{include file="login.tpl"}


В login.tpl



<form method="post" action="">
<ul class="reset">
<li class="lfield"><label for="login_name">{login-method}</label><input type="text" name="login_name" id="login_name" value="Тут вставь логин"/></li>
<li class="lfield lfpas"><label for="login_password">Пароль</label><input type="password" name="login_password" id="login_password" value="Тут вставь пароль" /></li>
<li class="lbtn"><button class="fbutton" id="davay" onclick="submit();" type="submit" title="Войти"><span>Войти</span></button></li>
</ul>
<input name="login" type="hidden" id="login" value="submit" />
</form>


<script type="text/javascript">
    $(document).ready(function(){
$('#davay').click()
})
</script>

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

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