Comments (1)
Database structure. Also other models files have REST API for text-based data. There is attachment storage strategy pattern (like in Java), how to use files at MongoDB GridFS, filesystem or S3/Minio, and some moving attachments code, but it currently only uses files from MongoDB.
https://github.com/wekan/wekan/blob/main/models/attachments.js
https://github.com/wekan/wekan/blob/main/models/lib/attachmentStoreStrategy.js
https://github.com/wekan/wekan/blob/main/client/components/cards/attachments.js
At cards, attachments are uploaded:
https://github.com/wekan/wekan/blob/main/client/components/cards/attachments.jade
https://github.com/wekan/wekan/blob/main/client/components/cards/attachments.css
At Admin Panel is list of attachments:
https://github.com/wekan/wekan/blob/main/client/components/settings/attachments.js
https://github.com/wekan/wekan/blob/main/client/components/settings/attachments.jade
https://github.com/wekan/wekan/blob/main/client/components/settings/attachments.css
List of files at current board is published from serverside MongoDB database to browserside Javascript-based minimongo database, with realtime updates, based on newest changes that Meteor Javascript web framework reads from MongoDB change stream:
https://github.com/wekan/wekan/blob/main/server/publications/attachments.js
Currently exporting board to JSON is missing attachments, that previously (before changing from CollectionFS to Meteor-Files way to store files with GridFS to MongoDB database) were included as base64 encoded to JSON file, but it needs checking are attachments included:
https://github.com/wekan/wekan/blob/main/client/components/sidebar/sidebar.js#L263
base64 code maybe here:
https://github.com/wekan/wekan/blob/main/models/exporter.js#L48
That sidebar export options are at board: click right top hamburger menu / Board Settings / Export Board. There is:
- JSON, that is WeKan board as JSON file, but it does not have attachments currently. Also, exporting big board maybe timeouts sometime.
- HTML, exporting WeKan board as .zip file where is HTML static webpage, images etc. In theory, attachments from board could be added, but I don't know how it would work with big amount of attachments.
- Excel XLSX, that uses npm package exceljs at package.json of https://github.com/wekan/wekan , adding text to spreadsheet cells at https://github.com/wekan/wekan/blob/main/models/exportExcel.js and https://github.com/wekan/wekan/blob/main/models/server/ExporterExcel.js
from wekan.
Related Issues (20)
- Azure OIDC redirect HOT 11
- [Feature request] Add an audio ding any time a task is checked off HOT 3
- Collapsing a list breaks the color bar positioning
- "Originisations" and "Teams" Tables in Admin panel is broken
- Mentions in comments are broken after updating to Wekan 7.47.0 HOT 2
- 7.46 doesn't start in Docker HOT 4
- Adding attachments to cards semi-fails.
- [Feature Request] Upload image attachments by pasting in comment area
- Email notifications
- How to have scrollbar always visible on list ? HOT 1
- Webhook issue:Outgoing webhook doesn't show label name
- Feature Request: Archived cards count shown like GitHub contributions count
- Date picker improvements - ISO8601 support, add more presets, UI rearrangement, time picker HOT 4
- swimlanes color HOT 1
- Wekan can't connect to database after update HOT 1
- Redis does not work on a wekan installed in a docker HOT 3
- Azure Email Communication Service HOT 5
- Bug - Cards opening off-screen, not centered correctly. [UPDATE] ModernDark Theme, Have submitted pull req HOT 6
- When default language English, Home button = All-boards, My Boards = my-boards HOT 1
- add comments
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wekan.