From b64a4100fafc71be8cf402467f80b6c0c672fb54 Mon Sep 17 00:00:00 2001 From: Jeff Atwood <jatwood@codinghorror.com> Date: Wed, 17 Apr 2013 16:11:13 -0700 Subject: [PATCH] change "visitor" trust level to "new user" I blame me for this mistake.. visitor means other stuff in practice. New User is correct meaning. --- app/models/post.rb | 6 +-- app/models/site_setting.rb | 6 +-- config/locales/server.cs.yml | 10 ++-- config/locales/server.de.yml | 8 ++-- config/locales/server.en.yml | 30 ++++++------ config/locales/server.fr.yml | 10 ++-- config/locales/server.id.yml | 4 +- config/locales/server.it.yml | 2 +- config/locales/server.pseudo.yml | 10 ++-- config/locales/server.sv.yml | 10 ++-- config/locales/server.zh_CN.yml | 10 ++-- config/locales/server.zh_TW.yml | 10 ++-- lib/promotion.rb | 2 +- lib/trust_level.rb | 4 +- spec/components/post_revisor_spec.rb | 12 ++--- spec/components/promotion_spec.rb | 6 +-- spec/controllers/topics_controller_spec.rb | 2 +- spec/fabricators/user_fabricator.rb | 4 +- spec/models/post_spec.rb | 56 +++++++++++----------- spec/models/report_spec.rb | 4 +- spec/models/user_spec.rb | 6 +-- 21 files changed, 106 insertions(+), 106 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index d533a3a72..ca247d53e 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -135,18 +135,18 @@ class Post < ActiveRecord::Base if acting_user.present? && acting_user.has_trust_level?(:basic) errors.add(:base, I18n.t(:too_many_mentions, count: SiteSetting.max_mentions_per_post)) if raw_mentions.size > SiteSetting.max_mentions_per_post else - errors.add(:base, I18n.t(:too_many_mentions_visitor, count: SiteSetting.visitor_max_mentions_per_post)) if raw_mentions.size > SiteSetting.visitor_max_mentions_per_post + errors.add(:base, I18n.t(:too_many_mentions_newuser, count: SiteSetting.newuser_max_mentions_per_post)) if raw_mentions.size > SiteSetting.newuser_max_mentions_per_post end end def max_images_validator return if acting_user.present? && acting_user.has_trust_level?(:basic) - errors.add(:base, I18n.t(:too_many_images, count: SiteSetting.visitor_max_images)) if image_count > SiteSetting.visitor_max_images + errors.add(:base, I18n.t(:too_many_images, count: SiteSetting.newuser_max_images)) if image_count > SiteSetting.newuser_max_images end def max_links_validator return if acting_user.present? && acting_user.has_trust_level?(:basic) - errors.add(:base, I18n.t(:too_many_links, count: SiteSetting.visitor_max_links)) if link_count > SiteSetting.visitor_max_links + errors.add(:base, I18n.t(:too_many_links, count: SiteSetting.newuser_max_links)) if link_count > SiteSetting.newuser_max_links end diff --git a/app/models/site_setting.rb b/app/models/site_setting.rb index d57453711..07345e2a9 100755 --- a/app/models/site_setting.rb +++ b/app/models/site_setting.rb @@ -79,7 +79,7 @@ class SiteSetting < ActiveRecord::Base setting(:post_undo_action_window_mins, 10) setting(:system_username, '') setting(:max_mentions_per_post, 10) - setting(:visitor_max_mentions_per_post, 2) + setting(:newuser_max_mentions_per_post, 2) setting(:uncategorized_name, 'uncategorized') @@ -168,8 +168,8 @@ class SiteSetting < ActiveRecord::Base setting(:body_min_entropy, 7) setting(:max_word_length, 30) - setting(:visitor_max_links, 2) - setting(:visitor_max_images, 0) + setting(:newuser_max_links, 2) + setting(:newuser_max_images, 0) setting(:title_fancy_entities, true) diff --git a/config/locales/server.cs.yml b/config/locales/server.cs.yml index ceab2759a..ce0cb384b 100644 --- a/config/locales/server.cs.yml +++ b/config/locales/server.cs.yml @@ -20,7 +20,7 @@ cs: one: "Bohužel, můžete zmínit jen jednoho uživatele v jednom příspěvku." few: "Bohužel, můžete zmínit jen %{count} uživatele v jednom příspěvku." other: "Bohužel, můžete zmínit jen %{count} uživatelů v jednom příspěvku." - too_many_mentions_visitor: + too_many_mentions_newuser: zero: "Bohužel, návštěvníci nemohou zmiňovat ostatní uživatele." one: "Bohužel, návštěvníci mohou zmínit jen jednoho uživatele v jednom příspěvku." few: "Bohužel, návštěvníci mohou zmínit jen %{count} uživatele v jednom příspěvku." @@ -103,7 +103,7 @@ cs: post_template: "%{replace_paragraph}\n\nPoužijte toto místo níže pro delší popis a stanovení pravidel diskuze!" trust_levels: - visitor: + newuser: title: "návštěvník" basic: title: "základní uživatel" @@ -503,9 +503,9 @@ cs: regular_requires_likes_given: "Kolik 'líbí se' musí základní uživatel rozdat, než může získat stálou (2) věrohodnost" regular_requires_topic_reply_count: "Do kolika témat musí základní uživatel odpovědět, než může získat stálou (2) věrohodnost" - visitor_max_links: "Kolik odkazů může návštěvník vložit do příspěvku" - visitor_max_images: "Kolik obrázků může návštěvník vložit do příspěvku" - visitor_max_mentions_per_post: "Kolik zmínek přes @name může návštěvník vložit do příspěvku" + newuser_max_links: "Kolik odkazů může návštěvník vložit do příspěvku" + newuser_max_images: "Kolik obrázků může návštěvník vložit do příspěvku" + newuser_max_mentions_per_post: "Kolik zmínek přes @name může návštěvník vložit do příspěvku" max_mentions_per_post: "Maximální počet zmínek přes @name, které mohou být použity v jednom příspěvku" auto_link_images_wider_than: "Obrázky širší než tato hodnota v pixelech budou odkazovány do lightboxu" diff --git a/config/locales/server.de.yml b/config/locales/server.de.yml index d757180a9..b9533e6cc 100644 --- a/config/locales/server.de.yml +++ b/config/locales/server.de.yml @@ -91,7 +91,7 @@ de: post_template: "%{replace_paragraph}\n\nBenutze den folgenden Platz für eine ausführliche Beschreibung sowie für Regeln und zur Diskussion!" trust_levels: - visitor: + newuser: title: "Gast" basic: title: "Anfänger" @@ -427,9 +427,9 @@ de: basic_requires_topics_entered: "Zahl der Themen, die ein neuer Nutzer erstellen muss, bevor er zum sporadischen Nutzer (Vertrauenswürdigkeit 1) aufsteigt." basic_requires_read_posts: "Zahl der Beiträge, die ein neuer Nutzer lesen muss, bevor bevor er zum sporadischen Nutzer (Vertrauenswürdigkeit 1) aufsteigt." basic_requires_time_spent_mins: "Minuten, die ein neuer Nutzer Beiträge lesen muss, bevor er zum sporadischen Nutzer (Vertrauenswürdigkeit 1) aufsteigt." - visitor_max_links: "Maximale Zahl der Links, die Gäste Beiträgen hinzufügen dürfen." - visitor_max_images: "Maximale Zahl der Bilder, die Gäste Beiträgen hinzufügen dürfen." - visitor_max_mentions_per_post: "Maximale Zahl der @Namens-Erwähnungen, die Gäste in Beiträgen nutzen dürfen." + newuser_max_links: "Maximale Zahl der Links, die Gäste Beiträgen hinzufügen dürfen." + newuser_max_images: "Maximale Zahl der Bilder, die Gäste Beiträgen hinzufügen dürfen." + newuser_max_mentions_per_post: "Maximale Zahl der @Namens-Erwähnungen, die Gäste in Beiträgen nutzen dürfen." max_mentions_per_post: "Maximale Zahl der @Namens-Erwähnungen, die man in einem Beitrag nutzen kann." auto_link_images_wider_than: "Pixelbreite, ab der Bilder automatisch verlinkt und verkleinert in einer Lightbox dargestellt werden." diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml index bd51bdbde..c0befed90 100644 --- a/config/locales/server.en.yml +++ b/config/locales/server.en.yml @@ -19,18 +19,18 @@ en: zero: "Sorry, you can't mention other users." one: "Sorry, you can only mention one other user in a post." other: "Sorry, you can only mention %{count} users in a post." - too_many_mentions_visitor: - zero: "Sorry, visitors can't mention other users." - one: "Sorry, visitors can only mention one other user in a post." - other: "Sorry, visitors can only mention %{count} users in a post." + too_many_mentions_newuser: + zero: "Sorry, new users can't mention other users." + one: "Sorry, new users can only mention one other user in a post." + other: "Sorry, new users can only mention %{count} users in a post." too_many_images: - zero: "Sorry, visitors can't put images in posts." - one: "Sorry, visitors can only put one image in a post." - other: "Sorry, visitors can only put %{count} images in a post." + zero: "Sorry, new users can't put images in posts." + one: "Sorry, new users can only put one image in a post." + other: "Sorry, new users can only put %{count} images in a post." too_many_links: - zero: "Sorry, visitors can't put links in posts." - one: "Sorry, visitors can only put one link in a post." - other: "Sorry, visitors can only put %{count} links in a post." + zero: "Sorry, new users can't put links in posts." + one: "Sorry, new users can only put one link in a post." + other: "Sorry, new users can only put %{count} links in a post." just_posted_that: "is too similar to what you recently posted" has_already_been_used: "has already been used" @@ -98,8 +98,8 @@ en: post_template: "%{replace_paragraph}\n\nUse this space for a longer description, as well as to establish any category guidelines or rules.\n\nSome things to consider in any discussion replies below:\n\n- What is this category for? Why should people select this category for their topic?\n\n- How is this different than the other categories we already have?\n\n- Do we need this category?\n\n- Should we merge this with another category, or split it into more categories?\n" trust_levels: - visitor: - title: "visitor" + newuser: + title: "new user" basic: title: "basic user" regular: @@ -497,9 +497,9 @@ en: regular_requires_likes_given: "How many likes a basic user must cast before promotion to regular (2) trust level" regular_requires_topic_reply_count: "How many topics a basic user must reply to before promotion to regular (2) trust level" - visitor_max_links: "How many links a visitor can add to a post" - visitor_max_images: "How many images a visitor can add to a post" - visitor_max_mentions_per_post: "Maximum number of @name notifications a visitor can use in a post" + newuser_max_links: "How many links a new user can add to a post" + newuser_max_images: "How many images a new user can add to a post" + newuser_max_mentions_per_post: "Maximum number of @name notifications a new user can use in a post" max_mentions_per_post: "Maximum number of @name notifications you can use in a post" auto_link_images_wider_than: "Images wider than this, in pixels, will get auto link and lightbox treatment" diff --git a/config/locales/server.fr.yml b/config/locales/server.fr.yml index 777f6fe97..8d463ed8f 100644 --- a/config/locales/server.fr.yml +++ b/config/locales/server.fr.yml @@ -26,7 +26,7 @@ fr: zero: "Désolé, vous ne pouvez pas mentionner d'utilisateur." one: "Désolé, vous ne pouvez mentionner qu'un seul utilisateur." other: "Désolé, vous ne pouvez mentionner que %{count} utilisateur." - too_many_mentions_visitor: + too_many_mentions_newuser: zero: "Désolé, les visiteurs ne peuvent pas mentionner d'utilisateur." one: "Désolé, les visiteurs ne peuvent mentionner qu'un seul utilisateur." other: "Désolé, les visiteurs ne peuvent mentionner que %{count} utilisateur." @@ -107,7 +107,7 @@ fr: post_template: "%{replace_paragraph}\n\nUtilisez l'espace ci-dessous pour une plus longue description, voire pour établir des règles." trust_levels: - visitor: + newuser: title: "visiteur" basic: title: "utilisateur basique" @@ -474,9 +474,9 @@ fr: previous_visit_timeout_hours: "Combien de temps dure une visite avant de la considérer comme la visite 'précédente', en heures." uncategorized_name: "Nom pour les discussions sans catégorie dans la liste des catégories" - visitor_max_links: "Nombre maximum de liens qu'un visiteur peut ajouter à un message" - visitor_max_images: "Nombre maximum d'images qu'un visiteur peut ajouter à un message" - visitor_max_mentions_per_post: "Nombre maximum de référence à un @utilisateur qu'un visiteur peut ajouter à un message" + newuser_max_links: "Nombre maximum de liens qu'un visiteur peut ajouter à un message" + newuser_max_images: "Nombre maximum d'images qu'un visiteur peut ajouter à un message" + newuser_max_mentions_per_post: "Nombre maximum de référence à un @utilisateur qu'un visiteur peut ajouter à un message" max_mentions_per_post: "Le nombre maximal de @mentions que vous pouvez ajouter à un message" rate_limit_create_topic: "Combien de secondes avant de pouvoir démarrer une nouvelle discussion" diff --git a/config/locales/server.id.yml b/config/locales/server.id.yml index 1bc1b55ff..f7b910034 100644 --- a/config/locales/server.id.yml +++ b/config/locales/server.id.yml @@ -80,8 +80,8 @@ id: post_template: "%{replace_paragraph}\n\nUse this space for a longer description, as well as to establish any category guidelines or rules.\n\nSome things to consider in any discussion replies below:\n\n- What is this category for? Why should people select this category for their topic?\n\n- How is this different than the other categories we already have?\n\n- Do we need this category?\n\n- Should we merge this with another category, or split it into more categories?\n" trust_levels: - visitor: - title: "visitor" + newuser: + title: "new user" basic: title: "basic user" regular: diff --git a/config/locales/server.it.yml b/config/locales/server.it.yml index 27d3efcda..d1f8fa8a2 100644 --- a/config/locales/server.it.yml +++ b/config/locales/server.it.yml @@ -80,7 +80,7 @@ it: post_template: "%{replace_paragraph}\n\nUsa lo spazio sottostante per una descrizione più estesa, ed anche per stabilire delle regole per la conversazione!" trust_levels: - visitor: + newuser: title: "visitatore" basic: title: "utente base" diff --git a/config/locales/server.pseudo.yml b/config/locales/server.pseudo.yml index 7c17695c4..cfa5c855f 100644 --- a/config/locales/server.pseudo.yml +++ b/config/locales/server.pseudo.yml @@ -14,7 +14,7 @@ pseudo: zero: '[[ Šóřřý, ýóů čáɳ''ť ɱéɳťíóɳ óťĥéř ůšéřš. ]]' one: '[[ Šóřřý, ýóů čáɳ óɳłý ɱéɳťíóɳ óɳé óťĥéř ůšéř íɳ á ƿóšť. ]]' other: '[[ Šóřřý, ýóů čáɳ óɳłý ɱéɳťíóɳ %{count} ůšéřš íɳ á ƿóšť. ]]' - too_many_mentions_visitor: + too_many_mentions_newuser: zero: '[[ Šóřřý, νíšíťóřš čáɳ''ť ɱéɳťíóɳ óťĥéř ůšéřš. ]]' one: '[[ Šóřřý, νíšíťóřš čáɳ óɳłý ɱéɳťíóɳ óɳé óťĥéř ůšéř íɳ á ƿóšť. ]]' other: '[[ Šóřřý, νíšíťóřš čáɳ óɳłý ɱéɳťíóɳ %{count} ůšéřš íɳ á ƿóšť. ]]' @@ -94,7 +94,7 @@ pseudo: Ůšé ťĥíš šƿáčé ƀéłóŵ ƒóř á łóɳǧéř ďéščříƿťíóɳ, áš ŵéłł áš ťó éšťáƀłíšĥ áɳý řůłéš óř ďíščůššíóɳ! ]] trust_levels: - visitor: + newuser: title: '[[ νíšíťóř ]]' basic: title: '[[ ƀášíč ůšéř ]]' @@ -509,9 +509,9 @@ pseudo: ťó ƀášíč (1) ťřůšť łéνéł ]]' basic_requires_time_spent_mins: '[[ Ĥóŵ ɱáɳý ɱíɳůťéš á ɳéŵ ůšéř ɱůšť řéáď ƿóšťš ƀéƒóřé ƿřóɱóťíóɳ ťó ƀášíč (1) ťřůšť łéνéł ]]' - visitor_max_links: '[[ Ĥóŵ ɱáɳý łíɳǩš á νíšíťóř čáɳ áďď ťó á ƿóšť ]]' - visitor_max_images: '[[ Ĥóŵ ɱáɳý íɱáǧéš á νíšíťóř čáɳ áďď ťó á ƿóšť ]]' - visitor_max_mentions_per_post: '[[ Ϻáхíɱůɱ ɳůɱƀéř óƒ @ɳáɱé ɳóťíƒíčáťíóɳš á νíšíťóř + newuser_max_links: '[[ Ĥóŵ ɱáɳý łíɳǩš á νíšíťóř čáɳ áďď ťó á ƿóšť ]]' + newuser_max_images: '[[ Ĥóŵ ɱáɳý íɱáǧéš á νíšíťóř čáɳ áďď ťó á ƿóšť ]]' + newuser_max_mentions_per_post: '[[ Ϻáхíɱůɱ ɳůɱƀéř óƒ @ɳáɱé ɳóťíƒíčáťíóɳš á νíšíťóř čáɳ ůšé íɳ á ƿóšť ]]' max_mentions_per_post: '[[ Ϻáхíɱůɱ ɳůɱƀéř óƒ @ɳáɱé ɳóťíƒíčáťíóɳš ýóů čáɳ ůšé íɳ á ƿóšť ]]' diff --git a/config/locales/server.sv.yml b/config/locales/server.sv.yml index 6ed56b18e..88003f099 100644 --- a/config/locales/server.sv.yml +++ b/config/locales/server.sv.yml @@ -16,7 +16,7 @@ sv: zero: "Tyvärr, du kan inte omnämna andra användare." one: "Tyvärr, du kan bara omnämna en annan användare i ett inlägg." other: "Tyvärr, du kan bara omnämna %{count} användare i ett inlägg." - too_many_mentions_visitor: + too_many_mentions_newuser: zero: "Tyvärr, besökare kan inte omnämna andra användare." one: "Tyvärr, besökare kan bara omnämna en annan användare i ett inlägg." other: "Tyvärr, besökare kan bara omnämna %{count} användare i ett inlägg." @@ -94,7 +94,7 @@ sv: post_template: "%{replace_paragraph}\n\nUse this space for a longer description, as well as to establish any category guidelines or rules.\n\nSome things to consider in any discussion replies below:\n\n- What is this category for? Why should people select this category for their topic?\n\n- How is this different than the other categories we already have?\n\n- Do we need this category?\n\n- Should we merge this with another category, or split it into more categories?\n" trust_levels: - visitor: + newuser: title: "besökare" basic: title: "vanlig användare" @@ -463,9 +463,9 @@ sv: regular_requires_likes_given: "How many likes a basic user must cast before promotion to regular (2) trust level" regular_requires_topic_reply_count: "How many topics a basic user must reply to before promotion to regular (2) trust level" - visitor_max_links: "How many links a visitor can add to a post" - visitor_max_images: "How many images a visitor can add to a post" - visitor_max_mentions_per_post: "Maximum number of @name notifications a visitor can use in a post" + newuser_max_links: "How many links a new user can add to a post" + newuser_max_images: "How many images a new user can add to a post" + newuser_max_mentions_per_post: "Maximum number of @name notifications a new user can use in a post" max_mentions_per_post: "Maximum number of @name notifications you can use in a post" auto_link_images_wider_than: "Images wider than this, in pixels, will get auto link and lightbox treatment" diff --git a/config/locales/server.zh_CN.yml b/config/locales/server.zh_CN.yml index 2aaaf1355..9a67d33ec 100644 --- a/config/locales/server.zh_CN.yml +++ b/config/locales/server.zh_CN.yml @@ -19,7 +19,7 @@ zh_CN: zero: "抱歉, 你无法@用户。" one: "抱歉, 你一次仅能@一个用户。" other: "抱歉, 你一次仅能@ %{count} 个用户。" - too_many_mentions_visitor: + too_many_mentions_newuser: zero: "抱歉, 游客无法@用户。" one: "抱歉, 游客一次仅能@一个用户。" other: "抱歉, 游客一次仅能@ %{count} 个用户。" @@ -98,7 +98,7 @@ zh_CN: post_template: "%{replace_paragraph}\n\n使用下面的空间输入分类的详细描述信息,可包括在此分类下讨论的规则、内容导向等等。" trust_levels: - visitor: + newuser: title: "访客" basic: title: "初级用户" @@ -481,9 +481,9 @@ zh_CN: regular_requires_likes_given: "一个初级用户升级到常规用户(2)所需要投出的赞数" regular_requires_topic_reply_count: "一个初级用户升级到常规用户(2)所需要回复的主题数量" - visitor_max_links: "一个访问者可以添加到一个帖子里的链接数量" - visitor_max_images: "一个访问者可以加入到一个帖子里的图片数量" - visitor_max_mentions_per_post: "一个访问者可以在一个帖子里使用 @name 提及的最大数量" + newuser_max_links: "一个访问者可以添加到一个帖子里的链接数量" + newuser_max_images: "一个访问者可以加入到一个帖子里的图片数量" + newuser_max_mentions_per_post: "一个访问者可以在一个帖子里使用 @name 提及的最大数量" max_mentions_per_post: "你可以在一个帖子里使用 @name 提及的最大数量" auto_link_images_wider_than: "图片宽度超过此设定像素值的,将被自动附加一个链接并且使用灯箱(lightbox)来展示" diff --git a/config/locales/server.zh_TW.yml b/config/locales/server.zh_TW.yml index 0351d1d23..dc02cab24 100644 --- a/config/locales/server.zh_TW.yml +++ b/config/locales/server.zh_TW.yml @@ -19,7 +19,7 @@ zh_TW: zero: "抱歉, 你無法@用戶。" one: "抱歉, 你一次僅能@一個用戶。" other: "抱歉, 你一次僅能@ %{count} 個用戶。" - too_many_mentions_visitor: + too_many_mentions_newuser: zero: "抱歉, 遊客無法@用戶。" one: "抱歉, 遊客一次僅能@一個用戶。" other: "抱歉, 遊客一次僅能@ %{count} 個用戶。" @@ -98,7 +98,7 @@ zh_TW: post_template: "%{replace_paragraph}\n\n使用下面的空間輸入分類的詳細描述信息,可包括在此分類下討論的規則、內容導向等等。" trust_levels: - visitor: + newuser: title: "訪客" basic: title: "初級用戶" @@ -481,9 +481,9 @@ zh_TW: regular_requires_likes_given: "一個初級用戶升級到常規用戶(2)所需要投出的贊數" regular_requires_topic_reply_count: "一個初級用戶升級到常規用戶(2)所需要回複的主題數量" - visitor_max_links: "一個訪問者可以添加到一個帖子裏的鏈接數量" - visitor_max_images: "一個訪問者可以加入到一個帖子裏的圖片數量" - visitor_max_mentions_per_post: "一個訪問者可以在一個帖子裏使用 @name 提及的最大數量" + newuser_max_links: "一個訪問者可以添加到一個帖子裏的鏈接數量" + newuser_max_images: "一個訪問者可以加入到一個帖子裏的圖片數量" + newuser_max_mentions_per_post: "一個訪問者可以在一個帖子裏使用 @name 提及的最大數量" max_mentions_per_post: "你可以在一個帖子裏使用 @name 提及的最大數量" auto_link_images_wider_than: "圖片寬度超過此設定像素值的,將被自動附加一個鏈接並且使用燈箱(lightbox)來展示" diff --git a/lib/promotion.rb b/lib/promotion.rb index 897d5a3ed..39b315ff7 100644 --- a/lib/promotion.rb +++ b/lib/promotion.rb @@ -21,7 +21,7 @@ class Promotion false end - def review_visitor + def review_newuser return false if @user.topics_entered < SiteSetting.basic_requires_topics_entered return false if @user.posts_read_count < SiteSetting.basic_requires_read_posts return false if (@user.time_read / 60) < SiteSetting.basic_requires_time_spent_mins diff --git a/lib/trust_level.rb b/lib/trust_level.rb index 00260b9fb..31de49fe3 100644 --- a/lib/trust_level.rb +++ b/lib/trust_level.rb @@ -6,7 +6,7 @@ class TrustLevel class << self def levels @levels ||= Enum.new( - :visitor, :basic, :regular, :leader, :elder, start: 0 + :newuser, :basic, :regular, :leader, :elder, start: 0 ) end @@ -21,7 +21,7 @@ class TrustLevel end def compare(current_level, level) - (current_level || levels[:visitor]) >= levels[level] rescue binding.pry + (current_level || levels[:newuser]) >= levels[level] rescue binding.pry end end diff --git a/spec/components/post_revisor_spec.rb b/spec/components/post_revisor_spec.rb index b3994865f..973616adf 100644 --- a/spec/components/post_revisor_spec.rb +++ b/spec/components/post_revisor_spec.rb @@ -4,8 +4,8 @@ require 'post_revisor' describe PostRevisor do let(:topic) { Fabricate(:topic) } - let(:visitor) { Fabricate(:visitor) } - let(:post_args) { {user: visitor, topic: topic} } + let(:newuser) { Fabricate(:newuser) } + let(:post_args) { {user: newuser, topic: topic} } context 'revise' do let(:post) { Fabricate(:post, post_args) } @@ -186,7 +186,7 @@ describe PostRevisor do end end - describe "admin editing a visitor's post" do + describe "admin editing a new user's post" do let(:changed_by) { Fabricate(:admin) } before do @@ -194,18 +194,18 @@ describe PostRevisor do subject.revise!(changed_by, "So, post them here!\nhttp://i.imgur.com/FGg7Vzu.gif") end - it "allows an admin to insert images into a visitor's post" do + it "allows an admin to insert images into a new user's post" do post.errors.should be_blank end end - describe "visitor editing their own post" do + describe "new user editing their own post" do before do SiteSetting.stubs(:too_many_images).returns(0) subject.revise!(post.user, "So, post them here!\nhttp://i.imgur.com/FGg7Vzu.gif") end - it "allows an admin to insert images into a visitor's post" do + it "allows an admin to insert images into a new user's post" do post.errors.should be_present end diff --git a/spec/components/promotion_spec.rb b/spec/components/promotion_spec.rb index 112eba0c5..3f1c3e7e3 100644 --- a/spec/components/promotion_spec.rb +++ b/spec/components/promotion_spec.rb @@ -3,9 +3,9 @@ require 'promotion' describe Promotion do - context "visitor" do + context "newuser" do - let(:user) { Fabricate(:user, trust_level: TrustLevel.levels[:visitor])} + let(:user) { Fabricate(:user, trust_level: TrustLevel.levels[:newuser])} let(:promotion) { Promotion.new(user) } it "doesn't raise an error with a nil user" do @@ -20,7 +20,7 @@ describe Promotion do end it "has not changed the user's trust level" do - user.trust_level.should == TrustLevel.levels[:visitor] + user.trust_level.should == TrustLevel.levels[:newuser] end end diff --git a/spec/controllers/topics_controller_spec.rb b/spec/controllers/topics_controller_spec.rb index 5abf9da82..450037af4 100644 --- a/spec/controllers/topics_controller_spec.rb +++ b/spec/controllers/topics_controller_spec.rb @@ -326,7 +326,7 @@ describe TopicsController do end it "reviews the user for a promotion if they're new" do - user.update_column(:trust_level, TrustLevel.levels[:visitor]) + user.update_column(:trust_level, TrustLevel.levels[:newuser]) Promotion.any_instance.expects(:review) get :show, id: topic.id end diff --git a/spec/fabricators/user_fabricator.rb b/spec/fabricators/user_fabricator.rb index 7951f9617..49a1d120e 100644 --- a/spec/fabricators/user_fabricator.rb +++ b/spec/fabricators/user_fabricator.rb @@ -49,9 +49,9 @@ Fabricator(:another_admin, from: :user) do admin true end -Fabricator(:visitor, from: :user) do +Fabricator(:newuser, from: :user) do name 'Newbie Newperson' username 'newbie' email 'newbie@new.com' - trust_level TrustLevel.levels[:visitor] + trust_level TrustLevel.levels[:newuser] end diff --git a/spec/models/post_spec.rb b/spec/models/post_spec.rb index f46fed3f2..9ac625b42 100644 --- a/spec/models/post_spec.rb +++ b/spec/models/post_spec.rb @@ -87,14 +87,14 @@ describe Post do end describe "maximum images" do - let(:visitor) { Fabricate(:user, trust_level: TrustLevel.levels[:visitor]) } - let(:post_no_images) { Fabricate.build(:post, post_args.merge(user: visitor)) } - let(:post_one_image) { Fabricate.build(:post, post_args.merge(raw: "", user: visitor)) } - let(:post_two_images) { Fabricate.build(:post, post_args.merge(raw: "<img src='http://discourse.org/logo.png'> <img src='http://bbc.co.uk/sherlock.jpg'>", user: visitor)) } - let(:post_with_avatars) { Fabricate.build(:post, post_args.merge(raw: '<img alt="smiley" title=":smiley:" src="/assets/emoji/smiley.png" class="avatar"> <img alt="wink" title=":wink:" src="/assets/emoji/wink.png" class="avatar">', user: visitor)) } - let(:post_with_favicon) { Fabricate.build(:post, post_args.merge(raw: '<img src="/assets/favicons/wikipedia.png" class="favicon">', user: visitor)) } - let(:post_with_thumbnail) { Fabricate.build(:post, post_args.merge(raw: '<img src="/assets/emoji/smiley.png" class="thumbnail">', user: visitor)) } - let(:post_with_two_classy_images) { Fabricate.build(:post, post_args.merge(raw: "<img src='http://discourse.org/logo.png' class='classy'> <img src='http://bbc.co.uk/sherlock.jpg' class='classy'>", user: visitor)) } + let(:newuser) { Fabricate(:user, trust_level: TrustLevel.levels[:newuser]) } + let(:post_no_images) { Fabricate.build(:post, post_args.merge(user: newuser)) } + let(:post_one_image) { Fabricate.build(:post, post_args.merge(raw: "", user: newuser)) } + let(:post_two_images) { Fabricate.build(:post, post_args.merge(raw: "<img src='http://discourse.org/logo.png'> <img src='http://bbc.co.uk/sherlock.jpg'>", user: newuser)) } + let(:post_with_avatars) { Fabricate.build(:post, post_args.merge(raw: '<img alt="smiley" title=":smiley:" src="/assets/emoji/smiley.png" class="avatar"> <img alt="wink" title=":wink:" src="/assets/emoji/wink.png" class="avatar">', user: newuser)) } + let(:post_with_favicon) { Fabricate.build(:post, post_args.merge(raw: '<img src="/assets/favicons/wikipedia.png" class="favicon">', user: newuser)) } + let(:post_with_thumbnail) { Fabricate.build(:post, post_args.merge(raw: '<img src="/assets/emoji/smiley.png" class="thumbnail">', user: newuser)) } + let(:post_with_two_classy_images) { Fabricate.build(:post, post_args.merge(raw: "<img src='http://discourse.org/logo.png' class='classy'> <img src='http://bbc.co.uk/sherlock.jpg' class='classy'>", user: newuser)) } it "returns 0 images for an empty post" do Fabricate.build(:post).image_count.should == 0 @@ -128,11 +128,11 @@ describe Post do context "validation" do before do - SiteSetting.stubs(:visitor_max_images).returns(1) + SiteSetting.stubs(:newuser_max_images).returns(1) end - context 'visitor' do - it "allows a visitor to post below the limit" do + context 'newuser' do + it "allows a new user to post below the limit" do post_one_image.should be_valid end @@ -140,7 +140,7 @@ describe Post do post_two_images.should_not be_valid end - it "doesn't allow a visitor to edit their post to insert an image" do + it "doesn't allow a new user to edit their post to insert an image" do post_no_images.user.trust_level = TrustLevel.levels[:new] post_no_images.save -> { @@ -150,7 +150,7 @@ describe Post do end end - it "allows more images from a non-visitor account" do + it "allows more images from a not-new account" do post_two_images.user.trust_level = TrustLevel.levels[:basic] post_two_images.should be_valid end @@ -160,10 +160,10 @@ describe Post do end describe "maximum links" do - let(:visitor) { Fabricate(:user, trust_level: TrustLevel.levels[:visitor]) } - let(:post_one_link) { Fabricate.build(:post, post_args.merge(raw: "[sherlock](http://www.bbc.co.uk/programmes/b018ttws)", user: visitor)) } - let(:post_two_links) { Fabricate.build(:post, post_args.merge(raw: "<a href='http://discourse.org'>discourse</a> <a href='http://twitter.com'>twitter</a>", user: visitor)) } - let(:post_with_mentions) { Fabricate.build(:post, post_args.merge(raw: "hello @#{visitor.username} how are you doing?") )} + let(:newuser) { Fabricate(:user, trust_level: TrustLevel.levels[:newuser]) } + let(:post_one_link) { Fabricate.build(:post, post_args.merge(raw: "[sherlock](http://www.bbc.co.uk/programmes/b018ttws)", user: newuser)) } + let(:post_two_links) { Fabricate.build(:post, post_args.merge(raw: "<a href='http://discourse.org'>discourse</a> <a href='http://twitter.com'>twitter</a>", user: newuser)) } + let(:post_with_mentions) { Fabricate.build(:post, post_args.merge(raw: "hello @#{newuser.username} how are you doing?") )} it "returns 0 links for an empty post" do Fabricate.build(:post).link_count.should == 0 @@ -184,10 +184,10 @@ describe Post do context "validation" do before do - SiteSetting.stubs(:visitor_max_links).returns(1) + SiteSetting.stubs(:newuser_max_links).returns(1) end - context 'visitor' do + context 'newuser' do it "returns true when within the amount of links allowed" do post_one_link.should be_valid end @@ -250,28 +250,28 @@ describe Post do context "max mentions" do - let(:visitor) { Fabricate(:user, trust_level: TrustLevel.levels[:visitor]) } - let(:post_with_one_mention) { Fabricate.build(:post, post_args.merge(raw: "@Jake is the person I'm mentioning", user: visitor)) } - let(:post_with_two_mentions) { Fabricate.build(:post, post_args.merge(raw: "@Jake @Finn are the people I'm mentioning", user: visitor)) } + let(:newuser) { Fabricate(:user, trust_level: TrustLevel.levels[:newuser]) } + let(:post_with_one_mention) { Fabricate.build(:post, post_args.merge(raw: "@Jake is the person I'm mentioning", user: newuser)) } + let(:post_with_two_mentions) { Fabricate.build(:post, post_args.merge(raw: "@Jake @Finn are the people I'm mentioning", user: newuser)) } - context 'visitor' do + context 'new user' do before do - SiteSetting.stubs(:visitor_max_mentions_per_post).returns(1) + SiteSetting.stubs(:newuser_max_mentions_per_post).returns(1) SiteSetting.stubs(:max_mentions_per_post).returns(5) end - it "allows a visitor to have visitor_max_mentions_per_post mentions" do + it "allows a new user to have newuser_max_mentions_per_post mentions" do post_with_one_mention.should be_valid end - it "doesn't allow a visitor to have more than visitor_max_mentions_per_post mentions" do + it "doesn't allow a new user to have more than newuser_max_mentions_per_post mentions" do post_with_two_mentions.should_not be_valid end end - context "non-visitor" do + context "not a new user" do before do - SiteSetting.stubs(:visitor_max_mentions_per_post).returns(0) + SiteSetting.stubs(:newuser_max_mentions_per_post).returns(0) SiteSetting.stubs(:max_mentions_per_post).returns(1) end diff --git a/spec/models/report_spec.rb b/spec/models/report_spec.rb index a172ba294..7201aa87b 100644 --- a/spec/models/report_spec.rb +++ b/spec/models/report_spec.rb @@ -131,14 +131,14 @@ describe Report do context "with users at different trust levels" do before do - 3.times { Fabricate(:user, trust_level: TrustLevel.levels[:visitor]) } + 3.times { Fabricate(:user, trust_level: TrustLevel.levels[:newuser]) } 2.times { Fabricate(:user, trust_level: TrustLevel.levels[:regular]) } Fabricate(:user, trust_level: TrustLevel.levels[:elder]) end it "returns a report with data" do report.data.should be_present - report.data.find {|d| d[:x] == TrustLevel.levels[:visitor]} [:y].should == 3 + report.data.find {|d| d[:x] == TrustLevel.levels[:newuser]} [:y].should == 3 report.data.find {|d| d[:x] == TrustLevel.levels[:regular]}[:y].should == 2 report.data.find {|d| d[:x] == TrustLevel.levels[:elder]}[:y].should == 1 end diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index 554e74ccc..b4b6dfcfb 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -267,7 +267,7 @@ describe User do describe "trust levels" do # NOTE be sure to use build to avoid db calls - let(:user) { Fabricate.build(:user, trust_level: TrustLevel.levels[:visitor]) } + let(:user) { Fabricate.build(:user, trust_level: TrustLevel.levels[:newuser]) } it "sets to the default trust level setting" do SiteSetting.expects(:default_trust_level).returns(TrustLevel.levels[:elder]) @@ -281,7 +281,7 @@ describe User do end it "is true for your basic level" do - user.has_trust_level?(:visitor).should be_true + user.has_trust_level?(:newuser).should be_true end it "is false for a higher level" do @@ -290,7 +290,7 @@ describe User do it "is true if you exceed the level" do user.trust_level = TrustLevel.levels[:elder] - user.has_trust_level?(:visitor).should be_true + user.has_trust_level?(:newuser).should be_true end it "is true for an admin even with a low trust level" do