Merge remote-tracking branch 'origin/master'

# Conflicts:
#	package.json
v1.18.x
barisusakli 9 years ago
commit 5a2062ba32

@ -2,7 +2,7 @@
"name": "nodebb",
"license": "GPL-3.0",
"description": "NodeBB Forum",
"version": "0.9.0",
"version": "0.9.1",
"homepage": "http://www.nodebb.org",
"repository": {
"type": "git",
@ -29,11 +29,11 @@
"express": "^4.9.5",
"express-session": "^1.8.2",
"heapdump": "^0.3.0",
"html-to-text": "1.3.2",
"jimp": "0.2.19",
"html-to-text": "1.5.0",
"jimp": "0.2.20",
"less": "^2.0.0",
"logrotate-stream": "^0.2.3",
"lru-cache": "^2.6.1",
"lru-cache": "3.2.0",
"mime": "^1.3.4",
"minimist": "^1.1.1",
"mkdirp": "~0.5.0",
@ -41,14 +41,14 @@
"nconf": "~0.8.2",
"nodebb-plugin-composer-default": "1.0.24",
"nodebb-plugin-dbsearch": "0.2.18",
"nodebb-plugin-emoji-extended": "0.4.16",
"nodebb-plugin-emoji-extended": "0.4.17",
"nodebb-plugin-markdown": "4.0.8",
"nodebb-plugin-mentions": "1.0.10",
"nodebb-plugin-mentions": "1.0.11",
"nodebb-plugin-soundpack-default": "0.1.5",
"nodebb-plugin-spam-be-gone": "0.4.5",
"nodebb-rewards-essentials": "0.0.6",
"nodebb-theme-lavender": "3.0.0",
"nodebb-theme-persona": "4.0.37",
"nodebb-theme-lavender": "3.0.2",
"nodebb-theme-persona": "4.0.39",
"nodebb-theme-vanilla": "5.0.15",
"nodebb-widget-essentials": "2.0.5",
"nodemailer": "0.7.1",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> أشعَرَ بمشاركة مخلة في <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> أضاف ردا إلى: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> أنشأ موضوعًا جديدًا: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> ذكرَ اسمك في <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> صار يتابعك.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "تم التحقق من عنوان البريد الإلكتروني",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> докладва Ваша публикация в <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> публикува отговор на: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> публикува нова тема: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> Ви спомена в <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> започна да Ви следва.",
"new_register": "<strong>%1</strong> изпрати заявка за регистрация.",
"email-confirmed": "Е-пощата беше потвърдена",

@ -22,7 +22,7 @@
"pagination.out_of": "%2 এর মাঝে %1",
"pagination.enter_index": "সূচক লিখুন",
"header.admin": "অ্যাডমিন",
"header.categories": "Categories",
"header.categories": "বিভাগ",
"header.recent": "সাম্প্রতিক",
"header.unread": "অপঠিত",
"header.tags": "ট্যাগ",
@ -52,7 +52,7 @@
"views": "দেখেছেন",
"reputation": "সন্মাননা",
"read_more": "আরো পড়ুন",
"more": "More",
"more": "আরো...",
"posted_ago_by_guest": "অতিথি পোস্ট করেছেন %1",
"posted_ago_by": " %1 %2 দ্বারা পোস্টকৃত",
"posted_ago": "পোস্ট করেছেন %1",
@ -83,5 +83,5 @@
"follow": "Follow",
"unfollow": "Unfollow",
"delete_all": "সব মুছে ফেলুন",
"map": "Map"
"map": "ম্যাপ"
}

@ -1,7 +1,7 @@
{
"username-email": "Username / Email",
"username": "Username",
"email": "Email",
"username-email": "ইউজারনেম / ইমেইল",
"username": "ইউজারনেম",
"email": "ইমেইল",
"remember_me": "মনে রাখুন",
"forgot_password": "পাসওয়ার্ড ভুলে গিয়েছেন?",
"alternative_logins": "বিকল্প প্রবেশ",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> একটি উত্তর দিয়েছেন: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong>, <strong>%2</strong> এ আপনার নাম উল্লেখ করেছেন",
"user_started_following_you": "<strong>%1</strong> আপনাকে অনুসরন করা শুরু করেছেন।",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "ইমেইল নিশ্চিত করা হয়েছে",

@ -13,12 +13,12 @@
"users/map": "User Map",
"users/search": "User Search",
"notifications": "বিজ্ঞপ্তি",
"tags": "Tags",
"tags": "ট্যাগসমূহ",
"tag": "Topics tagged under \"%1\"",
"register": "Register an account",
"login": "Login to your account",
"reset": "Reset your account password",
"categories": "Categories",
"categories": "বিভাগ",
"groups": "Groups",
"group": "%1 group",
"chats": "Chats",

@ -15,5 +15,5 @@
"alternative_registration": "বিকল্প নিবন্ধন",
"terms_of_use": "নিয়মাবলী",
"agree_to_terms_of_use": "আমি নিয়মাবলী মেনে চলতে সম্মতি জানালাম",
"registration-added-to-queue": "Your registration has been added to the approval queue. You will receive an email when it is accepted by an administrator."
"registration-added-to-queue": "আপনার নিবন্ধনটি এ্যাপ্লুভাল তালিকায় যুক্ত হয়েছে। একজন এডমিনিস্ট্রেটর কর্তৃক নিবন্ধন গৃহীত হলে আপনি একটি মেইল পাবেন। "
}

