We're using FlowRouter client side router inside config/router.js. For accounts there is AccountsTemplates configured in config/accounts.js.
Files in this directory are served by meteor as-is to the client. It hosts some (fav)icons and fonts.
wekan-manifest.json: goes into link rel="manifest"
in the header of the generated page and is a Web App Manifest.
activities
template for the list of activities placed inside a sidebar-content
; uses boardActivities
or cardActivities
depending on mode
; XXX: does this mean that sidebar should be visible in board list mode? when does the board
activity gets shown?commentForm
template used in card-details-canvas
for adding comments;archivedBoards
template for the modal dialog showing the list of archived boards that might be restored;board
and, based on screen size and current state, it uses either cardDetails
or boardBody
templates; boardBody
is the one including the sidebar
, each list
, cardDetails
for larger screens when a card is selected and the addListForm
for adding a new list (also defined in this file);boardHeaderBar
, boardMenuPopup
, boardVisibilityList
, boardChangeVisibilityPopup
, boardChangeWatchPopup
, boardChangeColorPopup
, createBoard
, chooseBoardSource
, boardChangeTitlePopup
, archiveBoardPopup
, outgoingWebhooksPopup
;boardList
and boardListHeaderBar
for the list of boards in the initial screen;cardAttachmentsPopup
, previewClipboardImagePopup
, previewAttachedImagePopup
, attachmentDeletePopup
, attachmentsGalery
;editCardDate
and dateBadge
templates;boardsAndLists
is the usual layout for a board display with boardLists
being used in sandstorm where each board is independent;cardDetails
, editCardTitleForm
, cardDetailsActionsPopup
, moveCardPopup
, copyCardPopup
,cardMembersPopup
,cardMorePopup
, cardDeletePopup
;editCardSpentTime
and timeBadge
templates;checklists
, checklistDetail
, checklistDeleteDialog
, addChecklistItemForm
, editChecklistItemForm
, checklistItems
, itemDetail
;formLabel
, createLabelPopup
, editLabelPopup
, deleteLabelPopup
, cardLabelsPopup
;minicard
templateinlinedForm
template;importHeaderBar
, import
, importTextarea
, importMapMembers
, importMapMembersAddPopup
are all templates used for importing Trello (via trelloMembersMapper.js) and Wekan (via wekanMembersMapper.js) boards;list
is the simple, main template for lists;listBody
, addCardForm
, autocompleteLabelLine
templates;listHeader
, editListTitleForm
, listActionPopup
, boardLists
, listMorePopup
, listDeletePopup
, setWipLimitPopup
, wipLimitErrorPopup
templates;editor
and viewer
templates;header
and offlineWarning
templates; if the user is connected we display a small "quick-access" top bar that list all starred boards with a link to go there (this is inspired by the Reddit "subreddit" bar); the first link goes to the boards page;shortcutsHeaderBar
, shortcutsModalTitle
, keyboardShortcuts
- all for the shortcuts that are presented when you press ?
re implemented inhere;userFormsLayout
, defaultLayout
, notFound
, message
;popup
in this case);information
, statistics
templates;invitationCode
template;people
, peopleGeneral
, peopleRow
, editUserPopup
;setting
, general
, email
, accountSettings
, announcementSettings
settingHeaderBar
template;sidebar
, homeSidebar
, membersWidget
, labelsWidget
, memberPopup
, removeMemberPopup
, leaveBoardPopup
, addMemberPopup
, changePermissionsPopup
archivesSidebar
filterSidebar
, multiselectionSidebar
, disambiguateMultiLabelPopup
, disambiguateMultiMemberPopup
, moveSelectionPopup
;userAvatar
, userAvatarInitials
, userPopup
, memberName
, changeAvatarPopup
, cardMemberPopup
headerUserBar
, memberMenuPopup
, editProfilePopup
, editNotificationPopup
, changePasswordPopup
, changeLanguagePopup
, changeSettingsPopup
;currentBoard()
, currentCard()
, getUser()
and concat()
;watch
and unwatch
from Firefox prior to version 58;basicTabs
template.CSSEvents
object has methods that select the name of the event based on the specific transitions and animations;?
re implemented inhere;Mixins
at this point; XXX: what does new class
do? exlint: missing () invoking a constructorPopup
class for things likes electing a date; XXX: not a Blaze helper?Filter
Blaze helper to support filtering cards by labels and by members;Modal
Blaze helper to support showing modal windows like the one for archived boards;Modal
Blaze helper to support multiple selection mode;getUnsavedValue
and hasUnsavedValue
Blaze helpers to preserve content entered in fields but not saved;.js files in this directory are not available to the client.
Authentication
object to Meteor that provides methods for checking access rights.Notifications
object that supports Activities and holds a list of functions to call when its notify()
method is called along with convenience methods to subscribe, unsubscribe and a way to filter recipients according to user settings for notification;
watch()
Meteor server-only method that may watch boards, lists or cards using models/watchable.js;outgoingWebhooks()
Meteor server-only method that can call external API XXX: I guessThe files in models directory mainly define collections; most of them have aldeed SimpleSchema for automatic validation of insert and update of collections. This is also where helpers, mutations, methods, hooks and bootstrap code is to be found. Server side code also implements json REST API.
Collections (mostly Mongo.Collection
except as noted) are defined in:
Meteor.users
collection.Other files:
Boards
, Lists
and Cards
.importBoard()
method so that Trello (in trelloCreator.js) and Wekan (in wekanCreator.js) boards can be imported. XXX: Solid candidates for a directory of their own.cfs_access-point.txt
from this folder is copied to bundle/programs/server/packages/cfs_access-point.js
in Docker build and in snapcraft build; this is a monkey patch fix for downloading files that have unicode in filename.This documentation was contributed by TNick and xet7 while Wekan was at commit e2f768c. Please add new files, fixes, updates, etc directly to this page.