Как сделать так, чтобы рейтинг начислялся за добавление записи, статьи, комментария

#32 20 апреля 2012 в 14:42
ideasdigger, извини, а где ссылка именно на добавление находится? Вот я смотрю в профиле и не могу найти, куда пользователь должен тыкнуть, чтоб открылась форма добавления статьи.
#33 20 апреля 2012 в 15:19
Dorimen, чтобы пользователи могли добавлять статьи, в разрешить в админке: контент->статьи->редактировать раздел->редакция(справа)и выставить "принимать статьи от пользователей".
#34 20 апреля 2012 в 15:24

Dorimen, чтобы пользователи могли добавлять статьи, в разрешить в админке: контент->статьи->редактировать раздел->редакция(справа)и выставить "принимать статьи от пользователей".

Miledy

Да это я понимаю. Я о том, где выводится ссылка сайт.ру/content/add.html у пользователя на добавление статьи? Ну где-то в статьях, или в персональном кабинете. Или где сама ссылка.
#35 20 апреля 2012 в 15:35
Dorimen, в личном кабинете пользователя вверху (блог, фото, сообщения… и.д.). как только вы разрешите добавлять, у пользователя появится эта вкладка, у администратора ее нет, вместо нее вкладка "Админка".
#36 20 апреля 2012 в 15:48

Dorimen, в личном кабинете пользователя вверху (блог, фото, сообщения… и.д.). как только вы разрешите добавлять, у пользователя появится эта вкладка, у администратора ее нет, вместо нее вкладка "Админка".

Miledy

С этим разобрался. Так и есть — Вы правы. Спасибо большое за подсказку. А вот рейтинг все равно не добавляется при добавлении статьи. Может потому, что когда пользователь ее добавляет, то она отправляется на модерацию?
#37 20 апреля 2012 в 16:06
Dorimen, попробуй выключи её и добавь контейн
#38 20 апреля 2012 в 16:13

Dorimen, попробуй выключи её и добавь контейн

ideasdigger

А вот где отключить премодерацию, не знаю. Не подскажете?
#39 20 апреля 2012 в 16:34

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

Dorimen

Сам нашел.

ideasdigger, да, если отключить премодерацию, тогда сразу после добавления статьи пользователю добавляются очки рейтинга.
#40 20 апреля 2012 в 16:36
По ходу нужно продумать, чтоб добавлялись очки рейтинга в случае, если новость не просто добавлена, а одобрена модератором. В противном случае, если добавлять очки рейтинг до модерации, но в случае отклонения новости, очки нужно удалять.
#41 20 апреля 2012 в 16:49
ideasdigger, а как быть с записями в блоге, вопросами?
P.S.У вас профиль закрыт, так что карму нельзя добавить. Сделайте открытым, проголосую.
#42 21 апреля 2012 в 13:20
ideasdigger,

или сразу вместо Код PHP: 1 $model->upRating($article['user_id']); вставь Код PHP: 1 $inDB->query("UPDATE cms_users SET rating = rating + 10 WHERE id = '$user_id'");


ничего не получается, пробовала разные варианты, рейтинг не добавляется.
#43 21 апреля 2012 в 15:58
Dorimen, попробуй с модерацией только код добавь в секцию
  1. if ($do == 'publisharticle'){
там где
  1. //регистрируем событие
  2. cmsActions::log('add_article', array(
  3. 'object' => $article['title'],
  4. 'user_id' => $article['user_id'],
  5. 'object_url' => "/{$article['seolink']}.html",
  6. 'object_id' => $article['id'],
  7. 'target' => $article['cat_title'],
  8. 'target_url' => "/{$article['catseolink']}",
  9. 'target_id' => $article['cat_id'],
  10. 'description' => ''
  11. ));
  12.  
добавь
  1. $model->upRating($article['user_id']);
  2.  
что бы получилось
  1. //регистрируем событие
  2. cmsActions::log('add_article', array(
  3. 'object' => $article['title'],
  4. 'user_id' => $article['user_id'],
  5. 'object_url' => "/{$article['seolink']}.html",
  6. 'object_id' => $article['id'],
  7. 'target' => $article['cat_title'],
  8. 'target_url' => "/{$article['catseolink']}",
  9. 'target_id' => $article['cat_id'],
  10. 'description' => ''
  11. ));
  12.  
  13. $model->upRating($article['user_id']);
  14.  
и создай новую статью и промодерируй её)
Miledy, статьи публикуешь через сайт или админку? модерация включена?
#44 21 апреля 2012 в 16:02