@ -1,40 +1,40 @@
{
"results_matching": "\"%2\" এর সাথে মিলিয়ে %1 ফলাফল পাওয়া গেছে, ( %3 seconds সময় লেগেছে )",
"no-matches": "No matches found",
"advanced-search": "Advanced Search",
"in": "In",
"titles": "Titles",
"titles-posts": "Titles and Posts",
"posted-by": "Posted by",
"in-categories": "In Categories",
"search-child-categories": "Search child categories",
"reply-count": "Reply Count",
"at-least": "At least",
"at-most": "At most",
"post-time": "Post time",
"no-matches": "কোন মিল খুঁজে পাওয়া যায় নি",
"advanced-search": "এডভান্সড সার্চ",
"in": "এর মধ্যে",
"titles": "টাইটেলস",
"titles-posts": "টাইটেল এবং পোস্ট সমূহ",
"posted-by": "পোষ্ট করেছেন",
"in-categories": "বিভাগের ভিতরে",
"search-child-categories": "উপবিভাগের ভিতরে",
"reply-count": "রিপ্লাই কাউন্ট",
"at-least": "কমপক্ষে",
"at-most": "সর্বোচ্চ",
"post-time": "পোস্টের সময়",
"newer-than": "Newer than",
"older-than": "Older than",
"any-date": "Any date",
"yesterday": "Yesterday",
"one-week": "One week",
"two-weeks": "Two weeks",
"one-month": "One month",
"three-months": "Three months",
"six-months": "Six months",
"one-year": "One year",
"sort-by": "Sort by",
"last-reply-time": "Last reply time",
"topic-title": "Topic title",
"number-of-replies": "Number of replies",
"number-of-views": "Number of views",
"topic-start-date": "Topic start date",
"username": "Username",
"any-date": "যেকোন তারিখ",
"yesterday": "গতকাল",
"one-week": "এক সপ্তাহ",
"two-weeks": "দুই সপ্তাহ",
"one-month": "এক মাস",
"three-months": "তিন মাস",
"six-months": "ছয় মাস",
"one-year": "এক বছর",
"sort-by": "সাজানোর ভিত্তি",
"last-reply-time": "সর্বশেষ রিপ্লাইয়ের সময়",
"topic-title": "টপিকের টাইটেল",
"number-of-replies": "রিপ্লাইয়ের সংখ্যা",
"number-of-views": "সর্বমোট ভিউ",
"topic-start-date": "টপিক শুরুর তারিখ",
"username": "ইউজারনেম",
"category": "বিভাগ",
"descending": "In descending order",
"ascending": "In ascending order",
"save-preferences": "Save preferences",
"descending": "বড় থেকে ছোট অর্ডারে",
"ascending": "ছোট থেকে বড় অর্ডারে",
"save-preferences": "প্রেফারেন্স সেভ",
"clear-preferences": "Clear preferences",
"search-preferences-saved": "Search preferences saved",
"search-preferences-cleared": "Search preferences cleared",
"show-results-as": "Show results as"
"show-results-as": "ফলাফল দেখানো হোক : "
}

@ -2,17 +2,17 @@
"banned": "নিষিদ্ধ",
"offline": "অফলাইন",
"username": "সদস্যের নাম",
"joindate": "Join Date",
"postcount": "Post Count",
"joindate": "নিবন্ধন তারিখ",
"postcount": "সর্বমোট পোষ্ট",
"email": "ইমেইল",
"confirm_email": "ইমেইল নিশ্চিত করুন",
"ban_account": "Ban Account",
"ban_account_confirm": "Do you really want to ban this user?",
"unban_account": "Unban Account",
"ban_account": "একাউন্ট নিষিদ্ধ করুন",
"ban_account_confirm": "আপনি কি নিশ্চিত যে এই সদস্যকে নিষিদ্ধ করতে চান ?",
"unban_account": "নিষেদ্ধাজ্ঞা তুলে নিন",
"delete_account": "একাউন্ট মুছে ফেলুন",
"delete_account_confirm": "আপনি কি নিশ্চিত যে আপনি আপনার একাউন্ট মুছে ফেলতে চান ? <br /><strong>এই কাজটির ফলে আপনার কোন তথ্য পুনরূদ্ধার করা সম্ভব নয় </strong><br /><br /> নিশ্চিত করতে আপনার ইউজারনেম প্রবেশ করান। ",
"delete_this_account_confirm": "Are you sure you want to delete this account? <br /><strong>This action is irreversible and you will not be able to recover any data</strong><br /><br />",
"account-deleted": "Account deleted",
"account-deleted": "একাউন্ট মুছে ফেলা হয়েছে",
"fullname": "পুর্ণ নাম",
"website": "ওয়েবসাইট",
"location": "স্থান",
@ -23,23 +23,23 @@
"profile_views": "প্রোফাইল দেখেছেন",
"reputation": "সন্মাননা",
"favourites": "পছন্দের তালিকা",
"watched": "Watched",
"watched": "দেখা হয়েছে",
"followers": "যাদের অনুসরণ করছেন",
"following": "যারা আপনাকে অনুসরণ করছে",
"aboutme": "About me",
"aboutme": "আমার সম্পর্কে: ",
"signature": "স্বাক্ষর",
"birthday": "জন্মদিন",
"chat": "বার্তালাপ",
"chat_with": "Chat with %1",
"chat_with": "চ্যাট উইথ %1",
"follow": "অনুসরন করুন",
"unfollow": "অনুসরন করা থেকে বিরত থাকুন",
"more": "More",
"more": "আরো...",
"profile_update_success": "প্রোফাইল আপডেট সফল হয়েছে",
"change_picture": "ছবি পরিবর্তন",
"change_username": "Change Username",
"change_email": "Change Email",
"change_username": "ইউজারনেম পরিবর্তন করুন",
"change_email": "ইমেইল পরিবর্তন করুন",
"edit": "সম্পাদনা",
"default_picture": "Default Icon",
"default_picture": "ডিফল্ট আইকন",
"uploaded_picture": "ছবি আপলোড করুন",
"upload_new_picture": "নতুন ছবি আপলোড করুন",
"upload_new_picture_from_url": "URL থেকে নতুন ছবি আপলোড করুন",
@ -57,8 +57,8 @@
"password_same_as_username": "Your password is the same as your username, please select another password.",
"upload_picture": "ছবি আপলোড করুন",
"upload_a_picture": "ছবি (একটি) আপলোড করুন",
"remove_uploaded_picture": "Remove Uploaded Picture",
"image_spec": "You may only upload PNG, JPG, or BMP files",
"remove_uploaded_picture": "আপলোড করা ছবিটি সরিয়ে নাও",
"image_spec": "আপনি শুধুমাত্র PNG, JPG অথবা BMP ফাইল আপলোড করতে পারবেন",
"settings": "সেটিংস",
"show_email": "আমার ইমেইল দেখাও",
"show_fullname": "আমার সম্পূর্ণ নাম দেখাও",
@ -70,21 +70,21 @@
"digest_weekly": "সাপ্তাহিক",
"digest_monthly": "মাসিক",
"send_chat_notifications": "যদি আমি অনলাইনে না থাকি, সেক্ষেত্রে নতুন চ্যাট মেসেজ আসলে আমাকে ইমেইল করুন",
"send_post_notifications": "Send an email when replies are made to topics I am subscribed to",
"settings-require-reload": "Some setting changes require a reload. Click here to reload the page.",
"send_post_notifications": "আমার সাবস্ক্রাইব করা টপিকগুলোতে রিপ্লাই করা হলে আমাকে মেইল করা হোক",
"settings-require-reload": "কিছু কিছু পরিবর্তনের জন্য রিলোড করা আবশ্যক। পেজটি রিলোড করতে এখানে ক্লিক করুন",
"has_no_follower": "এই সদস্যের কোন ফলোয়ার নেই :(",
"follows_no_one": "এই সদস্য কাউকে ফলো করছেন না :(",
"has_no_posts": "This user hasn't posted anything yet.",
"has_no_topics": "This user hasn't posted any topics yet.",
"has_no_watched_topics": "This user hasn't watched any topics yet.",
"has_no_posts": "এই সদস্য এখন পর্যন্ত কোন পোস্ট করেন নি",
"has_no_topics": "এই সদস্য এখনো কোন টপিক করেন নি",
"has_no_watched_topics": "এই সদস্য এখনো কোন টপিক দেখেন নি",
"email_hidden": "ইমেইল গোপন রাখা হয়েছে",
"hidden": "গোপন করা হয়েছে",
"paginate_description": "Paginate topics and posts instead of using infinite scroll",
"paginate_description": "ইনফাইনাইট স্ক্রলের বদলে টপিক ও পোস্টের জন্য পেজিনেশন ব্যাবহার করা হোক",
"topics_per_page": "প্রতি পেজে কতগুলো টপিক থাকবে",
"posts_per_page": "প্রতি পেইজে কতগুলো পোষ্ট থাকবে",
"notification_sounds": "Play a sound when you receive a notification",
"notification_sounds": "নোটিফিকেশনের জন্য নোটিফিকেশন সাউন্ড এনাবল করুন",
"browsing": "Browsing সেটিংস",
"open_links_in_new_tab": "Open outgoing links in new tab",
"open_links_in_new_tab": "আউটগোয়িং লিংকগুলো নতুন ট্যাবে খুলুন",
"enable_topic_searching": "In-Topic সার্চ সক্রীয় করো",
"topic_search_help": "If enabled, in-topic searching will override the browser's default page search behaviour and allow you to search through the entire topic, instead of what is only shown on screen",
"follow_topics_you_reply_to": "Follow topics that you reply to",

