HolySong 1 Опубликовано: 25 февраля 2014 Рассказать Опубликовано: 25 февраля 2014 Я хочу дать право редактору изменять автора к публикации но в настройках групп пользователей не могу найти такую настройку, Подскажите это могут делать только Администраторы? или возможно настроить группу пользователя редактора? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 25 февраля 2014 Рассказать Опубликовано: 25 февраля 2014 Это могут делать только администраторы сайта. В настройках групп это не настраивается Цитата Ссылка на сообщение Поделиться на других сайтах
HolySong 1 Опубликовано: 25 февраля 2014 Рассказать Опубликовано: 25 февраля 2014 Автор Подскажите возможно где то код как то подправить... мне крайне важно что бы все журналисты могли ставить не только свои фамилии, а и другие. Пока раздал всем права Администратора но это очень опасно. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 25 февраля 2014 Рассказать Опубликовано: 25 февраля 2014 правится это в файлах engine/inc/addnews.php и engine/inc/editnews.php Цитата Ссылка на сообщение Поделиться на других сайтах
HolySong 1 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 (изменено) Автор В engine/inc/addnews.php Используя поиск по слову autor я нашел в 730 строке это слово, подскажите что на что нужно изменить для того чтобы допустим Редактор мог изменять автора. $db->query( "INSERT INTO " . PREFIX . "_post (date, autor, short_story, full_story, xfields, title, descr, keywords, category, alt_name, allow_comm, approve, allow_main, fixed, allow_br, symbol, tags, metatitle) values ('$thistime', '{$member_id['name']}', '$short_story', '$full_story', '$filecontents', '$title', '{$metatags['description']}', '{$metatags['keywords']}', '$category_list', '$alt_name', '$allow_comm', '$approve', '$allow_main', '$news_fixed', '$allow_br', '$catalog_url', '{$_POST['tags']}', '{$metatags['title']}')" ); и конечно в файле engine/inc/editnews.php Изменено 26 февраля 2014 пользователем HolySong Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 Не то вы нашли, менять нужно строчку if( $member_id['user_group'] == 1 AND $_POST['new_author'] != $member_id['name'] ) { [/CODE] например на [CODE] if( ($member_id['user_group'] == 1 OR $member_id['user_group'] == 2 ) AND $_POST['new_author'] != $member_id['name'] ) { 1 Цитата Ссылка на сообщение Поделиться на других сайтах
HolySong 1 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 (изменено) Автор строка 1738 // Смена автора публикации if( $member_id['user_group'] == 1 AND $_POST['new_author'] != $_POST['old_author'] ) { ------- вот самая похожая строка которая была в файле editnews.php я заменил ее на if( ($member_id['user_group'] == 1 OR $member_id['user_group'] == 2 ) AND $_POST['new_author'] != $member_id['name'] ) { и ничего не получилось Вот мой весь код по смене автора публикации // Смена автора публикации if( $member_id['user_group'] == 1 AND $_POST['new_author'] != $_POST['old_author'] ) { $_POST['new_author'] = $db->safesql( $_POST['new_author'] ); $row = $db->super_query( "SELECT user_id FROM " . USERPREFIX . "_users WHERE name = '{$_POST['new_author']}'" ); if( $row['user_id'] ) { $db->query( "UPDATE " . PREFIX . "_post SET autor='{$_POST['new_author']}' WHERE id='$item_db[0]'" ); $db->query( "UPDATE " . PREFIX . "_post_extras SET user_id='{$row['user_id']}' WHERE news_id='$item_db[0]'" ); $db->query( "UPDATE " . PREFIX . "_images SET author='{$_POST['new_author']}' WHERE news_id='$item_db[0]'" ); $db->query( "UPDATE " . PREFIX . "_files SET author='{$_POST['new_author']}' WHERE news_id='$item_db[0]'" ); $db->query( "UPDATE " . USERPREFIX . "_users SET news_num=news_num+1 where user_id='{$row['user_id']}'" ); $db->query( "UPDATE " . USERPREFIX . "_users SET news_num=news_num-1 where name='$item_db[1]'" ); } else { msg( "error", $lang['addnews_error'], $lang['edit_no_author'], "javascript:history.go(-1)" ); } } // Облако тегов Изменено 26 февраля 2014 пользователем HolySong Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 и ничего не получилось Вы какой группе планируете назначить, с номером ID 2? И менять нужно только ту часть которая касается проверки переменной $member_id['user_group'], зачем вы убрали из проверки AND $_POST['new_author'] != $_POST['old_author'] эту часть трогать не нужно Цитата Ссылка на сообщение Поделиться на других сайтах
HolySong 1 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 (изменено) Автор if( ($member_id['user_group'] == 1 OR $member_id['user_group'] == 2 ) AND $_POST['new_author'] != $_POST['old_author'] ) { если вы имели в виду так, то все равно авторизованный пользователь с ИД 2 не может изменять автора Ради эксперимента поставил вместо 1 2 и все равно ничего не изменилось if( $member_id['user_group'] == 2 AND $_POST['new_author'] != $_POST['old_author'] ) { Изменено 26 февраля 2014 пользователем HolySong Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 нужно еще изменить строчку if( $member_id['user_group'] == 1 ) { $author_info = "<input type=\"text\" name=\"new_author\" size=\"20\" value=\"{$row['autor']}\"><input type=\"hidden\" name=\"old_author\" value=\"{$row['autor']}\" />"; } [/CODE] Цитата Ссылка на сообщение Поделиться на других сайтах
HolySong 1 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 Автор if( ($member_id['user_group'] == 1 OR $member_id['user_group'] == 2 ) { $author_info = "<input type=\"text\" name=\"new_author\" size=\"20\" class=\"edit bk\" style=\"vertical-align: middle;\" value=\"{$row['autor']}\"><input type=\"hidden\" name=\"old_author\" value=\"{$row['autor']}\" />"; } if( ($member_id['user_group'] == 1 OR $member_id['user_group'] == 2 ) AND $_POST['new_author'] != $_POST['old_author'] ) { когда нажимаю редактировать новости Parse error: syntax error, unexpected '{' in /var/www/izhrdo/iz.com.ua/engine/inc/editnews.php on line 1127 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 HolySong, Что то вы неправильно поменяли, смотрите соседний код, я же вам дал кусок кода, и менять нужно только его не повредив соседний код. Цитата Ссылка на сообщение Поделиться на других сайтах
HolySong 1 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 Автор Спасибо огромное, все получилось. Скажите теперь пожалуйста могу ли я выбросить всех с админок? так как много журналистов сидит с правами админа и пока они не выйдут и не зайдут у них останутся те же права. в настройках ДЛЕ вроде нет такого Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 082 Опубликовано: 26 февраля 2014 Рассказать Опубликовано: 26 февраля 2014 Скажите теперь пожалуйста могу ли я выбросить всех с админок? так как много журналистов сидит с правами админа и пока они не выйдут и не зайдут у них останутся те же права. Кому разрешен доступ к админпанели а кому нет, настраивается в настройках групп. И любые изменения в настройках групп вступают в силу незамедлительно, и не нужно для этого входит или нет отдельным журналистам. Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.