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)
- Docker-Image 7.30 from wekanteam/wekan has user assignment bug HOT 4
- Api.py Label HOT 7
- Adding more labels in one command HOT 3
- Custom Value API.py HOT 3
- Activities Filter HOT 5
- Labels and Duplicate api.py integrations HOT 1
- Add function to edit board title through api.py HOT 2
- Error 500 when adding user to a board HOT 10
- edit card using api HOT 8
- Question about checklist in card HOT 4
- User roles edit HOT 1
- Feature Request: Shortcut to filter Cards assigned to current user
- People list (administrator shown many, many times) HOT 1
- API get_all_cards doesn't return SwimlaneId HOT 6
- Generating WeKan 7.32 OpenAPI docs does not work
- Bug when archiving card HOT 21
- Notification on card due date. HOT 1
- export card does not work? HOT 1
- Error on click on notification icon
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.