@ -5,17 +5,17 @@
"search": "খুঁজুন",
"enter_username": "ইউজারনেম এর ভিত্তিতে সার্চ করুন",
"load_more": "আরো লোড করুন",
"users-found-search-took": "%1 user(s) found! Search took %2 seconds.",
"filter-by": "Filter By",
"online-only": "Online only",
"picture-only": "Picture only",
"invite": "Invite",
"invitation-email-sent": "An invitation email has been sent to %1",
"user_list": "User List",
"recent_topics": "Recent Topics",
"popular_topics": "Popular Topics",
"unread_topics": "Unread Topics",
"categories": "Categories",
"tags": "Tags",
"map": "Map"
"users-found-search-took": "%1 জন সদস্য(দের) খুঁজে পাওয়া গেছে। খুঁজতে সময় লেগেছে %2 সেকেন্ড ",
"filter-by": "ফিল্টার করার ধরন",
"online-only": "শুধুমাত্র অনলাইন",
"picture-only": "শুধুমাত্র ছবি",
"invite": "ইনভাইট",
"invitation-email-sent": "%1 কে একটি ইনভাইটেশন ইমেইল পাঠানো হয়েছে",
"user_list": "সদস্য তালিকা",
"recent_topics": "সাম্প্রতিক টপিক",
"popular_topics": "জনপ্রিয় টপিক",
"unread_topics": "অপঠিত টপিক",
"categories": "বিভাগ",
"tags": "ট্যাগসমূহ",
"map": "ম্যাপ"
}

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email Confirmed",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> har anmeldt et indlæg i <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> har skrevet et svar til: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> har oprettet en ny tråd: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> nævnte dig i <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> har valgt at følge dig.",
"new_register": "<strong>%1</strong> har sendt en registrerings anmodning.",
"email-confirmed": "Email bekræftet",

@ -6,7 +6,7 @@
"greeting_with_name": "Hallo %1",
"welcome.text1": "Vielen Dank für die Registrierung bei %1!",
"welcome.text2": "Um dein Konto vollständig zu aktivieren, müssen wir überprüfen, ob du Besitzer der E-Mail-Adresse bist, mit der du dich registriert hast.",
"welcome.text3": "Ein Administrator hat deine Registration aktzeptiert. Du kannst dich jetzt mit deinem Benutzernamen/Passwort einloggen.",
"welcome.text3": "Ein Administrator hat deine Registrierung aktzeptiert. Du kannst dich jetzt mit deinem Benutzernamen/Passwort einloggen.",
"welcome.cta": "Klicke hier, um deine E-Mail-Adresse zu bestätigen.",
"invitation.text1": "%1 hat dich eingeladen %2 beizutreten",
"invitation.ctr": "Klicke hier, um ein Konto zu erstellen.",
@ -25,7 +25,7 @@
"notif.chat.cta": "Klicke hier, um die Unterhaltung fortzusetzen",
"notif.chat.unsub.info": "Diese Chat-Benachrichtigung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.",
"notif.post.cta": "Hier klicken, um das gesamte Thema zu lesen",
"notif.post.unsub.info": "Diese Mitteilung wurde wegen ihrer Abonnement-Einstellung gesendet.",
"notif.post.unsub.info": "Diese Mitteilung wurde dir aufgrund deiner Abonnement-Einstellungen gesendet.",
"test.text1": "Dies ist eine Test-E-Mail, um zu überprüfen, ob der E-Mailer deines NodeBB korrekt eingestellt wurde.",
"unsub.cta": "Klicke hier, um diese Einstellungen zu ändern.",
"closing": "Danke!"

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> hat einen Beitrag in </strong>%2</strong> gemeldet",
"user_posted_to": "<strong>%1</strong> hat auf <strong>%2</strong> geantwortet.",
"user_posted_topic": "<strong>%1</strong> hat ein neues Thema erstellt: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> erwähnte dich in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> folgt dir jetzt.",
"new_register": "<strong>%1</strong> hat eine Registrationsanfrage geschickt.",
"email-confirmed": "E-Mail bestätigt",

