Merge branch 'GhassenRjab-fix-files-access' into devel

FIX SECURITY ISSUE Files accessible without authentication.
Thanks to GhassenRjab ! Closes #1105
pull/1156/head
Lauri Ojansivu 8 years ago
commit 7e0bcacf91
  1. 10
      CHANGELOG.md
  2. 4
      i18n/de.i18n.json
  3. 6
      i18n/fr.i18n.json
  4. 106
      i18n/ja.i18n.json
  5. 116
      i18n/tr.i18n.json
  6. 18
      models/attachments.js

@ -1,10 +1,16 @@
# Upcoming Wekan release # Upcoming Wekan release
This release fixes the following bugs: This release adds the following new features:
* [Add dwrensha's Sandstorm patch to Wekan so it does not need to be maintained
separately](https://github.com/wekan/wekan/commit/bda15daa78556223117a5846941aafd1212f14d3).
and fixes the following bugs:
* [FIX SECURITY ISSUE Files accessible without authentication](https://github.com/wekan/wekan/issues/1105);
* [Fix showing card activity history in IE11](https://github.com/wekan/wekan/pull/1152). * [Fix showing card activity history in IE11](https://github.com/wekan/wekan/pull/1152).
Thanks to GitHub user nztqa for contributions. Thanks to GitHub users GhassenRjab and nztqa for their contributions.
# v0.30 2017-07-27 Wekan release # v0.30 2017-07-27 Wekan release

@ -36,8 +36,8 @@
"activity-removed": "hat %s von %s entfernt", "activity-removed": "hat %s von %s entfernt",
"activity-sent": "hat %s an %s gesendet", "activity-sent": "hat %s an %s gesendet",
"activity-unjoined": "hat %s verlassen", "activity-unjoined": "hat %s verlassen",
"activity-checklist-added": "hat Checkliste zu %s hinzugefügt", "activity-checklist-added": "hat eine Checkliste zu %s hinzugefügt",
"activity-checklist-item-added": "added checklist item to '%s' in %s", "activity-checklist-item-added": "hat einen Punkt zur Checkliste '%s' in %s hinzugefügt",
"add": "Hinzufügen", "add": "Hinzufügen",
"add-attachment": "Datei anhängen", "add-attachment": "Datei anhängen",
"add-board": "neues Board", "add-board": "neues Board",

@ -37,7 +37,7 @@
"activity-sent": "a envoyé %s vers %s", "activity-sent": "a envoyé %s vers %s",
"activity-unjoined": "a quitté %s", "activity-unjoined": "a quitté %s",
"activity-checklist-added": "a ajouté une checklist à %s", "activity-checklist-added": "a ajouté une checklist à %s",
"activity-checklist-item-added": "added checklist item to '%s' in %s", "activity-checklist-item-added": "a ajouté une checklist à '%s' dans %s",
"add": "Ajouter", "add": "Ajouter",
"add-attachment": "Ajouter une pièce jointe", "add-attachment": "Ajouter une pièce jointe",
"add-board": "Ajouter un tableau", "add-board": "Ajouter un tableau",
@ -364,6 +364,6 @@
"email-invite-register-text": "Cher __user__,\n\n__inviter__ vous invite à le rejoindre sur Wekan pour collaborer.\n\nVeuillez suivre le lien ci-dessous :\n__url__\n\nVotre code d'invitation est : __icode__\n\nMerci.", "email-invite-register-text": "Cher __user__,\n\n__inviter__ vous invite à le rejoindre sur Wekan pour collaborer.\n\nVeuillez suivre le lien ci-dessous :\n__url__\n\nVotre code d'invitation est : __icode__\n\nMerci.",
"error-invitation-code-not-exist": "Ce code d'invitation n'existe pas.", "error-invitation-code-not-exist": "Ce code d'invitation n'existe pas.",
"error-notAuthorized": "Vous n'êtes pas autorisé à accéder à cette page.", "error-notAuthorized": "Vous n'êtes pas autorisé à accéder à cette page.",
"outgoing-webhooks": "Outgoing Webhooks", "outgoing-webhooks": "Webhooks sortants",
"outgoingWebhooksPopup-title": "Outgoing Webhooks" "outgoingWebhooksPopup-title": "Webhooks sortants"
} }

@ -1,23 +1,23 @@
{ {
"accept": "受け入れ", "accept": "受け入れ",
"act-activity-notify": "[Wekan] Activity Notification", "act-activity-notify": "[Wekan] アクティビティ通知",
"act-addAttachment": "attached __attachment__ to __card__", "act-addAttachment": "__card__ に __attachment__ を添付しました",
"act-addComment": "commented on __card__: __comment__ ", "act-addComment": "__card__: __comment__ をコメントしました",
"act-createBoard": "created __board__ ", "act-createBoard": "__board__ を作成しました",
"act-createCard": "added __card__ to __list__ ", "act-createCard": "__list__ に __card__ を追加しました",
"act-createList": "added __list__ to __board__ ", "act-createList": "__board__ に __list__ を追加しました",
"act-addBoardMember": "added __member__ to __board__ ", "act-addBoardMember": "__board__ に __member__ を追加しました",
"act-archivedBoard": "archived __board__ ", "act-archivedBoard": "__board__ をアーカイブしました",
"act-archivedCard": "archived __card__", "act-archivedCard": "__card__ をアーカイブしました",
"act-archivedList": "archived __list__", "act-archivedList": "__list__ をアーカイブしました",
"act-importBoard": "imported __board__", "act-importBoard": "__board__ をインポートしました",
"act-importCard": "imported __card__", "act-importCard": "__card__ をインポートしました",
"act-importList": "imported __list__", "act-importList": "__list__ をインポートしました",
"act-joinMember": "added __member__ to __card__", "act-joinMember": "__card__ に __member__ を追加しました",
"act-moveCard": "moved __card__ from __oldList__ to __list__", "act-moveCard": "__card__ を __oldList__ から __list__ に 移動しました",
"act-removeBoardMember": "removed __member__ from __board__", "act-removeBoardMember": "__board__ から __member__ を削除しました",
"act-restoredCard": "restored __card__ to __board__", "act-restoredCard": "__card__ を __board__ にリストアしました",
"act-unjoinMember": "removed __member__ from __card__", "act-unjoinMember": "__card__ から __member__ を削除しました",
"act-withBoardTitle": "[Wekan] __board__", "act-withBoardTitle": "[Wekan] __board__",
"act-withCardTitle": "[__board__] __card__", "act-withCardTitle": "[__board__] __card__",
"actions": "操作", "actions": "操作",
@ -39,14 +39,14 @@
"activity-checklist-added": "%s にチェックリストを追加しました", "activity-checklist-added": "%s にチェックリストを追加しました",
"activity-checklist-item-added": "added checklist item to '%s' in %s", "activity-checklist-item-added": "added checklist item to '%s' in %s",
"add": "追加", "add": "追加",
"add-attachment": "Add Attachment", "add-attachment": "添付ファイルを追加",
"add-board": "Add Board", "add-board": "ボードを追加",
"add-card": "Add Card", "add-card": "カードを追加",
"add-checklist": "Add Checklist", "add-checklist": "チェックリストを追加",
"add-checklist-item": "チェックリストに項目を追加", "add-checklist-item": "チェックリストに項目を追加",
"add-cover": "カバーの追加", "add-cover": "カバーの追加",
"add-label": "Add Label", "add-label": "ラベルを追加",
"add-list": "Add List", "add-list": "リストを追加",
"add-members": "メンバーの追加", "add-members": "メンバーの追加",
"added": "追加しました", "added": "追加しました",
"addMemberPopup-title": "メンバー", "addMemberPopup-title": "メンバー",
@ -56,18 +56,18 @@
"and-n-other-card": "And __count__ other card", "and-n-other-card": "And __count__ other card",
"and-n-other-card_plural": "And __count__ other cards", "and-n-other-card_plural": "And __count__ other cards",
"apply": "適用", "apply": "適用",
"app-is-offline": "Wekan is loading, please wait. Refreshing the page will cause data loss. If Wekan does not load, please check that Wekan server has not stopped.", "app-is-offline": "現在オフラインです。ページを更新すると保存していないデータは失われます。",
"archive": "アーカイブ", "archive": "アーカイブ",
"archive-all": "すべてをアーカイブ", "archive-all": "すべてをアーカイブ",
"archive-board": "ボードをアーカイブ", "archive-board": "ボードをアーカイブ",
"archive-card": "カードをアーカイブ", "archive-card": "カードをアーカイブ",
"archive-list": "Archive List", "archive-list": "このリストをアーカイブ",
"archive-selection": "選択したものをアーカイブ", "archive-selection": "選択したものをアーカイブ",
"archiveBoardPopup-title": "ボードをアーカイブしますか?", "archiveBoardPopup-title": "ボードをアーカイブしますか?",
"archived-items": "アーカイブされたアイテム", "archived-items": "アーカイブされたアイテム",
"archived-boards": "Archived Boards", "archived-boards": "アーカイブ済のボード",
"restore-board": "Restore Board", "restore-board": "ボードをリストア",
"no-archived-boards": "No Archived Boards.", "no-archived-boards": "アーカイブされたボードはありません",
"archives": "アーカイブ", "archives": "アーカイブ",
"assign-member": "メンバーの割当", "assign-member": "メンバーの割当",
"attached": "添付されました", "attached": "添付されました",
@ -75,13 +75,13 @@
"attachment-delete-pop": "添付ファイルの削除をすると取り消しできません。", "attachment-delete-pop": "添付ファイルの削除をすると取り消しできません。",
"attachmentDeletePopup-title": "添付ファイルを削除しますか?", "attachmentDeletePopup-title": "添付ファイルを削除しますか?",
"attachments": "添付ファイル", "attachments": "添付ファイル",
"auto-watch": "Automatically watch boards when they are created", "auto-watch": "作成されたボードを自動的にウォッチする",
"avatar-too-big": "The avatar is too large (70KB max)", "avatar-too-big": "アバターが大きすぎます(最大70KB)",
"back": "戻る", "back": "戻る",
"board-change-color": "色の変更", "board-change-color": "色の変更",
"board-nb-stars": "%s stars", "board-nb-stars": "%s stars",
"board-not-found": "ボードが見つかりません", "board-not-found": "ボードが見つかりません",
"board-private-info": "This board will be <strong>private</strong>.", "board-private-info": "ボードは <strong>非公開</strong> になります。",
"board-public-info": "ボードは公開されます。", "board-public-info": "ボードは公開されます。",
"boardChangeColorPopup-title": "ボードの背景を変更", "boardChangeColorPopup-title": "ボードの背景を変更",
"boardChangeTitlePopup-title": "ボード名の変更", "boardChangeTitlePopup-title": "ボード名の変更",
@ -140,13 +140,13 @@
"color-sky": "空", "color-sky": "空",
"color-yellow": "黄", "color-yellow": "黄",
"comment": "コメント", "comment": "コメント",
"comment-placeholder": "Write Comment", "comment-placeholder": "コメントを書く",
"comment-only": "Comment only", "comment-only": "コメントのみ",
"comment-only-desc": "Can comment on cards only.", "comment-only-desc": "カードにのみコメント可能",
"computer": "コンピューター", "computer": "コンピューター",
"create": "作成", "create": "作成",
"createBoardPopup-title": "ボードの作成", "createBoardPopup-title": "ボードの作成",
"chooseBoardSourcePopup-title": "Import board", "chooseBoardSourcePopup-title": "ボードをインポート",
"createLabelPopup-title": "ラベルの作成", "createLabelPopup-title": "ラベルの作成",
"current": "現在", "current": "現在",
"date": "日付", "date": "日付",
@ -188,7 +188,7 @@
"error-json-schema": "Your JSON data does not include the proper information in the correct format", "error-json-schema": "Your JSON data does not include the proper information in the correct format",
"error-list-doesNotExist": "This list does not exist", "error-list-doesNotExist": "This list does not exist",
"error-user-doesNotExist": "ユーザーが存在しません", "error-user-doesNotExist": "ユーザーが存在しません",
"error-user-notAllowSelf": "You can not invite yourself", "error-user-notAllowSelf": "自分を招待することはできません。",
"error-user-notCreated": "ユーザーが作成されていません", "error-user-notCreated": "ユーザーが作成されていません",
"error-username-taken": "このユーザ名は既に使用されています", "error-username-taken": "このユーザ名は既に使用されています",
"export-board": "ボードのエクスポート", "export-board": "ボードのエクスポート",
@ -206,15 +206,15 @@
"headerBarCreateBoardPopup-title": "ボードの作成", "headerBarCreateBoardPopup-title": "ボードの作成",
"home": "ホーム", "home": "ホーム",
"import": "インポート", "import": "インポート",
"import-board": "import board", "import-board": "ボードをインポート",
"import-board-c": "Import board", "import-board-c": "ボードをインポート",
"import-board-title-trello": "Trelloからボードをインポート", "import-board-title-trello": "Trelloからボードをインポート",
"import-board-title-wekan": "Import board from Wekan", "import-board-title-wekan": "Wekanからボードをインポート",
"import-sandstorm-warning": "Imported board will delete all existing data on board and replace it with imported board.", "import-sandstorm-warning": "Imported board will delete all existing data on board and replace it with imported board.",
"from-trello": "From Trello", "from-trello": "Trelloから",
"from-wekan": "From Wekan", "from-wekan": "Wekanから",
"import-board-instruction-trello": "In your Trello board, go to 'Menu', then 'More', 'Print and Export', 'Export JSON', and copy the resulting text", "import-board-instruction-trello": "In your Trello board, go to 'Menu', then 'More', 'Print and Export', 'Export JSON', and copy the resulting text",
"import-board-instruction-wekan": "In your Wekan board, go to 'Menu', then 'Export board', and copy the text in the downloaded file.", "import-board-instruction-wekan": "Wekanボード → 'Menu' → 'Export board' → ダウンロードされたファイルからテキストをコピーする。",
"import-json-placeholder": "Paste your valid JSON data here", "import-json-placeholder": "Paste your valid JSON data here",
"import-map-members": "メンバーを紐付け", "import-map-members": "メンバーを紐付け",
"import-members-map": "Your imported board has some members. Please map the members you want to import to Wekan users", "import-members-map": "Your imported board has some members. Please map the members you want to import to Wekan users",
@ -242,7 +242,7 @@
"listActionPopup-title": "操作一覧", "listActionPopup-title": "操作一覧",
"listImportCardPopup-title": "Trelloのカードをインポート", "listImportCardPopup-title": "Trelloのカードをインポート",
"listMorePopup-title": "さらに見る", "listMorePopup-title": "さらに見る",
"link-list": "Link to this list", "link-list": "このリストへのリンク",
"list-delete-pop": "All actions will be removed from the activity feed and you won't be able to recover the list. There is no undo.", "list-delete-pop": "All actions will be removed from the activity feed and you won't be able to recover the list. There is no undo.",
"list-delete-suggest-archive": "You can archive a list to remove it from the board and preserve the activity.", "list-delete-suggest-archive": "You can archive a list to remove it from the board and preserve the activity.",
"lists": "リスト", "lists": "リスト",
@ -252,7 +252,7 @@
"memberMenuPopup-title": "メンバー設定", "memberMenuPopup-title": "メンバー設定",
"members": "メンバー", "members": "メンバー",
"menu": "メニュー", "menu": "メニュー",
"move-selection": "Move selection", "move-selection": "選択したものを移動",
"moveCardPopup-title": "カードの移動", "moveCardPopup-title": "カードの移動",
"moveCardToBottom-title": "最下部に移動", "moveCardToBottom-title": "最下部に移動",
"moveCardToTop-title": "先頭に移動", "moveCardToTop-title": "先頭に移動",
@ -289,8 +289,8 @@
"quick-access-description": "Star a board to add a shortcut in this bar.", "quick-access-description": "Star a board to add a shortcut in this bar.",
"remove-cover": "カバーの削除", "remove-cover": "カバーの削除",
"remove-from-board": "ボードから外す", "remove-from-board": "ボードから外す",
"remove-label": "Remove Label", "remove-label": "ラベルの削除",
"listDeletePopup-title": "Delete List ?", "listDeletePopup-title": "リストを削除しますか?",
"remove-member": "メンバーを外す", "remove-member": "メンバーを外す",
"remove-member-from-card": "カードから外す", "remove-member-from-card": "カードから外す",
"remove-member-pop": "__boardTitle__ から __name__ (__username__) を外しますか?メンバーはこのボードのすべてのカードから外れ、通知を受けます。", "remove-member-pop": "__boardTitle__ から __name__ (__username__) を外しますか?メンバーはこのボードのすべてのカードから外れ、通知を受けます。",
@ -300,7 +300,7 @@
"restore": "Restore", "restore": "Restore",
"save": "保存", "save": "保存",
"search": "検索", "search": "検索",
"select-color": "Select Color", "select-color": "色を選択",
"shortcut-assign-self": "自分をこのカードに割り当てる", "shortcut-assign-self": "自分をこのカードに割り当てる",
"shortcut-autocomplete-emoji": "Autocomplete emoji", "shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members", "shortcut-autocomplete-members": "Autocomplete members",
@ -343,12 +343,12 @@
"what-to-do": "何をしたいですか?", "what-to-do": "何をしたいですか?",
"admin-panel": "管理パネル", "admin-panel": "管理パネル",
"settings": "設定", "settings": "設定",
"people": "People", "people": "メンバー",
"registration": "登録", "registration": "登録",
"disable-self-registration": "自己登録を無効化", "disable-self-registration": "自己登録を無効化",
"invite": "招待", "invite": "招待",
"invite-people": "Invite People", "invite-people": "メンバーを招待",
"to-boards": "To board(s)", "to-boards": "ボードへ",
"email-addresses": "Emailアドレス", "email-addresses": "Emailアドレス",
"smtp-host-description": "Emailを処理するSMTPサーバーのアドレス", "smtp-host-description": "Emailを処理するSMTPサーバーのアドレス",
"smtp-port-description": "SMTPサーバーがEmail送信に使用するポート", "smtp-port-description": "SMTPサーバーがEmail送信に使用するポート",
@ -361,9 +361,9 @@
"send-from": "送信元", "send-from": "送信元",
"invitation-code": "招待コード", "invitation-code": "招待コード",
"email-invite-register-subject": "__inviter__ sent you an invitation", "email-invite-register-subject": "__inviter__ sent you an invitation",
"email-invite-register-text": "Dear __user__,\n\n__inviter__ invites you to Wekan for collaborations.\n\nPlease follow the link below:\n__url__\n\nAnd your invitation code is: __icode__\n\nThanks.", "email-invite-register-text": " __user__ さん\n\n__inviter__ があなたをWekanに招待しました。\n\n以下のリンクをクリックしてください。\n__url__\n\nあなたの招待コードは、 __icode__ です。\n\nよろしくお願いします。",
"error-invitation-code-not-exist": "招待コードが存在しません", "error-invitation-code-not-exist": "招待コードが存在しません",
"error-notAuthorized": "You are not authorized to view this page.", "error-notAuthorized": "このページを参照する権限がありません。",
"outgoing-webhooks": "Outgoing Webhooks", "outgoing-webhooks": "Outgoing Webhooks",
"outgoingWebhooksPopup-title": "Outgoing Webhooks" "outgoingWebhooksPopup-title": "Outgoing Webhooks"
} }

@ -16,7 +16,7 @@
"act-joinMember": "__member__ kullanıcısnı __card__ kartına ekledi", "act-joinMember": "__member__ kullanıcısnı __card__ kartına ekledi",
"act-moveCard": "__card__ kartını __oldList__ listesinden __list__ listesine taşıdı", "act-moveCard": "__card__ kartını __oldList__ listesinden __list__ listesine taşıdı",
"act-removeBoardMember": "__board__ panosundan __member__ kullanıcısını çıkarttı", "act-removeBoardMember": "__board__ panosundan __member__ kullanıcısını çıkarttı",
"act-restoredCard": "__card__ kartını __board__ panosuna geri döndürdü", "act-restoredCard": "__card__ kartını __board__ panosuna geri getirdi",
"act-unjoinMember": "__member__ kullanıcısnı __card__ kartından çıkarttı", "act-unjoinMember": "__member__ kullanıcısnı __card__ kartından çıkarttı",
"act-withBoardTitle": "[Wekan] __board__", "act-withBoardTitle": "[Wekan] __board__",
"act-withCardTitle": "[__board__] __card__", "act-withCardTitle": "[__board__] __card__",
@ -24,11 +24,11 @@
"activities": "Etkinlikler", "activities": "Etkinlikler",
"activity": "Etkinlik", "activity": "Etkinlik",
"activity-added": "%s içine %s ekledi", "activity-added": "%s içine %s ekledi",
"activity-archived": "%s arşivledi", "activity-archived": "%s öğesini arşivledi",
"activity-attached": "%s içine %s ekledi", "activity-attached": "%s içine %s ekledi",
"activity-created": "%s oluşturdu", "activity-created": "%s öğesini oluşturdu",
"activity-excluded": "%s içinden %s çıkarttı", "activity-excluded": "%s içinden %s çıkarttı",
"activity-imported": "%s i %s içine taşıdı, kaynağı %s", "activity-imported": "%s kaynağından %s öğesini %s öğesinin içine taşıdı ",
"activity-imported-board": "%s i %s içinden aktardı", "activity-imported-board": "%s i %s içinden aktardı",
"activity-joined": "şuna katıldı: %s", "activity-joined": "şuna katıldı: %s",
"activity-moved": "%s i %s içinden %s içine taşıdı", "activity-moved": "%s i %s içinden %s içine taşıdı",
@ -36,14 +36,14 @@
"activity-removed": "%s i %s ten kaldırdı", "activity-removed": "%s i %s ten kaldırdı",
"activity-sent": "%s i %s e gönderdi", "activity-sent": "%s i %s e gönderdi",
"activity-unjoined": "%s içinden ayrıldı", "activity-unjoined": "%s içinden ayrıldı",
"activity-checklist-added": "%s içine liste ekledi", "activity-checklist-added": "%s içine yapılacak listesi ekledi",
"activity-checklist-item-added": "added checklist item to '%s' in %s", "activity-checklist-item-added": "%s içinde %s yapılacak listesine öğe ekledi",
"add": "Ekle", "add": "Ekle",
"add-attachment": "Ek Ekle", "add-attachment": "Ek Ekle",
"add-board": "Pano Ekle", "add-board": "Pano Ekle",
"add-card": "Kart Ekle", "add-card": "Kart Ekle",
"add-checklist": "Yapılacak Listesi Ekle", "add-checklist": "Yapılacak Listesi Ekle",
"add-checklist-item": "Yapılacak listes yeni bir eleman ekle", "add-checklist-item": "Yapılacak listesine yeni bir öğe ekle",
"add-cover": "Kapak resmi ekle", "add-cover": "Kapak resmi ekle",
"add-label": "Etiket Ekle", "add-label": "Etiket Ekle",
"add-list": "Liste Ekle", "add-list": "Liste Ekle",
@ -51,7 +51,7 @@
"added": "Eklendi", "added": "Eklendi",
"addMemberPopup-title": "Üyeler", "addMemberPopup-title": "Üyeler",
"admin": "Yönetici", "admin": "Yönetici",
"admin-desc": "Kartları görüntüler ve düzenler, üyeleri çıkarır ve pano ayarlarını değiştirir.", "admin-desc": "Kartları görüntüleyebilir ve düzenleyebilir, üyeleri çıkarabilir ve pano ayarlarını değiştirebilir.",
"all-boards": "Tüm panolar", "all-boards": "Tüm panolar",
"and-n-other-card": "Ve __count__ diğer kart", "and-n-other-card": "Ve __count__ diğer kart",
"and-n-other-card_plural": "Ve __count__ diğer kart", "and-n-other-card_plural": "Ve __count__ diğer kart",
@ -66,7 +66,7 @@
"archiveBoardPopup-title": "Pano arşivlensin mi?", "archiveBoardPopup-title": "Pano arşivlensin mi?",
"archived-items": "Arşivlenmiş Öğeler", "archived-items": "Arşivlenmiş Öğeler",
"archived-boards": "Arşivlenmiş Panolar", "archived-boards": "Arşivlenmiş Panolar",
"restore-board": "Panoyu Tekrar Yükle", "restore-board": "Panoyu Geri Getir",
"no-archived-boards": "Arşivlenmiş Pano Yok.", "no-archived-boards": "Arşivlenmiş Pano Yok.",
"archives": "Arşiv", "archives": "Arşiv",
"assign-member": "Üye ata", "assign-member": "Üye ata",
@ -96,15 +96,15 @@
"card-delete-notice": "Silme işlemi kalıcıdır. Bu kartla ilişkili tüm eylemleri kaybedersiniz.", "card-delete-notice": "Silme işlemi kalıcıdır. Bu kartla ilişkili tüm eylemleri kaybedersiniz.",
"card-delete-pop": "Son hareketler alanındaki tüm veriler silinecek, ayrıca bu kartı yeniden açamayacaksın. Bu işlemin geri dönüşü yok.", "card-delete-pop": "Son hareketler alanındaki tüm veriler silinecek, ayrıca bu kartı yeniden açamayacaksın. Bu işlemin geri dönüşü yok.",
"card-delete-suggest-archive": "Kartı panodan kaldırıp, buna rağmen aktivitelerini saklamak istiyorsan kartı arşivleyebilirsin.", "card-delete-suggest-archive": "Kartı panodan kaldırıp, buna rağmen aktivitelerini saklamak istiyorsan kartı arşivleyebilirsin.",
"card-due": u zamanda:", "card-due": "Bitiş",
"card-due-on": "şu zamanda:", "card-due-on": "Bitiş tarihi:",
"card-edit-attachments": "Ek dosyasını düzenle", "card-edit-attachments": "Ek dosyasını düzenle",
"card-edit-labels": "Etiketleri düzenle", "card-edit-labels": "Etiketleri düzenle",
"card-edit-members": "Üyeleri düzenle", "card-edit-members": "Üyeleri düzenle",
"card-labels-title": "Bu kart için etiketleri düzenle", "card-labels-title": "Bu kart için etiketleri düzenle",
"card-members-title": "Karta pano içindeki üyeleri ekler veya çıkartır.", "card-members-title": "Karta pano içindeki üyeleri ekler veya çıkartır.",
"card-start": "Başlama", "card-start": "Başlama",
"card-start-on": "Başlama:", "card-start-on": "Başlama tarihi:",
"cardAttachmentsPopup-title": "Eklenme", "cardAttachmentsPopup-title": "Eklenme",
"cardDeletePopup-title": "Kart Silinsin mi?", "cardDeletePopup-title": "Kart Silinsin mi?",
"cardDetailsActionsPopup-title": "Kart işlemleri", "cardDetailsActionsPopup-title": "Kart işlemleri",
@ -122,13 +122,13 @@
"changePasswordPopup-title": "Parola Değiştir", "changePasswordPopup-title": "Parola Değiştir",
"changePermissionsPopup-title": "Yetkileri Değiştirme", "changePermissionsPopup-title": "Yetkileri Değiştirme",
"changeSettingsPopup-title": "Ayarları değiştir", "changeSettingsPopup-title": "Ayarları değiştir",
"checklists": "Doğrulama Listeleri", "checklists": "Yapılacak Listeleri",
"click-to-star": "Bu panoyu yıldızlamak için tıkla.", "click-to-star": "Bu panoyu yıldızlamak için tıkla.",
"click-to-unstar": "Bu panunun yıldızını kaldırmak için tıkla.", "click-to-unstar": "Bu panunun yıldızını kaldırmak için tıkla.",
"clipboard": "Panodan (clipboard) veya sürükle ve bırak ile", "clipboard": "Yapıştır veya sürükleyip bırak",
"close": "Kapat", "close": "Kapat",
"close-board": "Panoyu kapat", "close-board": "Panoyu kapat",
"close-board-pop": "You will be able to restore the board by clicking the “Archives” button from the home header.", "close-board-pop": "Arşivlenen panoyu ana sayfada yer alan başlıktaki menüden \"Arşivler\" düğmesini tıklayarak geri getirebilirsiniz.",
"color-black": "siyah", "color-black": "siyah",
"color-blue": "mavi", "color-blue": "mavi",
"color-green": "yeşil", "color-green": "yeşil",
@ -157,7 +157,7 @@
"description": "Açıklama", "description": "Açıklama",
"disambiguateMultiLabelPopup-title": "Etiket işlemini izah et", "disambiguateMultiLabelPopup-title": "Etiket işlemini izah et",
"disambiguateMultiMemberPopup-title": "Üye işlemini izah et", "disambiguateMultiMemberPopup-title": "Üye işlemini izah et",
"discard": "ıskartaya çıkart", "discard": "At",
"done": "Tamam", "done": "Tamam",
"download": "İndir", "download": "İndir",
"edit": "Düzenle", "edit": "Düzenle",
@ -169,8 +169,8 @@
"editNotificationPopup-title": "Bildirimi değiştir", "editNotificationPopup-title": "Bildirimi değiştir",
"editProfilePopup-title": "Profili Düzenle", "editProfilePopup-title": "Profili Düzenle",
"email": "E-posta", "email": "E-posta",
"email-enrollAccount-subject": "__siteName__ üzerinde hesabın oluşturuldu", "email-enrollAccount-subject": "Hesabınız __siteName__ üzerinde oluşturuldu",
"email-enrollAccount-text": "Merhaba __user__,\n\nBu servisi kullanmaya başlamak için aşağıdaki linke tıklamalısın\n\n__url__\n\nTeşekkürler.", "email-enrollAccount-text": "Merhaba __user__,\n\nBu servisi kullanmaya başlamak için aşağıdaki linke tıklamalısın:\n\n__url__\n\nTeşekkürler.",
"email-fail": "E-posta gönderimi başarısız", "email-fail": "E-posta gönderimi başarısız",
"email-invalid": "Geçersiz e-posta", "email-invalid": "Geçersiz e-posta",
"email-invite": "E-posta ile davet et", "email-invite": "E-posta ile davet et",
@ -181,9 +181,9 @@
"email-sent": "E-posta gönderildi", "email-sent": "E-posta gönderildi",
"email-verifyEmail-subject": "__siteName__ üzerindeki e-posta adresini doğrulama", "email-verifyEmail-subject": "__siteName__ üzerindeki e-posta adresini doğrulama",
"email-verifyEmail-text": "Merhaba __user__,\n\nHesap e-posta adresini doğrulamak için aşağıdaki linke tıklaman yeterli.\n\n__url__\n\nTeşekkürler.", "email-verifyEmail-text": "Merhaba __user__,\n\nHesap e-posta adresini doğrulamak için aşağıdaki linke tıklaman yeterli.\n\n__url__\n\nTeşekkürler.",
"error-board-doesNotExist": "Erişmeye çalıştığın pano bulunamadı", "error-board-doesNotExist": "Pano bulunamadı",
"error-board-notAdmin": "Bu işlemi yapmak için pano yöneticisi olmalısın.", "error-board-notAdmin": "Bu işlemi yapmak için pano yöneticisi olmalısın.",
"error-board-notAMember": "Bu işlemi yapmak için pano içindeki bir üye olmalısın.", "error-board-notAMember": "Bu işlemi yapmak için panoya üye olmalısın.",
"error-json-malformed": "Girilen metin geçerli bir JSON formatında değil", "error-json-malformed": "Girilen metin geçerli bir JSON formatında değil",
"error-json-schema": "Girdiğin JSON metni tüm bilgileri doğru biçimde barındırmıyor", "error-json-schema": "Girdiğin JSON metni tüm bilgileri doğru biçimde barındırmıyor",
"error-list-doesNotExist": "Liste bulunamadı", "error-list-doesNotExist": "Liste bulunamadı",
@ -194,7 +194,7 @@
"export-board": "Panoyu dışarı aktar", "export-board": "Panoyu dışarı aktar",
"filter": "Filtre", "filter": "Filtre",
"filter-cards": "Kartları Filtrele", "filter-cards": "Kartları Filtrele",
"filter-clear": "Süzgeci temizle", "filter-clear": "Filtreyi temizle",
"filter-no-label": "Etiket yok", "filter-no-label": "Etiket yok",
"filter-no-member": "Üye yok", "filter-no-member": "Üye yok",
"filter-on": "Filtre aktif", "filter-on": "Filtre aktif",
@ -206,15 +206,15 @@
"headerBarCreateBoardPopup-title": "Pano Oluşturma", "headerBarCreateBoardPopup-title": "Pano Oluşturma",
"home": "Ana Sayfa", "home": "Ana Sayfa",
"import": "İçeri aktar", "import": "İçeri aktar",
"import-board": "import board", "import-board": "panoyu içe aktar",
"import-board-c": "Panoyu içe aktar", "import-board-c": "Panoyu içe aktar",
"import-board-title-trello": "Trello'dan panoyu içeri aktar", "import-board-title-trello": "Trello'dan panoyu içeri aktar",
"import-board-title-wekan": "Wekan'dan panoyu içe aktar", "import-board-title-wekan": "Wekan'dan panoyu içe aktar",
"import-sandstorm-warning": "Imported board will delete all existing data on board and replace it with imported board.", "import-sandstorm-warning": "İçe aktarılan pano şu anki panonun verilerinin üzerine yazılacak ve var olan veriler silinecek.",
"from-trello": "Trello'dan", "from-trello": "Trello'dan",
"from-wekan": "Wekan'dan", "from-wekan": "Wekan'dan",
"import-board-instruction-trello": "Trello panonuzda, 'Menü'ye gidip, ardıdan, 'daha fazlası' na tıklayın, 'Yazdır ve Çıktı al' sayfasından 'JSON biçiminde çıktı al' diyip, çıkan metni buraya kopyalayın.", "import-board-instruction-trello": "Trello panonuzda 'Menü'ye gidip 'Daha fazlası'na tıklayın, ardından 'Yazdır ve Çıktı Al'ı seçip 'JSON biçiminde çıktı al' diyerek çıkan metni buraya kopyalayın.",
"import-board-instruction-wekan": "In your Wekan board, go to 'Menu', then 'Export board', and copy the text in the downloaded file.", "import-board-instruction-wekan": "Wekan panonuzda önce Menü'yü, ardından \"Panoyu dışa aktar\"ı seçip bilgisayarınıza indirilen dosyanın içindeki metni kopyalayın.",
"import-json-placeholder": "Geçerli JSON verisini buraya yapıştırın", "import-json-placeholder": "Geçerli JSON verisini buraya yapıştırın",
"import-map-members": "Üyeleri eşleştirme", "import-map-members": "Üyeleri eşleştirme",
"import-members-map": "İçe aktardığın panoda bazı kullanıcılar var. Lütfen bu kullanıcıları Wekan panosundaki kullanıcılarla eşleştirin.", "import-members-map": "İçe aktardığın panoda bazı kullanıcılar var. Lütfen bu kullanıcıları Wekan panosundaki kullanıcılarla eşleştirin.",
@ -229,10 +229,10 @@
"keyboard-shortcuts": "Klavye kısayolları", "keyboard-shortcuts": "Klavye kısayolları",
"label-create": "Etiket Oluşturma", "label-create": "Etiket Oluşturma",
"label-default": "%s etiket (varsayılan)", "label-default": "%s etiket (varsayılan)",
"label-delete-pop": "Geri dönüşü yok. Tüm kartlardan bu etiket kaldırılacaktır ve geçmişini yok edecektir.", "label-delete-pop": "Bu işlem geri alınamaz. Bu etiket tüm kartlardan kaldırılacaktır ve geçmişi yok edecektir.",
"labels": "Etiketler", "labels": "Etiketler",
"language": "Dil", "language": "Dil",
"last-admin-desc": "Rolleri değiştiremezsiniz, çünkü burada en az bir yönetici olmalıdır.", "last-admin-desc": "En az bir yönetici olması gerektiğinden rolleri değiştiremezsiniz.",
"leave-board": "Panodan ayrıl", "leave-board": "Panodan ayrıl",
"link-card": "Bu kartın bağlantısı", "link-card": "Bu kartın bağlantısı",
"list-archive-cards": "Bu liste içindeki tüm kartları arşivle", "list-archive-cards": "Bu liste içindeki tüm kartları arşivle",
@ -243,13 +243,13 @@
"listImportCardPopup-title": "Bir Trello kartını içeri aktar", "listImportCardPopup-title": "Bir Trello kartını içeri aktar",
"listMorePopup-title": "Daha", "listMorePopup-title": "Daha",
"link-list": "Listeye doğrudan bağlantı", "link-list": "Listeye doğrudan bağlantı",
"list-delete-pop": "All actions will be removed from the activity feed and you won't be able to recover the list. There is no undo.", "list-delete-pop": "Etkinlik akışınızdaki tüm eylemler geri kurtarılamaz şekilde kaldırılacak. Bu işlem geri alınamaz.",
"list-delete-suggest-archive": "You can archive a list to remove it from the board and preserve the activity.", "list-delete-suggest-archive": "Bir listeyi etkinliklerini koruyarak panodan kaldırmak için arşivleyebilirsiniz.",
"lists": "Listeler", "lists": "Listeler",
"log-out": "Oturum Kapat", "log-out": "Oturum Kapat",
"log-in": "Oturum Aç", "log-in": "Oturum Aç",
"loginPopup-title": "Oturum Aç", "loginPopup-title": "Oturum Aç",
"memberMenuPopup-title": "Üye ayarları", "memberMenuPopup-title": "Üye Ayarları",
"members": "Üyeler", "members": "Üyeler",
"menu": "Menü", "menu": "Menü",
"move-selection": "Seçimi taşı", "move-selection": "Seçimi taşı",
@ -260,20 +260,20 @@
"multi-selection": "Çoklu seçim", "multi-selection": "Çoklu seçim",
"multi-selection-on": "Çoklu seçim açık", "multi-selection-on": "Çoklu seçim açık",
"muted": "Sessiz", "muted": "Sessiz",
"muted-info": "Bu panodaki değişiklikler hakkında bildirim almayacaksınız", "muted-info": "Bu panodaki hiçbir değişiklik hakkında bildirim almayacaksınız",
"my-boards": "Panolarım", "my-boards": "Panolarım",
"name": "Adı", "name": "Adı",
"no-archived-cards": "Arşivlenmiş kart bulunamadı.", "no-archived-cards": "Arşivlenmiş kart bulunamadı.",
"no-archived-lists": "Arşivlenmiş liste bulunamadı.", "no-archived-lists": "Arşivlenmiş liste bulunamadı.",
"no-results": "Sonuç yok", "no-results": "Sonuç yok",
"normal": "Normal", "normal": "Normal",
"normal-desc": "Kartları görüntüler ve düzenler. Ayarları değiştiremez.", "normal-desc": "Kartları görüntüleyebilir ve düzenleyebilir. Ayarları değiştiremez.",
"not-accepted-yet": "Davetiye henüz kabul edilmemiş", "not-accepted-yet": "Davet henüz kabul edilmemiş",
"notify-participate": "Oluşturduğunuz veya üye olduğunuz tüm kartlar hakkında bildirim alma", "notify-participate": "Oluşturduğunuz veya üye olduğunuz tüm kartlar hakkında bildirim al",
"notify-watch": "Takip ettiğiniz tüm pano, liste ve kartlar hakkında bildirim alma", "notify-watch": "Takip ettiğiniz tüm pano, liste ve kartlar hakkında bildirim al",
"optional": "isteğe bağlı", "optional": "isteğe bağlı",
"or": "veya", "or": "veya",
"page-maybe-private": "Bu sayfa özel olabilir. <a href='%s'>Oturum açarak</a> görülebilir.", "page-maybe-private": "Bu sayfa gizli olabilir. <a href='%s'>Oturum açarak</a> görmeyi deneyin.",
"page-not-found": "Sayda bulunamadı.", "page-not-found": "Sayda bulunamadı.",
"password": "Parola", "password": "Parola",
"paste-or-dragdrop": "Dosya eklemek için yapıştırabilir, veya (eğer resimse) sürükle bırak yapabilirsiniz", "paste-or-dragdrop": "Dosya eklemek için yapıştırabilir, veya (eğer resimse) sürükle bırak yapabilirsiniz",
@ -281,51 +281,51 @@
"preview": "Önizleme", "preview": "Önizleme",
"previewAttachedImagePopup-title": "Önizleme", "previewAttachedImagePopup-title": "Önizleme",
"previewClipboardImagePopup-title": "Önizleme", "previewClipboardImagePopup-title": "Önizleme",
"private": "Özel", "private": "Gizli",
"private-desc": "Bu pano özel. Sadece panoya ekli kişiler görüntüleyebilir ve düzenleyebilir.", "private-desc": "Bu pano gizli. Sadece panoya ekli kişiler görüntüleyebilir ve düzenleyebilir.",
"profile": "Kullanıcı Sayfası", "profile": "Kullanıcı Sayfası",
"public": "Genel", "public": "Genel",
"public-desc": "Bu pano genel. Bağlantı adresi ile herhangi bir kimseye görünür ve Google gibi arama motorlarında gösterilecektir. Panoyu, sadece eklenen kişiler düzenleyebilir.", "public-desc": "Bu pano genel. Bağlantı adresi ile herhangi bir kimseye görünür ve Google gibi arama motorlarında gösterilecektir. Panoyu, sadece eklenen kişiler düzenleyebilir.",
"quick-access-description": "Bu bara kısayol olarak bir pano eklemek için panoyu yıldızlamalısınız", "quick-access-description": "Bu bara kısayol olarak bir pano eklemek için panoyu yıldızlamalısınız",
"remove-cover": "Kapak resmini kaldır", "remove-cover": "Kapak Resmini Kaldır",
"remove-from-board": "Panodan kaldır", "remove-from-board": "Panodan Kaldır",
"remove-label": "Etiketi Kaldır", "remove-label": "Etiketi Kaldır",
"listDeletePopup-title": "Liste silinsin mi?", "listDeletePopup-title": "Liste silinsin mi?",
"remove-member": "Üyeyi Çıkar", "remove-member": "Üyeyi Çıkar",
"remove-member-from-card": "Karttan Çıkar", "remove-member-from-card": "Karttan Çıkar",
"remove-member-pop": "__boardTitle__ panosundan __name__ (__username__) çıkarılsın mı? Üye, bu panodaki tüm kartlardan çıkarılacak ve bir bildirim alacak.", "remove-member-pop": "__boardTitle__ panosundan __name__ (__username__) çıkarılsın mı? Üye, bu panodaki tüm kartlardan çıkarılacak. Panodan çıkarıldığı üyeye bildirilecektir.",
"removeMemberPopup-title": "Üye çıkarılsın mı?", "removeMemberPopup-title": "Üye çıkarılsın mı?",
"rename": "Yeniden adlandır", "rename": "Yeniden adlandır",
"rename-board": "Pano Adı Değiştirme", "rename-board": "Panonun Adını Değiştir",
"restore": "Geri yükleme", "restore": "Geri Getir",
"save": "Kaydet", "save": "Kaydet",
"search": "Arama", "search": "Arama",
"select-color": "Renk Seç", "select-color": "Renk Seç",
"shortcut-assign-self": "Kendini karta ekle", "shortcut-assign-self": "Kendini karta ata",
"shortcut-autocomplete-emoji": "Otomatik tamamlayan emoji yüz ifadeleri", "shortcut-autocomplete-emoji": "Emojileri otomatik tamamla",
"shortcut-autocomplete-members": "Otomatik tamamlayan üye isimleri", "shortcut-autocomplete-members": "Üye isimlerini otomatik tamamla",
"shortcut-clear-filters": "Tüm filtreleri temizle", "shortcut-clear-filters": "Tüm filtreleri temizle",
"shortcut-close-dialog": "Diyaloğu kapat", "shortcut-close-dialog": "Diyaloğu kapat",
"shortcut-filter-my-cards": "Kartlarımı filtrele", "shortcut-filter-my-cards": "Kartlarımı filtrele",
"shortcut-show-shortcuts": "Kısayollar listesini getir", "shortcut-show-shortcuts": "Kısayollar listesini getir",
"shortcut-toggle-filterbar": "Filtre kenar çubuğunu aç/kapa", "shortcut-toggle-filterbar": "Filtre kenar çubuğunu aç/kapa",
"shortcut-toggle-sidebar": "Pano kenar çubuğunu aç/kapa", "shortcut-toggle-sidebar": "Pano kenar çubuğunu aç/kapa",
"show-cards-minimum-count": "Eğer listede şu kadar sayıdan fazla şey varsa kart sayısını göster: ", "show-cards-minimum-count": "Eğer listede şu sayıdan fazla öğe varsa kart sayısını göster: ",
"sidebar-open": "Kenar çubuğunu aç", "sidebar-open": "Kenar Çubuğunu Aç",
"sidebar-close": "Kenar çubuğunu kapat", "sidebar-close": "Kenar Çubuğunu Kapat",
"signupPopup-title": "Bir Hesap Oluştur", "signupPopup-title": "Bir Hesap Oluştur",
"star-board-title": "Bu panoyu yıldızlamak için tıkla. Pano listesinin en üstünde gösterilir.", "star-board-title": "Bu panoyu yıldızlamak için tıkla. Yıldızlı panolar pano listesinin en üstünde gösterilir.",
"starred-boards": "Yıldızlı Panolar", "starred-boards": "Yıldızlı Panolar",
"starred-boards-description": "Yıldızlanmış panolar, pano listenin en üstünde gösterilir.", "starred-boards-description": "Yıldızlanmış panolar, pano listesinin en üstünde gösterilir.",
"subscribe": "Abone ol", "subscribe": "Abone ol",
"team": "Takım", "team": "Takım",
"this-board": "bu panoyu", "this-board": "bu panoyu",
"this-card": "bu kart", "this-card": "bu kart",
"time": "Zaman", "time": "Zaman",
"title": "Başlık", "title": "Başlık",
"tracking": "Takp", "tracking": "Takip",
"tracking-info": "Oluşturduğunuz veya üyesi olduğunuz tüm kartlardaki değişiklikler size bildirim olarak gelecek.", "tracking-info": "Oluşturduğunuz veya üyesi olduğunuz tüm kartlardaki değişiklikler size bildirim olarak gelecek.",
"unassign-member": "Üyeyi çıkart", "unassign-member": "Üyeye atamayı kaldır",
"unsaved-description": "Kaydedilmemiş bir açıklama metnin bulunmakta", "unsaved-description": "Kaydedilmemiş bir açıklama metnin bulunmakta",
"unwatch": "Takibi bırak", "unwatch": "Takibi bırak",
"upload": "Yükle", "upload": "Yükle",
@ -336,8 +336,8 @@
"warn-list-archived": "dikkat: bu kart arşivlenmiş bir liste içinde", "warn-list-archived": "dikkat: bu kart arşivlenmiş bir liste içinde",
"watch": "Takip Et", "watch": "Takip Et",
"watching": "Takip Ediliyor", "watching": "Takip Ediliyor",
"watching-info": "Bu pano hakkındaki tüm değişiklikler hakkında tarafınıza bildirim gelecektir", "watching-info": "Bu pano hakkındaki tüm değişiklikler hakkında bildirim alacaksınız",
"welcome-board": "Panoya Hoş Geldiniz", "welcome-board": "Hoş Geldiniz Panosu",
"welcome-list1": "Temel", "welcome-list1": "Temel",
"welcome-list2": "Gelişmiş", "welcome-list2": "Gelişmiş",
"what-to-do": "Ne yapmak istiyorsunuz?", "what-to-do": "Ne yapmak istiyorsunuz?",
@ -352,7 +352,7 @@
"email-addresses": "E-posta adresleri", "email-addresses": "E-posta adresleri",
"smtp-host-description": "E-posta gönderimi yapan SMTP sunucu adresi", "smtp-host-description": "E-posta gönderimi yapan SMTP sunucu adresi",
"smtp-port-description": "E-posta gönderimi yapan SMTP sunucu portu", "smtp-port-description": "E-posta gönderimi yapan SMTP sunucu portu",
"smtp-tls-description": "SMTP mail sunucusu için TLS kriptolama desteği açılsın", "smtp-tls-description": "SMTP mail sunucusu için TLS kriptolama desteği açılsın",
"smtp-host": "SMTP sunucu adresi", "smtp-host": "SMTP sunucu adresi",
"smtp-port": "SMTP portu", "smtp-port": "SMTP portu",
"smtp-username": "Kullanıcı adı", "smtp-username": "Kullanıcı adı",
@ -364,6 +364,6 @@
"email-invite-register-text": "Sevgili __user__,\n\n__inviter__ sizi beraber çalışabilmek için Wekan'a davet etti.\n\nLütfen aşağıdaki linke tıklayın:\n__url__\n\nDavetiye kodunuz: __icode__\n\nTeşekkürler.", "email-invite-register-text": "Sevgili __user__,\n\n__inviter__ sizi beraber çalışabilmek için Wekan'a davet etti.\n\nLütfen aşağıdaki linke tıklayın:\n__url__\n\nDavetiye kodunuz: __icode__\n\nTeşekkürler.",
"error-invitation-code-not-exist": "Davetiye kodu bulunamadı", "error-invitation-code-not-exist": "Davetiye kodu bulunamadı",
"error-notAuthorized": "Bu sayfayı görmek için yetkiniz yok.", "error-notAuthorized": "Bu sayfayı görmek için yetkiniz yok.",
"outgoing-webhooks": "Outgoing Webhooks", "outgoing-webhooks": "Dışarı giden bağlantılar",
"outgoingWebhooksPopup-title": "Outgoing Webhooks" "outgoingWebhooksPopup-title": "Dışarı giden bağlantılar"
} }

@ -21,19 +21,13 @@ if (Meteor.isServer) {
// We authorize the attachment download either: // We authorize the attachment download either:
// - if the board is public, everyone (even unconnected) can download it // - if the board is public, everyone (even unconnected) can download it
// - if the board is private, only board members can download it // - if the board is private, only board members can download it
//
// XXX We have a bug with the `userId` verification:
//
// https://github.com/CollectionFS/Meteor-CollectionFS/issues/449
//
download(userId, doc) { download(userId, doc) {
const query = { const board = Boards.findOne(doc.boardId);
$or: [ if (board.isPublic()) {
{ 'members.userId': userId }, return true;
{ permission: 'public' }, } else {
], return board.hasMember(userId);
}; }
return Boolean(Boards.findOne(doc.boardId, query));
}, },
fetch: ['boardId'], fetch: ['boardId'],

Loading…
Cancel
Save