Alien2001 Опубликовано 5 Апреля 2003 Жалоба Поделиться Опубликовано 5 Апреля 2003 Предлагаю сделать две модификации, связанные друг с другом: 1. Удаление отдельных сообщений в теме Насколько я понимаю, сейчас можно лишь удалить всю тему целиком, но не отдельные сообщения. А было бы полезно. Предположим, была хорошая тема, но вдруг заявился некто и поругался с участниками в этой теме. Можно, конечно, исправить его сообщение, удалив в нем все. Но некрасиво. Удаление сообщения позволило бы минимизировать ущерб от появления нехорошего товарища, исключив всякое упоминание о нем. При удалении сообщения должна удаляться вся следующая за ним поветвь сообщений. 2. Частичное удаление и восстановление тем (сообщений) Сейчас темы удаляются безвозвратно. Это, на мой взгляд, неправильно и небезопасно. К тому же, всякое случается, и не всегда модераторы действуют объективно. Было бы полезно, чтобы темы сначала лишь помечались, как удаленные, модераторы бы их видели и могли восстановить. Второй этап удаления могут производить лишь админы, после этого модераторы не видят уже и этих тем. И, наконец, безвозвратное удаление тем и сообщений должно производиться через Админцентр (что-то типа "Чистка базы удаленных сообщений"). Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
dfx Опубликовано 5 Апреля 2003 Жалоба Поделиться Опубликовано 5 Апреля 2003 1. Это и так в стандарте есть, ты чего то путаешь... 2. Хорошее предложение, было бы не плохо... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Alien2001 Опубликовано 5 Апреля 2003 Автор Жалоба Поделиться Опубликовано 5 Апреля 2003 Это и так в стандарте есть, ты чего то путаешь... Да? Странно, и как это сделать, как, удалить отдельное сообщение в теме? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GRINGO Опубликовано 5 Апреля 2003 Жалоба Поделиться Опубликовано 5 Апреля 2003 Alien2001 Если зайдёшь как админ или модер с правами удалять и редакитровать темы, то увидешь кнопку Удалить, по английски Делэйт жми на нёё и удаляй! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Valera Опубликовано 6 Апреля 2003 Жалоба Поделиться Опубликовано 6 Апреля 2003 Насчет 2.Можно скрытый форум (назови его Recycle Bin) создать и все топики сомнительного толка перенаправлять туда (в Recycle Bin), а когда необходимоть в них пропала просто очищаешь Recycle Bin и все.Модераторы могут только перемещать в Recycle Bin, и только админы могут зачищать Recycle Bin. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
ShaD Опубликовано 14 Апреля 2003 Жалоба Поделиться Опубликовано 14 Апреля 2003 Valera а как это создать тоесть как создать второй под форум или же ресайкл бин откуда можно было бы вызволять удаленные темы? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GRINGO Опубликовано 14 Апреля 2003 Жалоба Поделиться Опубликовано 14 Апреля 2003 ShaD Создаёшь форум из админки и даёшь пермишин читать, писать и пр только админам и можераторам... Пользователи его не видят ..Видят только моды и админы. Скидываешь ненужное туда путём перемещения а если понадобится переместил обратно, только ссылку на то что форум перемещён убирайте Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
ShaD Опубликовано 26 Апреля 2003 Жалоба Поделиться Опубликовано 26 Апреля 2003 GRINGO классная Идея А что если случайно нажал на Удалить .. Это же потом не востановить так ? кроме бакепа конечно же Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GRINGO Опубликовано 26 Апреля 2003 Жалоба Поделиться Опубликовано 26 Апреля 2003 ShaD А что если случайно нажал на Удалить .. Это же потом не востановить так ? кроме бакепа конечно жеточно так. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Alien2001 Опубликовано 1 Мая 2003 Автор Жалоба Поделиться Опубликовано 1 Мая 2003 Если честно, то мне такая идея не нравится. Буду пытаться все же сделать в том виде, как я это изложил в начале темы. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
WishMaster Опубликовано 1 Мая 2003 Жалоба Поделиться Опубликовано 1 Мая 2003 Может тебе такой хак подойдет ? -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+ +--+ Post Deleted Hack +--+ v1.0.2 +--+---------------------------------------------------------------------------+--+ Instead of deleting the post, we simply show an message telling us the +--+ post was deleted by ... (name). +--+---------------------------------------------------------------------------+--+ If you upgrade from the first version, please only run step 5+ +--+---------------------------------------------------------------------------+--+ If upgrading from version 1.0.1 please run step 6+ +--+ Step 1: +--+ Open /Skin/sX/skin_topic.php (where X is your skin ID, repeat this step +--+ for all the skins you use) +--+ replace this: +-class skin_topic {-+ with this: +-class skin_topic { function RenderDeleted($data) {global $ibforums;return <<<EOF <!--Begin Msg Number {$data['pid']}--> <tr> <td valign='middle' class='posthead'><a name='entry{$data['pid']}'></a><span class='{$data['name_css']}'>{$data[postER]['name']}</span></td> <td class='posthead'><span class='postdetails'><b>{$ibforums->lang['deleted_by']}</b> {$data['deleter_name']}</span></td> </td> </tr> <tr> <td class='postsep' colspan='2'><img src='{$ibforums->vars['img_url']}/spacer.gif' alt='' width='1' height='1'></td> </tr> <!-- end Message -->EOF;}-+---------------------------------------------------------------------------+--+ Step 2: +--+ Open /sources/Topics.php +--+ replace this: (around line 630) +- $this->output .= $this->html->RenderRow( array( 'POST' => $row, 'POSTER' => $poster ) );-+ with this: +- if ($row['post_deleted']) { $this->output .= $this->html->RenderDeleted( array( 'POST' => $row, 'POSTER' => $poster ) ); } else { $this->output .= $this->html->RenderRow( array( 'POST' => $row, 'POSTER' => $poster ) ); }-+---------------------------------------------------------------------------+--+ Step 3: +--+ Open /sources/Moderate.php +--+ replace this: (around line 1502) +- $DB->query("DELETE from ibf_posts WHERE topic_id='".$this->topic['tid']."' and pid='".$post['pid']."'");-+ with this: +- $DB->query("UPDATE ibf_posts SET post_deleted='1', deleter_name='{$ibforums->member['name']}', post='' WHERE topic_id='".$this->topic['tid']."' and pid='".$post['pid']."'");-+ +--+ replace this: (somewhere below the previous replacement) +- $DB->query("SELECT post_date, author_id, author_name from ibf_posts WHERE topic_id='".$this->topic['tid']."' and queued <> 1 ORDER BY pid DESC");-+ with this: +- $DB->query("SELECT post_date, author_id, author_name from ibf_posts WHERE topic_id='".$this->topic['tid']."' and queued <> 1 and post_deleted IS NULL ORDER BY pid DESC");-+---------------------------------------------------------------------------+--+ Step 4: +--+ Open your ACP, and slip into your SQL management, then click on the +--+ mySQL Toolbox, scroll down this page, and then run this Query: +-ALTER TABLE `ibf_posts` ADD `post_deleted` TINYINT( 1 ) AFTER `pid` ,ADD `deleter_name` VARCHAR( 32 ) NOT NULL AFTER `post_deleted` ;-+---------------------------------------------------------------------------+--+ Step 5: +--+ Open /lang/XX/lang_topic.php (where XX is your language dir) +--+ on the last line you will find: +-?>-+ add before this: +-// post delete hack$lang['deleted_by'] = 'This post was deleted by ';//end-+---------------------------------------------------------------------------+--+ Step 6: +--+ Open /skin/sX/skin_post.php (where X is your skin ID, repeat this step +--+ for all the skins you use) +--+ replace this: +-class skin_post {-+ with this: +-class skin_post { function TopicSummary_deleted($data) {global $ibforums;return <<<EOF<tr class='postdetails'> <td class='row1' align='left' valign='top' width='20%'><b>{$data['author']}</b></td> <td class='row1' align='left' valign='top' width='80%'><span class='postdetails'><b>{$ibforums->lang['deleted_by']}</b> {$data['deleter_name']}</span></td> </tr>EOF;}-+---------------------------------------------------------------------------+--+ Step 7: +--+ Open /lang/XX/lang_post.php (where XX is your language dir) +--+ on the last line you will find: +-?>-+ add before this: +-// post delete hack$lang['deleted_by'] = 'This post was deleted by ';//end-+---------------------------------------------------------------------------+--+ Step 8: +--+ open /sources/Post.php +--+ replace this: (about line 1010) +- $this->output .= $this->html->TopicSummary_body( $row );-+ with this: +- if ($row['post_deleted']) { $this->output .= $this->html->TopicSummary_deleted( $row ); } else { $this->output .= $this->html->TopicSummary_body( $row ); }-+---------------------------------------------------------------------------+--+ +--+ Well that's all folks, happy modding! +--+ Thanks to: +--+ - Matt +--+ - Myself +--+ +--+ Website: www.ibforums.nl +--+ Email: -- (please contact me at the ibresource/ibplanet forums) +--+ Copyright: © 2003 - Bouke Haarsma (Thй Netherlands) +--+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Matrix Опубликовано 1 Мая 2003 Жалоба Поделиться Опубликовано 1 Мая 2003 Насколько я понимаю, сейчас можно лишь удалить всю тему целиком, но не отдельные сообщенияхе .... повеселил Можно скрытый форум (назови его Recycle Bin) создать и все топики сомнительного толка перенаправлять туда (в Recycle Bin), а когда необходимоть в них пропала просто очищаешь Recycle Bin и все.я у себя даааавно так сделал.... на всякий случай... WishMaster -+ Instead of deleting the post, we simply show an message telling us the +--+ post was deleted by ... (name). +-а теперь прочитай по-внимательнее.... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.