@ -18,7 +18,6 @@
"user_flagged_post_in": "Ο/Η <strong>%1</strong> επεσήμανε μια δημοσίευσή σου στο <strong>%2</strong>",
"user_posted_to": "Ο/Η <strong>%1</strong> έγραψε μια απάντηση στο: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "Ο/Η <strong>%1</strong> σε ανέφερε στο <strong>%2</strong>",
"user_started_following_you": "Ο/Η <strong>%1</strong> σε ακολουθεί.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Το Εmail Επιβεβαιώθηκε",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email Confirmed",

@ -20,7 +20,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to" : "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email Confirmed",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> ha reportado una respuesta en <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> ha respondido a: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> ha publicado un nuevo tema: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> te mencionó en <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> comenzó a seguirte.",
"new_register": "<strong>%1</strong> envió una solicitud de registro.",
"email-confirmed": "Correo electrónico confirmado",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> raporteeris postitust <strong>%2</strong>",
"user_posted_to": "Kasutaja <strong>%1</strong> postitas vastuse teemasse <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> on postitanud uue teema: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mainis sind postituses <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> hakkas sind jälgima.",
"new_register": "<strong>%1</strong> saatis registreerimistaotluse.",
"email-confirmed": "Emaili aadress kinnitatud",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> دیدگاه شما را در <strong>%2</strong> علامتدار کرده",
"user_posted_to": "پاسخ دادن به <strong>%2</strong> از سوی <strong>%1</strong>",
"user_posted_topic": "<strong>%1</strong> یک جستار جدید ارسال کرده: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> در \n<strong>%1</strong> mentioned you in <strong>%2</strong> از شما نام برده",
"user_started_following_you": "<strong>%1</strong> شروع به دنبال کردن شما کرده",
"new_register": "<strong>%1</strong> یک درخواست ثبت نام ارسال کرده است",
"email-confirmed": "رایانامه تایید شد",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> on vastannut viestiin: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> on kirjoittanut uuden aiheen: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mainitsi sinut viestissä <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> alkoi seurata sinua.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Sähköpostiosoite vahvistettu",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> a signalé un message dans <strong>%2</strong>.",
"user_posted_to": "<strong>%1</strong> a répondu à : <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> a posté un nouveau sujet: <strong>%2</strong>.",
"user_mentioned_you_in": "<strong>%1</strong> vous a mentionné dans <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> vous suit.",
"new_register": "<strong>%1</strong> a envoyé une demande d'incription.",
"email-confirmed": "Email vérifié",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> reportou unha mensaxe en <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> publicou unha resposta en: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> publicou un novo tema: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mencionóute en <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> comezou a seguirte.",
"new_register": "<strong>%1</strong> enviou unha petición de rexistro.",
"email-confirmed": "Correo confirmado",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> דיווח על פוסט ב <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> פרסם תגובה ל: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> העלה נושא חדש: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> הזכיר אותך ב <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> התחיל לעקוב אחריך.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "כתובת המייל אושרה",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email Confirmed",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> menandai sebuah posting di <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> telah mengirim sebuah balasan kepada: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> telah membuat topik baru: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> menyebut mu di <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> mulai mengikutimu.",
"new_register": "<strong>%1</strong> mengirim permintaan registrasi.",
"email-confirmed": "Email telah Dikonfirmasi",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> ha segnalato un post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> ha postato una risposta a: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> ha postato un nuovo Topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> ti ha menzionato in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> ha iniziato a seguirti.",
"new_register": "<strong>%1</strong> ha inviato una richiesta di registrazione.",
"email-confirmed": "Email Confermata",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> は <strong>%2</strong> への返事を作成しました。",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email Confirmed",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong>님이 <strong>%2</strong>의 게시물을 신고했습니다.",
"user_posted_to": "<strong>%1</strong>님이 <strong>%2</strong>에 답글을 작성했습니다.",
"user_posted_topic": "<strong>%1</strong>님이 새 주제를 작성했습니다: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong>님이 <strong>%2</strong>에서 나를 언급했습니다.",
"user_started_following_you": "<strong>%1</strong>님이 나를 팔로우합니다.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "확인된 이메일",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong>pagrįso nuomone čia <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> parašė atsaką <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> paskelbė naują temą: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> paminėjo Jus <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> pradėjo sekti tave",
"new_register": "<strong>%1</strong> atsiuntė registracijos prašymą",
"email-confirmed": "El. paštas patvirtintas",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> menanda kiriman anda di <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> telah membalas kiriman kepada: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> membuka topik baru : <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> sebut anda di <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> mula mengikut anda.",
"new_register": "<strong>%1</strong> menghantar jemputan pendaftaran.",
"email-confirmed": "Emel Disahkan",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> har flagget et innlegg i <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> har skrevet et svar til: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> har skrevet et nytt emne: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> nevnte deg i <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> begynte å følge deg.",
"new_register": "<strong>%1</strong> sendte en forespørsel om registrering",
"email-confirmed": "E-post bekreftet",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> rapporteerde een bericht in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> heeft een reactie geplaatst in <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> heeft een nieuw onderwerp geplaatst: <strong>%2</strong>",
"user_mentioned_you_in": "Onze naam is genoemd door <strong>%1</strong> in <strong>%2</strong>.",
"user_started_following_you": "<strong>%1</strong> volgt jou nu.",
"new_register": "<strong>%1</strong> heeft een registratie verzoek aangevraagd.",
"email-confirmed": "E-mailadres bevestigd",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1<strong> oflagował Twój post w <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> dodał odpowiedź do <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> wysłał nowy temat: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> wspomniał cię w <strong>%2</strong>",
"user_started_following_you": "<string>%1</strong> zaczął Cię śledzić.",
"new_register": "<strong>%1</strong> wysłał żądanie rejestracji.",
"email-confirmed": "E-mail potwierdzony",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> sinalizou um post em <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> postou uma resposta para: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> postou um novo tópico: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mencionou você em <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> começou a seguir você.",
"new_register": "<strong>%1</strong> lhe enviou um pedido de cadastro.",
"email-confirmed": "Email Confirmado",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> a semnalizat un mesaj în <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> a postat un răspuns la: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> te-a menționat în <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> a început să te urmărească.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email confirmat",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> пометил сообщение в <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> ответил на запись: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> открыл новую тему: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> упомянул Вас в <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> подписался на Вас.",
"new_register": "<strong>%1</strong> отправлен запрос на регистрацию.",
"email-confirmed": "Email подтвержден",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> yatambikanye ikintu muri <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> yanditse kuri: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> yatangije ikiganiro gishya: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> yakuvuze muri <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> yatangiye kugukurikira.",
"new_register": "<strong>%1</strong> yasabye kwandikwa.",
"email-confirmed": "Email Yemejwe",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email Confirmed",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> odpovedal: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email bol potvrdený",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong>je prijavil vašo objavo v <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> je odgovoril na: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> je odprl novo temo: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> te je omenil v <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> te sledi.",
"new_register": "<strong>%1</strong> je poslal prošnjo za registracijo.",
"email-confirmed": "E-mail naslov potrjen",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> означи поруку у <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> посла нови одговор за: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> постави нову тему:",
"user_mentioned_you_in": "<strong>%1</strong> вас помену у <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> поче да вас прати.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Е-пошта је је отврђена.",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flaggade ett inlägg i <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> har skrivit ett svar på: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> har skapat ett nytt ämne: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> nämnde dig i <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> började följa dig.",
"new_register": "<strong>%1</strong> skickade en registreringsförfrågan.",
"email-confirmed": "Epost bekräftad",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> flagged a post in <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> has posted a reply to: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> has posted a new topic: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> mentioned you in <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> started following you.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Email ได้รับการยืนยันแล้ว",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> bir iletiyi bayrakladı. <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> <strong>%2</strong> başlığına bir ileti gönderdi.",
"user_posted_topic": "<strong>%1</strong> yeni bir konu yarattı: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> <strong>%2</strong> başlığında sizden bahsetti.",
"user_started_following_you": "<strong>%1</strong> sizi takip etmeye başladı.",
"new_register": "<strong>%1</strong> kayıt olma isteği gönderdi.",
"email-confirmed": "E-posta onaylandı",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> gắn cờ 1 bài trong <strong>%2</strong>",
"user_posted_to": "<strong>%1</strong> đã trả lời <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> đã gởi chủ đề mới ở <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> nhắc đến bạn trong <strong>%2</strong>",
"user_started_following_you": "<strong>%1</strong> đã theo dõi bạn.",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "Đã xác nhận email",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> 在 <strong>%2</strong> 标记了一个帖子",
"user_posted_to": "<strong>%1</strong> 回复了:<strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> 发表了新主题:<strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> 在 <strong>%2</strong> 中提到了您",
"user_started_following_you": "<strong>%1</strong>关注了您。",
"new_register": "<strong>%1</strong> 发出了注册请求",
"email-confirmed": "电子邮箱已确认",

