mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-06-25 22:00:19 +02:00
Merge commit 'a12a14901507aecd2ee6f75625000898353c2a69' into weekly
This commit is contained in:
@@ -9,6 +9,8 @@
|
||||
"maximumPostLength": 32767,
|
||||
"minimumTagsPerTopic": 0,
|
||||
"maximumTagsPerTopic": 5,
|
||||
"minimumTagLength": 3,
|
||||
"maximumTagLength": 15,
|
||||
"allowGuestSearching": 0,
|
||||
"allowTopicsThumbnail": 0,
|
||||
"registrationType": "normal",
|
||||
@@ -30,5 +32,7 @@
|
||||
"requireEmailConfirmation": 0,
|
||||
"allowProfileImageUploads": 1,
|
||||
"teaserPost": "last",
|
||||
"allowPrivateGroups": 1
|
||||
}
|
||||
"allowPrivateGroups": 1,
|
||||
"unreadCutoff": 2,
|
||||
"bookmarkThreshold": 5
|
||||
}
|
||||
|
||||
29
nodebb
29
nodebb
@@ -1,14 +1,25 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
var colors = require('colors'),
|
||||
cproc = require('child_process'),
|
||||
argv = require('minimist')(process.argv.slice(2)),
|
||||
fs = require('fs'),
|
||||
path = require('path'),
|
||||
request = require('request'),
|
||||
semver = require('semver'),
|
||||
prompt = require('prompt'),
|
||||
async = require('async');
|
||||
try {
|
||||
var colors = require('colors'),
|
||||
cproc = require('child_process'),
|
||||
argv = require('minimist')(process.argv.slice(2)),
|
||||
fs = require('fs'),
|
||||
path = require('path'),
|
||||
request = require('request'),
|
||||
semver = require('semver'),
|
||||
prompt = require('prompt'),
|
||||
async = require('async');
|
||||
} catch (e) {
|
||||
if (e.code === 'MODULE_NOT_FOUND') {
|
||||
process.stdout.write('NodeBB could not be started because it\'s dependencies have not been installed.\n');
|
||||
process.stdout.write('Please ensure that you have executed "npm install --production" prior to running NodeBB.\n\n');
|
||||
process.stdout.write('For more information, please see: https://docs.nodebb.org/en/latest/installing/os.html\n\n');
|
||||
process.stdout.write('Could not start: ' + e.code + '\n');
|
||||
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
var getRunningPid = function(callback) {
|
||||
fs.readFile(__dirname + '/pidfile', {
|
||||
|
||||
@@ -56,8 +56,8 @@
|
||||
"nodebb-plugin-spam-be-gone": "0.4.6",
|
||||
"nodebb-rewards-essentials": "0.0.8",
|
||||
"nodebb-theme-lavender": "3.0.9",
|
||||
"nodebb-theme-persona": "4.0.122",
|
||||
"nodebb-theme-vanilla": "5.0.66",
|
||||
"nodebb-theme-persona": "4.0.125",
|
||||
"nodebb-theme-vanilla": "5.0.68",
|
||||
"nodebb-widget-essentials": "2.0.9",
|
||||
"nodemailer": "2.0.0",
|
||||
"nodemailer-sendmail-transport": "1.0.0",
|
||||
@@ -115,4 +115,4 @@
|
||||
"url": "https://github.com/barisusakli"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
"chat.seven_days": "7 أيام",
|
||||
"chat.thirty_days": "30 يومًا",
|
||||
"chat.three_months": "3 أشهر",
|
||||
"chat.delete_message_confirm": "Are you sure you wish to delete this message?",
|
||||
"chat.delete_message_confirm": "هل أنت متأكد من أنك تريد حذف هذه الرسالة؟",
|
||||
"chat.roomname": "Chat Room %1",
|
||||
"chat.add-users-to-room": "Add users to room",
|
||||
"composer.compose": "اكتب",
|
||||
|
||||
@@ -16,9 +16,9 @@
|
||||
"notifications": "التنبيهات",
|
||||
"tags": "الكلمات الدلالية",
|
||||
"tag": "Topics tagged under \"%1\"",
|
||||
"register": "Register an account",
|
||||
"register": "تسجيل حساب",
|
||||
"login": "Login to your account",
|
||||
"reset": "Reset your account password",
|
||||
"reset": "إعادة تعيين كلمة مرور حسابك",
|
||||
"categories": "الفئات",
|
||||
"groups": "المجموعات",
|
||||
"group": "%1 group",
|
||||
@@ -39,7 +39,7 @@
|
||||
"account/upvoted": "Posts upvoted by %1",
|
||||
"account/downvoted": "Posts downvoted by %1",
|
||||
"account/best": "Best posts made by %1",
|
||||
"confirm": "Email Confirmed",
|
||||
"confirm": "تم التحقق من عنوان البريد الإلكتروني",
|
||||
"maintenance.text": "جاري صيانة %1. المرجو العودة لاحقًا.",
|
||||
"maintenance.messageIntro": "بالإضافة إلى ذلك، قام مدبر النظام بترك هذه الرسالة:",
|
||||
"throttled.text": "%1 is currently unavailable due to excessive load. Please come back another time."
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "المحددة",
|
||||
"all": "الكل",
|
||||
"all_categories": "كل الفئات",
|
||||
"topics_marked_as_read.success": "تم تحديد المواضيع على أنها مقروءة!"
|
||||
"topics_marked_as_read.success": "تم تحديد المواضيع على أنها مقروءة!",
|
||||
"all-topics": "كل المواضيع",
|
||||
"new-topics": "مواضيع جديدة",
|
||||
"watched-topics": "المواضيع المتابعة"
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"uploading-file": "Uploading the file...",
|
||||
"uploading-file": "جاري رفع الملف...",
|
||||
"select-file-to-upload": "Select a file to upload!",
|
||||
"upload-success": "File uploaded successfully!",
|
||||
"upload-success": "تم رفع الملف بنجاح!",
|
||||
"maximum-file-size": "Maximum %1 kb"
|
||||
}
|
||||
@@ -36,10 +36,10 @@
|
||||
"more": "المزيد",
|
||||
"profile_update_success": "تم تحديث الملف الشخصي بنجاح",
|
||||
"change_picture": "تغيير الصورة",
|
||||
"change_username": "Change Username",
|
||||
"change_email": "Change Email",
|
||||
"change_username": "تغيير اسم المستخدم",
|
||||
"change_email": "تغيير البريد اﻹلكتروني",
|
||||
"edit": "تعديل",
|
||||
"edit-profile": "Edit Profile",
|
||||
"edit-profile": "تعديل الملف الشخصي",
|
||||
"default_picture": "Default Icon",
|
||||
"uploaded_picture": "الصورة المرفوعة",
|
||||
"upload_new_picture": "رفع صورة جديدة",
|
||||
@@ -97,11 +97,11 @@
|
||||
"scroll_to_my_post": "After posting a reply, show the new post",
|
||||
"follow_topics_you_reply_to": "متابعة المواضيع التي تقوم بالرد فيها",
|
||||
"follow_topics_you_create": "متابعة المواضيع التي تنشئها",
|
||||
"grouptitle": "Group Title",
|
||||
"grouptitle": "عنوان المجموعة",
|
||||
"no-group-title": "لا يوجد عنوان للمجموعة",
|
||||
"select-skin": "Select a Skin",
|
||||
"select-homepage": "Select a Homepage",
|
||||
"homepage": "Homepage",
|
||||
"homepage": "الصفحة الرئيسية",
|
||||
"homepage_description": "Select a page to use as the forum homepage or 'None' to use the default homepage.",
|
||||
"custom_route": "Custom Homepage Route",
|
||||
"custom_route_help": "Enter a route name here, without any preceding slash (e.g. \"recent\", or \"popular\")",
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Избраните",
|
||||
"all": "Всички",
|
||||
"all_categories": "Всички категории",
|
||||
"topics_marked_as_read.success": "Темите бяха отбелязани като прочетени!"
|
||||
"topics_marked_as_read.success": "Темите бяха отбелязани като прочетени!",
|
||||
"all-topics": "Всички теми",
|
||||
"new-topics": "Нови теми",
|
||||
"watched-topics": "Наблюдавани теми"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "নির্বাচিত",
|
||||
"all": "সবগুলো",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "পঠিত হিসেবে চিহ্নিত টপিকসমূহ"
|
||||
"topics_marked_as_read.success": "পঠিত হিসেবে চিহ্নিত টপিকসমূহ",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Vybrané",
|
||||
"all": "Vše",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Téma bylo označeno jako přečtené!"
|
||||
"topics_marked_as_read.success": "Téma bylo označeno jako přečtené!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Valgte",
|
||||
"all": "Alle",
|
||||
"all_categories": "Alle kategorier",
|
||||
"topics_marked_as_read.success": "Emner markeret som læst!"
|
||||
"topics_marked_as_read.success": "Emner markeret som læst!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Ausgewählte",
|
||||
"all": "Alle",
|
||||
"all_categories": "Alle Kategorien",
|
||||
"topics_marked_as_read.success": "Themen als gelesen markiert!"
|
||||
"topics_marked_as_read.success": "Themen als gelesen markiert!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Επιλεγμένα",
|
||||
"all": "Όλα",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Τα θέματα σημειώθηκαν ως αναγνωσμένα!"
|
||||
"topics_marked_as_read.success": "Τα θέματα σημειώθηκαν ως αναγνωσμένα!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Selected",
|
||||
"all": "All",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Topics marked as read!"
|
||||
"topics_marked_as_read.success": "Topics marked as read!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Selected",
|
||||
"all": "All",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Topics marked as read!"
|
||||
"topics_marked_as_read.success": "Topics marked as read!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -24,7 +24,7 @@
|
||||
"digest.day": "día",
|
||||
"digest.week": "semana",
|
||||
"digest.month": "mes",
|
||||
"digest.subject": "Digest for %1",
|
||||
"digest.subject": "Resumen de 1%",
|
||||
"notif.chat.subject": "Nuevo mensaje de chat recibido de %1",
|
||||
"notif.chat.cta": "Haz click aquí para continuar la conversación",
|
||||
"notif.chat.unsub.info": "Esta notificación de chat se te envió debido a tus ajustes de suscripción.",
|
||||
|
||||
@@ -85,7 +85,7 @@
|
||||
"cant-edit-chat-message": "No tienes permiso para editar este mensaje",
|
||||
"cant-remove-last-user": "No puedes eliminar el último usuario",
|
||||
"cant-delete-chat-message": "No tienes permiso para eliminar este mensaje",
|
||||
"already-voting-for-this-post": "You have already voted for this post.",
|
||||
"already-voting-for-this-post": "Ya has votado a este mensaje.",
|
||||
"reputation-system-disabled": "El sistema de reputación está deshabilitado.",
|
||||
"downvoting-disabled": "La votación negativa está deshabilitada.",
|
||||
"not-enough-reputation-to-downvote": "No tienes suficiente reputación para votar negativo este post",
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
"tools": "Herramientas",
|
||||
"flag": "Reportar",
|
||||
"locked": "Cerrado",
|
||||
"bookmark_instructions": "Click here to return to the last read post in this thread.",
|
||||
"bookmark_instructions": "Haz click aquí para volver a tu último mensaje leído en este tema",
|
||||
"flag_title": "Reportar este mensaje",
|
||||
"flag_success": "Este mensaje ha sido reportado para moderación.",
|
||||
"deleted_message": "Este tema ha sido borrado. Solo los usuarios que tengan privilegios de administración de temas pueden verlo.",
|
||||
@@ -34,15 +34,15 @@
|
||||
"not_following_topic.message": "No recibiras notificaciones de este tema.",
|
||||
"login_to_subscribe": "Por favor, conéctate para subscribirte a este tema.",
|
||||
"markAsUnreadForAll.success": "Publicación marcada como no leída para todos.",
|
||||
"mark_unread": "Marcar como no leído",
|
||||
"mark_unread": "Marcar no leído",
|
||||
"mark_unread.success": "Tema marcado como no leído.",
|
||||
"watch": "Seguir",
|
||||
"unwatch": "Dejar de seguir",
|
||||
"watch.title": "Serás notificado cuando haya nuevas respuestas en este tema",
|
||||
"unwatch.title": "Dejar de seguir este tema",
|
||||
"share_this_post": "Compartir este post",
|
||||
"thread_tools.title": "Herramientas del tema",
|
||||
"thread_tools.markAsUnreadForAll": "Marcar como no leído",
|
||||
"thread_tools.title": "Herramientas",
|
||||
"thread_tools.markAsUnreadForAll": "Marcar no leído",
|
||||
"thread_tools.pin": "Adherir tema",
|
||||
"thread_tools.unpin": "Despegar tema",
|
||||
"thread_tools.lock": "Cerrar tema",
|
||||
@@ -96,7 +96,7 @@
|
||||
"more_users": "%1 usuario(s) más",
|
||||
"more_guests": "%1 invitado(s) más",
|
||||
"users_and_others": "%1 y otros %2",
|
||||
"sort_by": "Ordenar por",
|
||||
"sort_by": "Ordenar",
|
||||
"oldest_to_newest": "Más antiguo a más nuevo",
|
||||
"newest_to_oldest": "Más nuevo a más antiguo",
|
||||
"most_votes": "Mayor número de votos",
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Seleccionados",
|
||||
"all": "Todos",
|
||||
"all_categories": "Todos los foros",
|
||||
"topics_marked_as_read.success": "¡Temas marcados como leídos!"
|
||||
"topics_marked_as_read.success": "¡Temas marcados como leídos!",
|
||||
"all-topics": "Todos los Temas",
|
||||
"new-topics": "Temas Nuevos",
|
||||
"watched-topics": "Temas Suscritos"
|
||||
}
|
||||
@@ -97,7 +97,7 @@
|
||||
"scroll_to_my_post": "Luego de enviar una respuesta, mostrar el nuevo mensaje",
|
||||
"follow_topics_you_reply_to": "Seguir los temas en los que respondes",
|
||||
"follow_topics_you_create": "Seguir publicaciones que creas",
|
||||
"grouptitle": "Group Title",
|
||||
"grouptitle": "Título del Grupo",
|
||||
"no-group-title": "Sin título de grupo",
|
||||
"select-skin": "Seleccionar una plantilla",
|
||||
"select-homepage": "Seleccione una Página de inicio",
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Valitud",
|
||||
"all": "Kõik",
|
||||
"all_categories": "Kõik kategooriad",
|
||||
"topics_marked_as_read.success": "Teemad märgitud loetuks!"
|
||||
"topics_marked_as_read.success": "Teemad märgitud loetuks!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "برگزیده",
|
||||
"all": "همه",
|
||||
"all_categories": "تمام دسته ها",
|
||||
"topics_marked_as_read.success": "همه موضوع ها خوانده شدند"
|
||||
"topics_marked_as_read.success": "همه موضوع ها خوانده شدند",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Valitut",
|
||||
"all": "Kaikki",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Aihe merkitty luetuksi!"
|
||||
"topics_marked_as_read.success": "Aihe merkitty luetuksi!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Sélectionnés",
|
||||
"all": "Tous",
|
||||
"all_categories": "Toutes Catégories",
|
||||
"topics_marked_as_read.success": "Sujets marqués comme lus !"
|
||||
"topics_marked_as_read.success": "Sujets marqués comme lus !",
|
||||
"all-topics": "Tous les sujets",
|
||||
"new-topics": "Nouveau sujet",
|
||||
"watched-topics": "Sujets surveillés"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Seleccionado",
|
||||
"all": "Todos",
|
||||
"all_categories": "Tódalas categorías",
|
||||
"topics_marked_as_read.success": "Temas marcados como lidos"
|
||||
"topics_marked_as_read.success": "Temas marcados como lidos",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "נבחר",
|
||||
"all": "הכל",
|
||||
"all_categories": "כל הקטגוריות",
|
||||
"topics_marked_as_read.success": "נושאים שמסומנים כנקרא!"
|
||||
"topics_marked_as_read.success": "נושאים שמסומנים כנקרא!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Kiválasztva",
|
||||
"all": "Összes",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Témakör olvasottnak jelölve!"
|
||||
"topics_marked_as_read.success": "Témakör olvasottnak jelölve!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Terpilih",
|
||||
"all": "Semua",
|
||||
"all_categories": "Semua Kategori",
|
||||
"topics_marked_as_read.success": "Topik ditandai sudah dibaca!"
|
||||
"topics_marked_as_read.success": "Topik ditandai sudah dibaca!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -21,9 +21,9 @@
|
||||
"digest.cta": "Clicca qui per visitare %1",
|
||||
"digest.unsub.info": "Questo sommario ti è stato inviato perché lo hai sottoscritto nelle tue impostazioni.",
|
||||
"digest.no_topics": "Non ci sono state discussioni attive nell'ultimo %1",
|
||||
"digest.day": "day",
|
||||
"digest.week": "week",
|
||||
"digest.month": "month",
|
||||
"digest.day": "giorno",
|
||||
"digest.week": "settimana",
|
||||
"digest.month": "mese",
|
||||
"digest.subject": "Digest for %1",
|
||||
"notif.chat.subject": "Nuovo messaggio in chat da %1",
|
||||
"notif.chat.cta": "Clicca qui per continuare la conversazione",
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
"confirm-email-already-sent": "Email di conferma già inviata, per favore attendere %1 minuti per richiederne un'altra.",
|
||||
"username-too-short": "Nome utente troppo corto",
|
||||
"username-too-long": "Nome utente troppo lungo",
|
||||
"password-too-long": "Password too long",
|
||||
"password-too-long": "Password troppo lunga",
|
||||
"user-banned": "Utente bannato",
|
||||
"user-too-new": "Devi attendere %1 secondi prima di creare il tuo primo post",
|
||||
"blacklisted-ip": "Sorry, your IP address has been banned from this community. If you feel this is in error, please contact an administrator.",
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Selezionati",
|
||||
"all": "Tutti",
|
||||
"all_categories": "Tutte le categorie",
|
||||
"topics_marked_as_read.success": "Discussione marcata come letta!"
|
||||
"topics_marked_as_read.success": "Discussione marcata come letta!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "選択済み",
|
||||
"all": "全て",
|
||||
"all_categories": "全てのカテゴリ",
|
||||
"topics_marked_as_read.success": "すべてのスレッドを既読にしました。"
|
||||
"topics_marked_as_read.success": "すべてのスレッドを既読にしました。",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -24,7 +24,7 @@
|
||||
"digest.day": "일",
|
||||
"digest.week": "주",
|
||||
"digest.month": "월",
|
||||
"digest.subject": "Digest for %1",
|
||||
"digest.subject": "%1님을 위한 다이제스트",
|
||||
"notif.chat.subject": "%1님이 대화 메시지를 보냈습니다.",
|
||||
"notif.chat.cta": "대화를 계속하려면 여기를 클릭하세요.",
|
||||
"notif.chat.unsub.info": "이 대화 알림은 사용자의 구독 설정에 따라 전송되었습니다.",
|
||||
|
||||
@@ -85,7 +85,7 @@
|
||||
"cant-edit-chat-message": "편집 할 수 있는 권한이 없습니다.",
|
||||
"cant-remove-last-user": "마지막 사용자를 삭제할 수 없습니다.",
|
||||
"cant-delete-chat-message": "메세지를 지울 권한이 없습니다.",
|
||||
"already-voting-for-this-post": "You have already voted for this post.",
|
||||
"already-voting-for-this-post": "이미 이 게시글에 투표하셨습니다.",
|
||||
"reputation-system-disabled": "인지도 기능이 비활성 상태입니다.",
|
||||
"downvoting-disabled": "비추천 기능이 비활성 상태입니다.",
|
||||
"not-enough-reputation-to-downvote": "인지도가 낮아 이 게시물에 반대할 수 없습니다.",
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
"tools": "도구",
|
||||
"flag": "신고",
|
||||
"locked": "잠김",
|
||||
"bookmark_instructions": "Click here to return to the last read post in this thread.",
|
||||
"bookmark_instructions": "이 스레드에서 읽은 마지막 게시글로 이동하시려면 여기를 클릭하세요.",
|
||||
"flag_title": "이 게시물을 신고",
|
||||
"flag_success": "이 게시물은 신고되었습니다.",
|
||||
"deleted_message": "이 주제는 삭제되었습니다. 주제 관리 권한이 있는 사용자만 볼 수 있습니다.",
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "선택된 주제",
|
||||
"all": "전체",
|
||||
"all_categories": "모든 카테고리",
|
||||
"topics_marked_as_read.success": "성공적으로 읽음으로 표시했습니다."
|
||||
"topics_marked_as_read.success": "성공적으로 읽음으로 표시했습니다.",
|
||||
"all-topics": "모든 주제",
|
||||
"new-topics": "새 주제",
|
||||
"watched-topics": "읽은 주제"
|
||||
}
|
||||
@@ -97,7 +97,7 @@
|
||||
"scroll_to_my_post": "답글 게시 후 새 포스트 보여주기",
|
||||
"follow_topics_you_reply_to": "답글 단 게시물을 팔로우 합니다.",
|
||||
"follow_topics_you_create": "생성한 주제를 팔로우 합니다.",
|
||||
"grouptitle": "Group Title",
|
||||
"grouptitle": "그룹 주제",
|
||||
"no-group-title": "그룹 이름이 없습니다.",
|
||||
"select-skin": "스킨 선택",
|
||||
"select-homepage": "홈페이지 선택",
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Pasirinkti",
|
||||
"all": "Visi",
|
||||
"all_categories": "Visos kategorijos",
|
||||
"topics_marked_as_read.success": "Temos pažymėtos kaip perskaitytos."
|
||||
"topics_marked_as_read.success": "Temos pažymėtos kaip perskaitytos.",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Dipilih",
|
||||
"all": "Semua",
|
||||
"all_categories": "Semua Kategori",
|
||||
"topics_marked_as_read.success": "Topik ditandakan sebagai sudah dibaca"
|
||||
"topics_marked_as_read.success": "Topik ditandakan sebagai sudah dibaca",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Valgte",
|
||||
"all": "Alle",
|
||||
"all_categories": "Alle kategorier",
|
||||
"topics_marked_as_read.success": "Emner merket som lest!"
|
||||
"topics_marked_as_read.success": "Emner merket som lest!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Geselecteerd",
|
||||
"all": "Alles",
|
||||
"all_categories": "Alle categorieën",
|
||||
"topics_marked_as_read.success": "Onderwerp gemarkeerd als gelezen!"
|
||||
"topics_marked_as_read.success": "Onderwerp gemarkeerd als gelezen!",
|
||||
"all-topics": "Alle onderwerpen",
|
||||
"new-topics": "Nieuwe onderwerpen",
|
||||
"watched-topics": "Bekeken onderwerpen"
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"uploading-file": "Bestond word geüpload...",
|
||||
"uploading-file": "Bestand word geüpload...",
|
||||
"select-file-to-upload": "Selecteer een bestand om te uploaden!",
|
||||
"upload-success": "Bestand succesvol geüpload!",
|
||||
"maximum-file-size": "Maximaal %1 kb"
|
||||
|
||||
@@ -93,7 +93,7 @@
|
||||
"enable_topic_searching": "Inschakelen mogelijkheid op onderwerp te kunnen zoeken",
|
||||
"topic_search_help": "Wanneer ingeschakeld zal de standaard zoekfunctie, met een aangepaste methode voor onderwerpen, overschreven worden",
|
||||
"delay_image_loading": "Afbeeldingen Laden Uitstellen",
|
||||
"image_load_delay_help": "Indien ingeschakeld zullen afbeeldingen in topics niet laden totdat ze in het scherm scrollen",
|
||||
"image_load_delay_help": "Indien ingeschakeld zullen afbeeldingen in topics niet laden totdat ze het scherm inscrollen",
|
||||
"scroll_to_my_post": "Toon het nieuwe bericht na het plaatsen van een antwoord",
|
||||
"follow_topics_you_reply_to": "Volg de onderwerpen waarop ik gereageerd heb",
|
||||
"follow_topics_you_create": "Volg de onderwerpen waarvan ik de oorspronkelijke auteur ben",
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Wybrane",
|
||||
"all": "Wszystkie",
|
||||
"all_categories": "Wszystkie kategorie",
|
||||
"topics_marked_as_read.success": "Tematy zostały oznaczone jako przeczytane!"
|
||||
"topics_marked_as_read.success": "Tematy zostały oznaczone jako przeczytane!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Selecionado",
|
||||
"all": "Todos",
|
||||
"all_categories": "Todas as categorias",
|
||||
"topics_marked_as_read.success": "Tópicos marcados como lidos!"
|
||||
"topics_marked_as_read.success": "Tópicos marcados como lidos!",
|
||||
"all-topics": "Todos os Tópicos",
|
||||
"new-topics": "Novos Tópicos",
|
||||
"watched-topics": "Topicos Acompanhados"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Selectate",
|
||||
"all": "Toate",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Subiectele au fost marcate ca citite!"
|
||||
"topics_marked_as_read.success": "Subiectele au fost marcate ca citite!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Выбранное",
|
||||
"all": "Все",
|
||||
"all_categories": "Все категории",
|
||||
"topics_marked_as_read.success": "Темы помечены как прочитанные!"
|
||||
"topics_marked_as_read.success": "Темы помечены как прочитанные!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Ibyatoranyijwe",
|
||||
"all": "Byose",
|
||||
"all_categories": "Ibyiciro Byose",
|
||||
"topics_marked_as_read.success": "Ibiganiro byamaze kugaragazwa nk'ibyasomwe!"
|
||||
"topics_marked_as_read.success": "Ibiganiro byamaze kugaragazwa nk'ibyasomwe!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Selected",
|
||||
"all": "All",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Topics marked as read!"
|
||||
"topics_marked_as_read.success": "Topics marked as read!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Vybrané",
|
||||
"all": "Všetko",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Témy označiť ako prečítané!"
|
||||
"topics_marked_as_read.success": "Témy označiť ako prečítané!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Izbrano",
|
||||
"all": "Vse",
|
||||
"all_categories": "Vse kategorije",
|
||||
"topics_marked_as_read.success": "Teme označene kot prebrane!"
|
||||
"topics_marked_as_read.success": "Teme označene kot prebrane!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Изабране",
|
||||
"all": "Све",
|
||||
"all_categories": "Све категорије",
|
||||
"topics_marked_as_read.success": "Теме означене као прочитане!"
|
||||
"topics_marked_as_read.success": "Теме означене као прочитане!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Vald",
|
||||
"all": "Alla",
|
||||
"all_categories": "Alla kategorier",
|
||||
"topics_marked_as_read.success": "Ämnet markerat som läst."
|
||||
"topics_marked_as_read.success": "Ämnet markerat som läst.",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "เลือก",
|
||||
"all": "ทั้งหมด",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "Topic ถูกทำเครื่องหมายว่าอ่านแล้วเรียบร้อย"
|
||||
"topics_marked_as_read.success": "Topic ถูกทำเครื่องหมายว่าอ่านแล้วเรียบร้อย",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -24,7 +24,7 @@
|
||||
"digest.day": "gün",
|
||||
"digest.week": "hafta",
|
||||
"digest.month": "ay",
|
||||
"digest.subject": "Digest for %1",
|
||||
"digest.subject": "%1 için özet",
|
||||
"notif.chat.subject": "Okunmamış bazı iletileriniz var",
|
||||
"notif.chat.cta": "Sohbete devam etmek için buraya tıklayın",
|
||||
"notif.chat.unsub.info": "Bu bildirim şectiğiniz ayarlar yüzünden gönderildi.",
|
||||
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Seçili",
|
||||
"all": "Hepsi",
|
||||
"all_categories": "Tüm kategoriler",
|
||||
"topics_marked_as_read.success": "Başlıklar okundu olarak işaretlendi!"
|
||||
"topics_marked_as_read.success": "Başlıklar okundu olarak işaretlendi!",
|
||||
"all-topics": "Tüm Başlıklar",
|
||||
"new-topics": "Yeni Başlıklar",
|
||||
"watched-topics": "İzlenen Başlıklar"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "Đã chọn",
|
||||
"all": "Tất cả",
|
||||
"all_categories": "Tất cả chuyên mục",
|
||||
"topics_marked_as_read.success": "Chủ đề được đánh dấu đã đọc"
|
||||
"topics_marked_as_read.success": "Chủ đề được đánh dấu đã đọc",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "已选",
|
||||
"all": "全部",
|
||||
"all_categories": "全部分类",
|
||||
"topics_marked_as_read.success": "主题被标为已读!"
|
||||
"topics_marked_as_read.success": "主题被标为已读!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -6,5 +6,8 @@
|
||||
"selected": "已選擇",
|
||||
"all": "全部",
|
||||
"all_categories": "All categories",
|
||||
"topics_marked_as_read.success": "標記主題成已讀!"
|
||||
"topics_marked_as_read.success": "標記主題成已讀!",
|
||||
"all-topics": "All Topics",
|
||||
"new-topics": "New Topics",
|
||||
"watched-topics": "Watched Topics"
|
||||
}
|
||||
@@ -15,6 +15,12 @@
|
||||
|
||||
.define-if-not-set();
|
||||
|
||||
#move_thread_modal .category-list {
|
||||
height: 500px;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
.category-list {
|
||||
padding: 0;
|
||||
|
||||
|
||||
@@ -167,6 +167,10 @@ define('admin/manage/categories', ['vendor/jquery/serializeObject/jquery.ba-seri
|
||||
});
|
||||
});
|
||||
|
||||
if (!categories.length) {
|
||||
continueRender();
|
||||
}
|
||||
|
||||
function continueRender() {
|
||||
templates.parse('admin/partials/categories/category-rows', {
|
||||
cid: parentId,
|
||||
|
||||
@@ -53,11 +53,11 @@ define('admin/settings', ['uploader', 'sounds'], function(uploader, sounds) {
|
||||
}
|
||||
}
|
||||
} else if (field.is('textarea')) {
|
||||
if (app.config[key]) {
|
||||
if (app.config.hasOwnProperty(key)) {
|
||||
field.val(app.config[key]);
|
||||
}
|
||||
} else if (field.is('select')) {
|
||||
if (app.config[key]) {
|
||||
if (app.config.hasOwnProperty(key)) {
|
||||
field.val(app.config[key]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,12 +71,6 @@ $(document).ready(function() {
|
||||
return onAjaxError(err, url, callback, quiet);
|
||||
}
|
||||
|
||||
if (window.history && window.history.pushState) {
|
||||
window.history[!quiet ? 'pushState' : 'replaceState']({
|
||||
url: url
|
||||
}, url, RELATIVE_PATH + '/' + url);
|
||||
}
|
||||
|
||||
retry = true;
|
||||
app.template = data.template.name;
|
||||
|
||||
@@ -111,6 +105,11 @@ $(document).ready(function() {
|
||||
}
|
||||
|
||||
ajaxify.currentPage = url.split(/[?#]/)[0];
|
||||
if (window.history && window.history.pushState) {
|
||||
window.history[!quiet ? 'pushState' : 'replaceState']({
|
||||
url: url
|
||||
}, url, RELATIVE_PATH + '/' + url);
|
||||
}
|
||||
return url;
|
||||
};
|
||||
|
||||
|
||||
@@ -78,11 +78,12 @@ define('forum/account/settings', ['forum/account/header', 'components', 'csrf'],
|
||||
};
|
||||
|
||||
function toggleCustomRoute() {
|
||||
$('[data-property="homePageCustom"]').val('');
|
||||
|
||||
if ($('[data-property="homePageRoute"]').val() === 'custom') {
|
||||
$('#homePageCustom').show();
|
||||
}else{
|
||||
} else {
|
||||
$('#homePageCustom').hide();
|
||||
$('[data-property="homePageCustom"]').val('');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -238,11 +238,13 @@ define('forum/topic/posts', [
|
||||
Posts.unloadImages = function(posts) {
|
||||
var images = posts.find('[component="post/content"] img:not(.not-responsive)');
|
||||
|
||||
images.each(function() {
|
||||
$(this).attr('data-src', $(this).attr('src'));
|
||||
$(this).attr('data-state', 'unloaded');
|
||||
$(this).attr('src', 'about:blank');
|
||||
});
|
||||
if (config.delayImageLoading) {
|
||||
images.each(function() {
|
||||
$(this).attr('data-src', $(this).attr('src'));
|
||||
}).attr('data-state', 'unloaded').attr('src', 'about:blank');
|
||||
} else {
|
||||
images.attr('data-state', 'loaded');
|
||||
}
|
||||
};
|
||||
|
||||
Posts.loadImages = function(threshold) {
|
||||
@@ -262,7 +264,7 @@ define('forum/topic/posts', [
|
||||
|
||||
var images = components.get('post/content').find('img[data-state="unloaded"]'),
|
||||
visible = images.filter(function() {
|
||||
return config.delayImageLoading ? utils.isElementInViewport(this) : true;
|
||||
return utils.isElementInViewport(this);
|
||||
}),
|
||||
posts = $.unique(visible.map(function() {
|
||||
return $(this).parents('[component="post"]').get(0);
|
||||
|
||||
@@ -92,7 +92,9 @@ define('chat', ['components', 'taskbar', 'string', 'sounds', 'forum/chats', 'tra
|
||||
return app.alertError(err.message);
|
||||
}
|
||||
|
||||
var rooms = data.rooms;
|
||||
var rooms = data.rooms.filter(function(room) {
|
||||
return room.teaser;
|
||||
});
|
||||
|
||||
chatsListEl.empty();
|
||||
|
||||
|
||||
@@ -3,6 +3,13 @@ define('components', function() {
|
||||
var components = {};
|
||||
|
||||
components.core = {
|
||||
'topic/teaser': function(tid) {
|
||||
if (tid) {
|
||||
return $('[component="category/topic"][data-tid="' + tid + '"] [component="topic/teaser"]');
|
||||
} else {
|
||||
return $('[component="topic/teaser"]');
|
||||
}
|
||||
},
|
||||
'post': function(name, value) {
|
||||
return $('[component="post"][data-' + name + '="' + value + '"]');
|
||||
},
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
* Repository: https://github.com/yuku-t/jquery-textcomplete
|
||||
* License: MIT (https://github.com/yuku-t/jquery-textcomplete/blob/master/LICENSE)
|
||||
* Author: Yuku Takahashi
|
||||
* Version: 1.3.1
|
||||
* Version: 1.3.4
|
||||
*/
|
||||
|
||||
if (typeof jQuery === 'undefined') {
|
||||
@@ -796,8 +796,14 @@ if (typeof jQuery === 'undefined') {
|
||||
// (which makes our elements wrap onto the next line and corrupt the next item), if we're close to the right
|
||||
// edge, move left. We don't know how far to move left, so just keep nudging a bit.
|
||||
var tolerance = 30; // pixels. Make wider than vertical scrollbar because we might not be able to use that space.
|
||||
while (this.$el.offset().left + this.$el.width() > $window.width() - tolerance) {
|
||||
this.$el.offset({left: this.$el.offset().left - tolerance});
|
||||
var lastOffset = this.$el.offset().left, offset;
|
||||
var width = this.$el.width();
|
||||
var maxLeft = $window.width() - tolerance;
|
||||
while (lastOffset + width > maxLeft) {
|
||||
this.$el.offset({left: lastOffset - tolerance});
|
||||
offset = this.$el.offset().left;
|
||||
if (offset >= lastOffset) { break; }
|
||||
lastOffset = offset;
|
||||
}
|
||||
},
|
||||
|
||||
@@ -1056,9 +1062,28 @@ if (typeof jQuery === 'undefined') {
|
||||
_getCaretRelativePosition: function () {
|
||||
var p = $.fn.textcomplete.getCaretCoordinates(this.el, this.el.selectionStart);
|
||||
return {
|
||||
top: p.top + parseInt(this.$el.css('line-height'), 10) - this.$el.scrollTop(),
|
||||
top: p.top + this._calculateLineHeight() - this.$el.scrollTop(),
|
||||
left: p.left - this.$el.scrollLeft()
|
||||
};
|
||||
},
|
||||
|
||||
_calculateLineHeight: function () {
|
||||
var lineHeight = parseInt(this.$el.css('line-height'), 10);
|
||||
if (isNaN(lineHeight)) {
|
||||
// http://stackoverflow.com/a/4515470/1297336
|
||||
var parentNode = this.el.parentNode;
|
||||
var temp = document.createElement(this.el.nodeName);
|
||||
var style = this.el.style;
|
||||
temp.setAttribute(
|
||||
'style',
|
||||
'margin:0px;padding:0px;font-family:' + style.fontFamily + ';font-size:' + style.fontSize
|
||||
);
|
||||
temp.innerHTML = 'test';
|
||||
parentNode.appendChild(temp);
|
||||
lineHeight = temp.clientHeight;
|
||||
parentNode.removeChild(temp);
|
||||
}
|
||||
return lineHeight;
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1248,7 +1273,7 @@ if (typeof jQuery === 'undefined') {
|
||||
//
|
||||
// https://github.com/component/textarea-caret-position
|
||||
|
||||
(function () {
|
||||
(function ($) {
|
||||
|
||||
// The properties that we copy into a mirrored div.
|
||||
// Note that some browsers, such as Firefox,
|
||||
@@ -1369,13 +1394,9 @@ function getCaretCoordinates(element, position, options) {
|
||||
return coordinates;
|
||||
}
|
||||
|
||||
if (typeof module != 'undefined' && typeof module.exports != 'undefined') {
|
||||
module.exports = getCaretCoordinates;
|
||||
} else if(isBrowser){
|
||||
window.$.fn.textcomplete.getCaretCoordinates = getCaretCoordinates;
|
||||
}
|
||||
$.fn.textcomplete.getCaretCoordinates = getCaretCoordinates;
|
||||
|
||||
}());
|
||||
}(jQuery));
|
||||
|
||||
return jQuery;
|
||||
}));
|
||||
}));
|
||||
|
||||
@@ -97,11 +97,11 @@ module.exports = function(Categories) {
|
||||
destination = results.destination;
|
||||
|
||||
var tasks = [];
|
||||
if (parseInt(results.source.parentCid, 10)) {
|
||||
if (utils.isNumber(results.source.parentCid)) {
|
||||
tasks.push(async.apply(db.sortedSetAdd, 'cid:' + results.source.parentCid + ':children', results.source.order, toCid));
|
||||
}
|
||||
|
||||
if (destination && parseInt(destination.parentCid, 10)) {
|
||||
if (destination && utils.isNumber(destination.parentCid)) {
|
||||
tasks.push(async.apply(db.sortedSetRemove, 'cid:' + destination.parentCid + ':children', toCid));
|
||||
}
|
||||
|
||||
|
||||
@@ -96,8 +96,18 @@ settingsController.get = function(req, res, callback) {
|
||||
{ "name": "Yeti", "value": "yeti" }
|
||||
];
|
||||
|
||||
var isCustom = true;
|
||||
userData.homePageRoutes.forEach(function(route) {
|
||||
route.selected = route.route === userData.settings.homePageRoute;
|
||||
if (route.selected) {
|
||||
isCustom = false;
|
||||
}
|
||||
});
|
||||
|
||||
userData.homePageRoutes.push({
|
||||
route: 'custom',
|
||||
name: 'Custom',
|
||||
selected: isCustom
|
||||
});
|
||||
|
||||
userData.bootswatchSkinOptions.forEach(function(skin) {
|
||||
@@ -142,40 +152,28 @@ function getHomePageRoutes(callback) {
|
||||
name: 'Category: ' + category.name
|
||||
};
|
||||
});
|
||||
next(null, categoryData);
|
||||
|
||||
categoryData = categoryData || [];
|
||||
|
||||
plugins.fireHook('filter:homepage.get', {routes: [
|
||||
{
|
||||
route: 'categories',
|
||||
name: 'Categories'
|
||||
},
|
||||
{
|
||||
route: 'recent',
|
||||
name: 'Recent'
|
||||
},
|
||||
{
|
||||
route: 'popular',
|
||||
name: 'Popular'
|
||||
}
|
||||
].concat(categoryData)}, next);
|
||||
},
|
||||
function (data, next) {
|
||||
next(null, data.routes);
|
||||
}
|
||||
], function(err, categoryData) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
categoryData = categoryData || [];
|
||||
|
||||
plugins.fireHook('filter:homepage.get', {routes: [
|
||||
{
|
||||
route: 'categories',
|
||||
name: 'Categories'
|
||||
},
|
||||
{
|
||||
route: 'recent',
|
||||
name: 'Recent'
|
||||
},
|
||||
{
|
||||
route: 'popular',
|
||||
name: 'Popular'
|
||||
}
|
||||
].concat(categoryData)}, function(err, data) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
|
||||
data.routes.push({
|
||||
route: 'custom',
|
||||
name: 'Custom'
|
||||
});
|
||||
|
||||
callback(null, data.routes);
|
||||
});
|
||||
});
|
||||
], callback);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -71,6 +71,13 @@ helpers.buildCategoryBreadcrumbs = function(cid, callback) {
|
||||
return callback(err);
|
||||
}
|
||||
|
||||
if (!meta.config.homePageRoute && meta.config.homePageCustom) {
|
||||
breadcrumbs.unshift({
|
||||
text: '[[global:header.categories]]',
|
||||
url: nconf.get('relative_path') + '/categories'
|
||||
});
|
||||
}
|
||||
|
||||
breadcrumbs.unshift({
|
||||
text: '[[global:home]]',
|
||||
url: nconf.get('relative_path') + '/'
|
||||
|
||||
@@ -30,7 +30,7 @@ var Controllers = {
|
||||
|
||||
|
||||
Controllers.home = function(req, res, next) {
|
||||
var route = meta.config.homePageRoute || meta.config.homePageCustom.replace(/^\/+/, '') || 'categories';
|
||||
var route = meta.config.homePageRoute || (meta.config.homePageCustom || '').replace(/^\/+/, '') || 'categories';
|
||||
|
||||
user.getSettings(req.uid, function(err, settings) {
|
||||
if (err) {
|
||||
@@ -308,12 +308,12 @@ Controllers.manifest = function(req, res) {
|
||||
};
|
||||
|
||||
Controllers.outgoing = function(req, res, next) {
|
||||
var url = req.query.url,
|
||||
data = {
|
||||
url: validator.escape(url),
|
||||
title: meta.config.title,
|
||||
breadcrumbs: helpers.buildBreadcrumbs([{text: '[[notifications:outgoing_link]]'}])
|
||||
};
|
||||
var url = req.query.url;
|
||||
var data = {
|
||||
url: validator.escape(String(url)),
|
||||
title: meta.config.title,
|
||||
breadcrumbs: helpers.buildBreadcrumbs([{text: '[[notifications:outgoing_link]]'}])
|
||||
};
|
||||
|
||||
if (url) {
|
||||
res.render('outgoing', data);
|
||||
|
||||
@@ -50,6 +50,13 @@ file.base64ToLocal = function(imageData, uploadPath, callback) {
|
||||
};
|
||||
|
||||
file.isFileTypeAllowed = function(path, callback) {
|
||||
var plugins = require('./plugins');
|
||||
if (plugins.hasListeners('filter:file.isFileTypeAllowed')) {
|
||||
return plugins.fireHook('filter:file.isFileTypeAllowed', path, function(err) {
|
||||
callback(err);
|
||||
});
|
||||
}
|
||||
|
||||
// Attempt to read the file, if it passes, file type is allowed
|
||||
jimp.read(path, function(err) {
|
||||
callback(err);
|
||||
@@ -95,4 +102,4 @@ file.existsSync = function(path) {
|
||||
return !!exists;
|
||||
};
|
||||
|
||||
module.exports = file;
|
||||
module.exports = file;
|
||||
|
||||
Reference in New Issue
Block a user