ideasdigger, а как быть с записями в блоге, вопросами? P.S.У вас профиль закрыт, так что карму нельзя добавить. Сделайте открытым, проголосую.

Miledy
блоги при добавлении записи
в model.php /component/blog/
  1.  
  2. /* ==================================================================================================== */
  3. // добавляем рейтинга
  4. /* ==================================================================================================== */
  5. public function upRating($user_id) {
  6.  
  7. $this->inDB->query("UPDATE cms_users SET rating = rating + 10 WHERE id = '$user_id'");
  8.  
  9. return true;
  10.  
  11. }
  12.  
в frontend.php

секция
  1. if ($do=='newpost'){
найти код
  1. $post_id = $model->addPost(array(
  2. 'user_id'=>$user_id,
  3. 'cat_id'=>$cat_id,
  4. 'id'=>$id,
  5. 'title'=>$title,
  6. 'feel'=>$feel,
  7. 'music'=>$music,
  8. 'content'=>$content,
  9. 'ballow_who'=>$blog['allow_who'],
  10. 'allow_who'=>$allow_who,
  11. 'published'=>$published,
  12. 'tags'=>$tags,
  13. 'comments'=>$comments
  14. ));
  15.  
добавить
  1. $model->upRating($blog['user_id']);
что бы получилось:
  1. $post_id = $model->addPost(array(
  2. 'user_id'=>$user_id,
  3. 'cat_id'=>$cat_id,
  4. 'id'=>$id,
  5. 'title'=>$title,
  6. 'feel'=>$feel,
  7. 'music'=>$music,
  8. 'content'=>$content,
  9. 'ballow_who'=>$blog['allow_who'],
  10. 'allow_who'=>$allow_who,
  11. 'published'=>$published,
  12. 'tags'=>$tags,
  13. 'comments'=>$comments
  14. ));
  15. $model->upRating($blog['user_id']);
вопросы при добавлении вопроса
находим секцию
  1. if ($do=='sendquest'){
находим код:
  1.  
  2. //регистрируем событие
  3. cmsActions::log('add_quest', array(
  4. 'object' => 'вопрос',
  5. 'object_url' => '/faq/quest'.$quest_id.'.html',
  6. 'object_id' => $quest_id,
  7. 'target' => $category,
  8. 'target_url' => '/faq/'.$category_id,
  9. 'target_id' => $category_id,
  10. 'description' => strip_tags( strlen(strip_tags($message))>100 ? substr($message, 0, 100) : $message )
  11. ));
  12.  
добавляем:
  1. $model->upRating($inUser->id);
что бы получилось:
  1. //регистрируем событие
  2. cmsActions::log('add_quest', array(
  3. 'object' => 'вопрос',
  4. 'object_url' => '/faq/quest'.$quest_id.'.html',
  5. 'object_id' => $quest_id,
  6. 'target' => $category,
  7. 'target_url' => '/faq/'.$category_id,
  8. 'target_id' => $category_id,
  9. 'description' => strip_tags( strlen(strip_tags($message))>100 ? substr($message, 0, 100) : $message )
  10. ));
  11. $model->upRating($inUser->id);
и в model.php
  1.  
  2. /* ==================================================================================================== */
  3. // добавляем рейтинга
  4. /* ==================================================================================================== */
  5. public function upRating($user_id) {
  6.  
  7. $this->inDB->query("UPDATE cms_users SET rating = rating + 10 WHERE id = '$user_id'");
  8.  
  9. return true;
  10.  
  11. }
  12.  
#45 21 апреля 2012 в 22:49
ideasdigger,

и создай новую статью и промодерируй её)

ideasdigger
, шикарный вид. теперь все работает как положено. :)
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.