@ -18,7 +18,6 @@
"user_flagged_post_in": "<strong>%1</strong> 舉報了 <strong>%2</strong>裡的一個post。",
"user_posted_to": "<strong>%1</strong> 發布一個回覆給: <strong>%2</strong>",
"user_posted_topic": "<strong>%1</strong> 發布了一個新的主題: <strong>%2</strong>",
"user_mentioned_you_in": "<strong>%1</strong> 在 <strong>%2</strong>提到你",
"user_started_following_you": "<strong>%1</strong> 開始關注你。",
"new_register": "<strong>%1</strong> sent a registration request.",
"email-confirmed": "已確認電郵",

@ -1 +1,22 @@
.flag-reporters {
font-size: 1.2rem;
ul {
padding-left: 0;
li {
list-style-type: none;
img, .user-icon {
.user-icon-style(18px, 1rem);
margin-right: 1rem;
}
}
}
}
.flag-post-body {
img, .user-icon {
.user-icon-style(24px, 1.5rem);
}
}

@ -55,3 +55,14 @@
vertical-align: middle;
}
}
.avatar {
/* Contains the user icon class as a mixin, so there's no need to include that in the template */
.user-icon;
&.avatar-sm {
width: 24px;
height: 24px;
.user-icon-style(24px, 1.5rem);
}
}

@ -10,8 +10,13 @@ define('admin/appearance/skins', function() {
$('body').append(scriptEl);
$('#skins').on('click', function(e){
var target = $(e.target),
action = target.attr('data-action');
var target = $(e.target);
if (!target.attr('data-action')) {
target = target.parents('[data-action]');
}
var action = target.attr('data-action');
if (action && action === 'use') {
var parentEl = target.parents('[data-theme]'),
@ -19,6 +24,7 @@ define('admin/appearance/skins', function() {
cssSrc = parentEl.attr('data-css'),
themeId = parentEl.attr('data-theme');
socket.emit('admin.themes.set', {
type: themeType,
id: themeId,

@ -60,10 +60,7 @@ define('admin/general/dashboard', ['semver'], function(semver) {
checkEl.append('<p>You are <strong>up-to-date</strong> <i class="fa fa-check"></i></p>');
} else if (semver.gt(latestVersion, version)) {
checkEl.removeClass('alert-info').addClass('alert-danger');
checkEl.append('<p>A new version (v' + latestVersion + ') has been released. Consider upgrading your NodeBB.</p>');
} else if (semver.gt(version, latestVersion)) {
checkEl.removeClass('alert-info').addClass('alert-warning');
checkEl.append('<p>You are running a <strong>development version</strong>! Unintended bugs may occur. <i class="fa fa-warning"></i></p>');
checkEl.append('<p>A new version (v' + latestVersion + ') has been released. Consider <a href="https://docs.nodebb.org/en/latest/upgrading/index.html">upgrading your NodeBB</a>.</p>');
}
});
@ -319,7 +316,6 @@ define('admin/general/dashboard', ['semver'], function(semver) {
if (JSON.stringify(graphData.traffic) === JSON.stringify(data)) {
return;
}
console.log(data);
graphData.traffic = data;
@ -332,6 +328,13 @@ define('admin/general/dashboard', ['semver'], function(semver) {
graphs.traffic.scale.xLabels = getDaysArray(until);
} else {
graphs.traffic.scale.xLabels = getHoursArray();
$('#pageViewsThisMonth').html(data.monthlyPageViews.thisMonth);
$('#pageViewsLastMonth').html(data.monthlyPageViews.lastMonth);
$('#pageViewsPastDay').html(data.pastDay);
utils.addCommasToNumbers($('#pageViewsThisMonth'));
utils.addCommasToNumbers($('#pageViewsLastMonth'));
utils.addCommasToNumbers($('#pageViewsPastDay'));
}
for (var i = 0, ii = data.pageviews.length; i < ii; i++) {
@ -349,13 +352,6 @@ define('admin/general/dashboard', ['semver'], function(semver) {
graphs.traffic.update();
currentGraph.units = units;
currentGraph.until = until;
$('#pageViewsThisMonth').html(data.monthlyPageViews.thisMonth);
$('#pageViewsLastMonth').html(data.monthlyPageViews.lastMonth);
$('#pageViewsPastDay').html(data.pastDay);
utils.addCommasToNumbers($('#pageViewsThisMonth'));
utils.addCommasToNumbers($('#pageViewsLastMonth'));
utils.addCommasToNumbers($('#pageViewsPastDay'));
});
}

@ -40,7 +40,7 @@ define('admin/manage/flags', [
return app.alertError(err.message);
}
$('.post-container').empty().text('No flagged posts!');
ajaxify.refresh();
});
});
}

@ -1,11 +1,9 @@
"use strict";
/* global config, socket, define, templates, bootbox, app, ajaxify, */
/* global config, socket, define, templates, bootbox, app, ajaxify */
define('admin/manage/users', ['admin/modules/selectable'], function(selectable) {
var Users = {};
Users.init = function() {
var yourid = ajaxify.data.yourid;
selectable.enable('#users-container', '.user-selectable');
function getSelectedUids() {
@ -94,7 +92,7 @@ define('admin/manage/users', ['admin/modules/selectable'], function(selectable)
return;
}
if (uids.indexOf(yourid) !== -1) {
if (uids.indexOf(app.user.uid.toString()) !== -1) {
app.alertError('You can\'t remove yourself as Administrator!');
} else {
socket.emit('admin.user.makeAdmins', uids, done('User(s) are now administrators.', '.administrator', true));
@ -108,7 +106,7 @@ define('admin/manage/users', ['admin/modules/selectable'], function(selectable)
return;
}
if (uids.indexOf(yourid.toString()) !== -1) {
if (uids.indexOf(app.user.uid.toString()) !== -1) {
app.alertError('You can\'t remove yourself as Administrator!');
} else {
bootbox.confirm('Do you really want to remove admins?', function(confirm) {

@ -38,13 +38,8 @@ define('forum/chats', ['components', 'string', 'sounds', 'forum/infinitescroll',
};
Chats.addEventListeners = function() {
$('.chats-list').on('click', 'li', function(e) {
var env = utils.findBootstrapEnvironment();
if (env === 'xs' || env === 'sm') {
app.openChat($(this).attr('data-username'), $(this).attr('data-uid'));
} else {
Chats.switchChat(parseInt($(this).attr('data-uid'), 10), $(this).attr('data-username'));
}
components.get('chat/recent').on('click', 'li', function(e) {
Chats.switchChat(parseInt($(this).attr('data-uid'), 10), $(this).attr('data-username'));
});
Chats.addSendHandlers(Chats.getRecipientUid(), $('.chat-input'), $('.expanded-chat button[data-action="send"]'));

@ -268,6 +268,11 @@ define('forum/topic/postTools', ['share', 'navigator', 'components', 'translator
function showVotes(pid) {
socket.emit('posts.getVoters', {pid: pid, cid: ajaxify.data.cid}, function(err, data) {
if (err) {
if (err.message === '[[error:no-privileges]]') {
return;
}
// Only show error if it's an unexpected error.
return app.alertError(err.message);
}

@ -115,7 +115,7 @@ $('document').ready(function() {
$.post('/launch', function() {
setInterval(function() {
$.get('/admin', function(data) {
$.get('/admin').done(function(data) {
window.location = 'admin';
});
}, 750);

@ -19,11 +19,6 @@ define('chat', ['components', 'taskbar', 'string', 'sounds', 'forum/chats', 'tra
});
socket.on('event:chats.receive', function(data) {
if (ajaxify.currentPage.slice(0, 6) === 'chats/') {
// User is on the chats page, so do nothing (src/forum/chats.js will handle it)
return;
}
var username = data.message.fromUser.username;
var isSelf = parseInt(data.message.fromUser.uid, 10) === parseInt(app.user.uid, 10);
data.message.self = data.self;

@ -50,7 +50,16 @@ Controllers.home = function(req, res, next) {
} else if (route === 'popular') {
Controllers.popular.get(req, res, next);
} else {
res.redirect(route);
var match = /^category\/(\d+)\/(.*)$/.exec(route);
if (match) {
req.params.topic_index = "1";
req.params.category_id = match[1];
req.params.slug = match[2];
Controllers.categories.get(req, res, next);
} else {
res.redirect(route);
}
}
}
});

@ -14,13 +14,26 @@ var async = require('async'),
translator = require('../public/src/modules/translator'),
transports = {
direct: nodemailer.createTransport('direct')
direct: nodemailer.createTransport('direct'),
gmail: undefined
},
app;
(function(Emailer) {
Emailer.registerApp = function(expressApp) {
app = expressApp;
// Enable Gmail transport if enabled in ACP
if (parseInt(meta.config['email:GmailTransport:enabled'], 10) === 1) {
transports.gmail = nodemailer.createTransport('SMTP', {
service: 'Gmail',
auth: {
user: meta.config['email:GmailTransport:user'],
pass: meta.config['email:GmailTransport:pass']
}
});
}
return Emailer;
};
@ -101,7 +114,8 @@ var async = require('async'),
data.text = data.plaintext;
delete data.plaintext;
transports.direct.sendMail(data, callback);
winston.verbose('[emailer] Sending email to uid ' + data.uid);
transports[transports.gmail ? 'gmail' : 'direct'].sendMail(data, callback);
};
function render(tpl, params, next) {

@ -129,7 +129,7 @@ module.exports = function(Meta) {
* Check if the parent process is running with the debug option --debug (or --debug-brk)
*/
var forkProcessParams = {};
if(global.v8debug) {
if(global.v8debug || process.execArgv.indexOf('--debug') != -1) {
/**
* use the line below if you want to debug minifier.js script too (or even --debug-brk option, but
* you'll have to setup your debugger and connect to the forked process)

@ -222,7 +222,7 @@ middleware.privateUploads = function(req, res, next) {
middleware.busyCheck = function(req, res, next) {
if (global.env === 'production' && (!meta.config.hasOwnProperty('eventLoopCheckEnabled') || parseInt(meta.config.eventLoopCheckEnabled, 10) === 1) && toobusy()) {
res.type('text/html').sendFile(path.join(__dirname, '../../public/503.html'));
res.status(503).type('text/html').sendFile(path.join(__dirname, '../../public/503.html'));
} else {
next();
}

@ -9,9 +9,8 @@ module.exports = function(Posts) {
Posts.parsePost = function(postData, callback) {
postData.content = postData.content || '';
var cachedContent = cache.get(postData.pid);
if (cachedContent) {
postData.content = cachedContent;
if (postData.pid && cache.has(postData.pid)) {
postData.content = cache.get(postData.pid);
return callback(null, postData);
}
@ -38,4 +37,4 @@ module.exports = function(Posts) {
plugins.fireHook('filter:parse.signature', {userData: userData, uid: uid}, callback);
};
};
};

@ -2,6 +2,7 @@
var winston = require('winston');
var nconf = require('nconf');
var async = require('async');
var db = require('./database');
var Reset = {};
@ -81,11 +82,29 @@ function resetThemes(callback) {
}
function resetPlugin(pluginId) {
db.sortedSetRemove('plugins:active', pluginId, function(err) {
var active = false;
async.waterfall([
async.apply(db.isSortedSetMember, 'plugins:active', pluginId),
function(isMember, next) {
active = isMember;
if (isMember) {
db.sortedSetRemove('plugins:active', pluginId, next);
} else {
next();
}
}
], function(err) {
if (err) {
winston.error('[reset] Could not disable plugin: %s encountered error %s', pluginId, err.message);
} else {
winston.info('[reset] Plugin `%s` disabled', pluginId);
if (active) {
winston.info('[reset] Plugin `%s` disabled', pluginId);
} else {
winston.warn('[reset] Plugin `%s` was not active on this forum', pluginId);
winston.info('[reset] No action taken.');
}
}
process.exit();

@ -32,7 +32,7 @@ var async = require('async'),
var confirm_code = utils.generateUUID(),
confirm_link = nconf.get('url') + '/confirm/' + confirm_code;
var emailInterval = 10;
var emailInterval = meta.config.hasOwnProperty('emailConfirmInterval') ? parseInt(meta.config.emailConfirmInterval, 10) : 10;
async.waterfall([
function(next) {

@ -10,9 +10,16 @@
<!-- BEGIN events -->
<div>
<span>#{events.eid} </span><span class="label label-info">{events.type}</span>
<a href="{config.relative_path}/user/{events.user.userslug}" target="_blank"><img class="user-img" src="{events.user.picture}"/></a> <a href="{config.relative_path}/user/{events.user.userslug}" target="_blank">{events.user.username}</a> (uid {events.user.uid}) (IP {events.ip})
<a href="{config.relative_path}/user/{events.user.userslug}" target="_blank">
<!-- IF events.user.picture -->
<img class="avatar avatar-sm" src="{events.user.picture}" />
<!-- ELSE -->
<div class="avatar avatar-sm" style="background-color: {events.user.icon:bgColor};">{events.user.icon:text}</div>
<!-- ENDIF events.user.picture -->
</a>
<a href="{config.relative_path}/user/{events.user.userslug}" target="_blank">{events.user.username}</a> (uid {events.user.uid}) (IP {events.ip})
<span class="pull-right">{events.timestampISO}</span>
<br/><br/>
<br /><br />
<pre>{events.jsonString}</pre>
</div>
<!-- END events -->

@ -30,42 +30,63 @@
<div class="post-container" data-next="{next}">
<!-- IF !posts.length -->
No flagged posts!
<div class="alert alert-success">
No flagged posts!
</div>
<!-- ENDIF !posts.length -->
<!-- BEGIN posts -->
<div>
<div class="panel panel-default" data-pid="{posts.pid}" data-tid="{posts.topic.tid}">
<div class="panel-body">
<a href="{config.relative_path}/user/{posts.user.userslug}">
<img title="{posts.user.username}" class="img-rounded user-img" src="{posts.user.picture}">
</a>
<div class="row">
<div class="col-sm-8">
<div class="panel panel-default" data-pid="{posts.pid}" data-tid="{posts.topic.tid}">
<div class="panel-body flag-post-body">
<a href="{config.relative_path}/user/{../user.userslug}">
<!-- IF ../user.picture -->
<img title="{posts.user.username}" src="{../user.picture}">
<!-- ELSE -->
<div class="user-icon" style="background-color: {../user.icon:bgColor};">{../user.icon:text}</div>
<!-- ENDIF ../user.picture -->
</a>
<a href="{config.relative_path}/user/{posts.user.userslug}">
<strong><span>{posts.user.username}</span></strong>
</a>
<div class="content">
<p>{posts.content}</p>
<p class="fade-out"></p>
<a href="{config.relative_path}/user/{../user.userslug}">
<strong><span>{../user.username}</span></strong>
</a>
<div class="content">
<p>{posts.content}</p>
<p class="fade-out"></p>
</div>
<small>
<span class="pull-right">
Posted in <a href="{config.relative_path}/category/{posts.category.slug}" target="_blank"><i class="fa {posts.category.icon}"></i> {posts.category.name}</a>, <span class="timeago" title="{posts.relativeTime}"></span> &bull;
<a href="{config.relative_path}/topic/{posts.topic.slug}/{posts.index}" target="_blank">Read More</a>
</span>
</small>
</div>
<small>
<span class="pull-right">
Posted in <a href="{config.relative_path}/category/{posts.category.slug}" target="_blank"><i class="fa {posts.category.icon}"></i> {posts.category.name}</a>, <span class="timeago" title="{posts.relativeTime}"></span> &bull;
<a href="{config.relative_path}/topic/{posts.topic.slug}/{posts.index}" target="_blank">Read More</a>
</span>
</small>
</div>
</div>
<span class="badge badge-warning"><i class="fa fa-flag"></i> {posts.flags}</span>
<br/>
<!-- BEGIN posts.flagReasons -->
<a target="_blank" href="{config.relative_path}/user/{../user.userslug}"><img class="user-img" src="{../user.picture}">{../user.username}</a>: "{../reason}" <br/>
<!-- END posts.flagReasons -->
<br/>
<button class="btn btn-warning dismiss">Dismiss</button>
<button class="btn btn-danger delete">Delete</button>
<br/><br/>
<div class="col-sm-4">
<i class="fa fa-flag"></i> This post has been flagged {posts.flags} time(s):
<blockquote class="flag-reporters">
<ul>
<!-- BEGIN posts.flagReasons -->
<li>
<a target="_blank" href="{config.relative_path}/user/{../user.userslug}">
<!-- IF ../user.picture -->
<img src="{../user.picture}" />
<!-- ELSE -->
<div class="user-icon" style="background-color: {../user.icon:bgColor};">{../user.icon:text}</div>
<!-- ENDIF ../user.picture -->
{../user.username}
</a>: "{../reason}"
</li>
<!-- END posts.flagReasons -->
</ul>
</blockquote>
<div class="btn-group">
<button class="btn btn-sm btn-success dismiss">Dismiss</button>
<button class="btn btn-sm btn-danger delete">Delete</button>
</div>
</div>
</div>
<!-- END posts -->
</div>

@ -8,7 +8,13 @@
<!-- IF privileges.users.length -->
<!-- BEGIN privileges.users -->
<tr data-uid="{privileges.users.uid}">
<td><img src="{privileges.users.picture}" title="{privileges.users.username}" /></td>
<td>
<!-- IF ../picture -->
<img class="avatar avatar-sm" src="{privileges.users.picture}" title="{privileges.users.username}" />
<!-- ELSE -->
<div class="avatar avatar-sm" style="background-color: {../icon:bgColor};">{../icon:text}</div>
<!-- ENDIF ../picture -->
</td>
<td>{privileges.users.username}</td>
{function.spawnPrivilegeStates, privileges.users.username, privileges}
</tr>

@ -4,9 +4,6 @@
<div class="col-sm-2 col-xs-12 settings-header">Email Settings</div>
<div class="col-sm-10 col-xs-12">
<form>
<p>
Please ensure that you have installed a third-party emailer (e.g. PostageApp, Mailgun, Mandrill, SendGrid, etc), otherwise emails will not be sent by NodeBB
</p>
<div class="form-group">
<label for="email:from"><strong>Email Address</strong></label>
<p class="help-block">
@ -25,6 +22,31 @@
</div>
</div>
<div class="row">
<div class="col-sm-2 col-xs-12 settings-header">Gmail Routing</div>
<div class="col-sm-10 col-xs-12">
<form>
<div class="checkbox">
<label for="email:GmailTransport:enabled" class="mdl-switch mdl-js-switch mdl-js-ripple-effect">
<input class="mdl-switch__input" type="checkbox" id="email:GmailTransport:enabled" data-field="email:GmailTransport:enabled" name="email:GmailTransport:enabled" />
<span class="mdl-switch__label">Route emails through a Gmail/Google Apps account</span>
</label>
</div>
<div class="form-group">
<label for="email:GmailTransport:user"><strong>Username</strong></label>
<input type="text" class="form-control input-lg" id="email:GmailTransport:user" data-field="email:GmailTransport:user" placeholder="admin@example.org" /><br />
<p class="help-block">
Enter the full email address here, especially if you are using a Google Apps managed domain.
</p>
</div>
<div class="form-group">
<label for="email:GmailTransport:pass"><strong>Password</strong></label>
<input type="password" class="form-control input-lg" id="email:GmailTransport:pass" data-field="email:GmailTransport:pass" /><br />
</div>
</form>
</div>
</div>
<div class="row">
<div class="col-sm-2 col-xs-12 settings-header">Edit Email Template</div>
<div class="col-sm-10 col-xs-12">

@ -18,6 +18,12 @@
</label>
</div>
<div class="form-group form-inline">
<label for="emailConfirmInterval">User may not resend a confirmation email until</label>
<input class="form-control" data-field="emailConfirmInterval" type="number" id="emailConfirmInterval" placeholder="Default: 10" value="10" />
<label for="emailConfirmInterval">minutes have elapsed</label>
</div>
<div class="form-group">
<label>Allow login with</label>
<select class="form-control" data-field="allowLoginWith">

@ -121,7 +121,7 @@ function cacheStaticFiles(callback) {
}
function listen(callback) {
var port = nconf.get('port');
var port = parseInt(nconf.get('port'), 10);
if (Array.isArray(port)) {
if (!port.length) {
@ -138,7 +138,7 @@ function listen(callback) {
}
}
if (port !== 80 && port !== 443 && nconf.get('use_port') === false) {
if ((port !== 80 && port !== 443) || nconf.get('trust_proxy') === true) {
winston.info('Enabling \'trust proxy\'');
app.enable('trust proxy');
}

Loading…
Cancel
Save