Compare commits

...
28 Commits
Author SHA1 Message Date
Lauri Ojansivu 843ff8eaaa v5.26 2021-04-28 12:38:15 +03:00
Lauri Ojansivu c5143e2c54 Updated translations. 2021-04-28 12:34:30 +03:00
Lauri Ojansivu 0596f5e864 Updated ChangeLog. 2021-04-28 12:28:09 +03:00
Lauri Ojansivu 8ca1b25daf Bring back Almost-Due for Start Date.
Thanks to darren-teo !

Fixes #3766
2021-04-28 12:26:31 +03:00
Lauri Ojansivu 1f76159bfe Updated ChangeLog. 2021-04-28 12:19:43 +03:00
Lauri Ojansivu 39ece35f52 Merge pull request #3765 from HappyMushroom-TechTeam/feature/miniCard_subtaskCount
Feature/mini card subtask count
2021-04-28 12:18:03 +03:00
ryanMushy 63c1bb9e17 count subtasks just like checklists 2021-04-27 18:28:23 -07:00
Lauri Ojansivu 354622c5ad v5.25 2021-04-27 23:11:23 +03:00
Lauri Ojansivu df7fd8c900 v5.25 2021-04-27 23:02:49 +03:00
Lauri Ojansivu 7957690fca Updated translations. 2021-04-27 22:57:25 +03:00
Lauri Ojansivu 63d19447a0 Updated ChangeLog. 2021-04-27 22:50:53 +03:00
Lauri Ojansivu 018a84ec59 Merge pull request #3764 from HappyMushroom-TechTeam/feature/excel_swimlanExport
cherry pick the excel export feature to add swimlanes to the output
2021-04-27 22:47:41 +03:00
ryanMushy e5c0e623a0 cherry pick the excel export feature to add swimlanes to the output 2021-04-27 12:38:38 -07:00
ryan neal 9a2d3e15e8 Merge pull request #2 from wekan/master
newest version
2021-04-27 12:36:57 -07:00
Lauri Ojansivu c07e262e68 Updated translations. 2021-04-27 20:29:01 +03:00
Lauri Ojansivu cacb2b91ee Updated ChangeLog. 2021-04-27 20:18:37 +03:00
Lauri Ojansivu 6f269d598f Merge pull request #3762 from bentiss/nested-openapi
openapi: better handle nested schemas
2021-04-27 20:16:59 +03:00
Lauri Ojansivu 57ea254bff Updated ChangeLog. 2021-04-27 19:51:09 +03:00
Lauri Ojansivu 7e183c838f Merge pull request #3761 from HappyMushroom-TechTeam/bugfix/summernoteOnPaste
Bugfix/summernote on paste
2021-04-27 19:48:46 +03:00
Lauri Ojansivu 3ffdfd9736 Updated ChangeLog. 2021-04-27 19:47:40 +03:00
Lauri Ojansivu 621c701bef Fixed language name of Deutsch (Schweiz).
Thanks to urmel1960 !

Fixes #3763
2021-04-27 19:45:18 +03:00
Lauri Ojansivu 3c24c9966c Updated ChangeLog. 2021-04-27 19:38:20 +03:00
Lauri Ojansivu 995de525d9 Added missing postgres password to ToroDB.
Thanks to xet7 !
2021-04-27 19:36:34 +03:00
Benjamin Tissoires ae30b1220a openapi: better handle nested schemas
there is a 2 levels schemas in profile.notifications.

The code previously assumed we could only have one level, and so was not
producing the correct UsersProfileNotifications.

Fix that by being more generic in the way we retrieve the nested
subschemas.
2021-04-27 10:44:27 +02:00
ryanMushy e380ad26c2 Images are uploaded twice
- make sure only pastes which contain text are processed
- remove execCommand() as it results in errors
- enable drag & drop
- fix resize buttons to be the proper summernote commands
- remove un-needed comma
2021-04-26 23:31:07 -07:00
ryan neal 9bb31d2380 Merge pull request #1 from wekan/master
newest wekan
2021-04-26 12:10:21 -07:00
Lauri Ojansivu 8ec1e4f3fa Updated ChangeLog. 2021-04-24 20:18:04 +03:00
Lauri Ojansivu 9f0f6841b0 Updated release scripts. 2021-04-24 20:16:27 +03:00
20 changed files with 1288 additions and 1161 deletions

No files matched your search

+39
View File
@@ -1,3 +1,42 @@
# v5.26 2021-04-28 Wekan release
This release adds the following new features:
- [Feature/mini card subtask count](https://github.com/wekan/wekan/pull/3765).
Thanks to ryanMushy.
and fixes the following bugs:
- [Bring back Almost-Due for Start Date](https://github.com/wekan/wekan/commit/8ca1b25daf3be60c2dc64f03830dea8437bbd8ad).
Thanks to darren-teo.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.25 2021-04-27 Wekan release
This release adds the following new features:
- [Swimlane in Export to Excel](https://github.com/wekan/wekan/pull/3764).
Thanks to Keelan and ryanMushy.
and adds the following updates:
- [Updated release scripts](https://github.com/wekan/wekan/commit/9f0f6841b01b88f5559724b047d5e245617a02c8).
Thanks to xet7.
and fixes the following bugs:
- [Added missing PostgreSQL password to ToroDB](https://github.com/wekan/wekan/commit/995de525d96946702536f0cdcb98ef281b9df94e).
Thanks to xet7.
- [Fixed language name of Deutsch (Schweiz)](https://github.com/wekan/wekan/commit/621c701bef1d09d4ddfc93be411cfad98869f0ae).
Thanks to urmel1960.
- [Bugfix/Summernote on paste](https://github.com/wekan/wekan/pull/3761).
Thanks to ryanMushy.
- [OpenAPI: Better handle nested schemas](https://github.com/wekan/wekan/pull/3762).
Thanks to bentiss.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.24 2021-04-24 Wekan release
This release adds the following new features:
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v5.24.0"
appVersion: "v5.26.0"
files:
userUploads:
- README.md
+1
View File
@@ -187,6 +187,7 @@ class CardStartDate extends CardDate {
// if dueAt or endAt exist & are > startAt, startAt doesn't need to be flagged
if ((endAt && theDate.isAfter(endAt)) || (dueAt && theDate.isAfter(dueAt)))
classes += 'long-overdue';
else if (theDate.isBefore(now, 'minute')) classes += 'almost-due';
else classes += 'current';
return classes;
}
+5
View File
@@ -129,3 +129,8 @@ template(name="minicard")
.badge(class="{{#if checklistFinished}}is-finished{{/if}}")
span.badge-icon.fa.fa-check-square-o
span.badge-text.check-list-text {{checklistFinishedCount}}/{{checklistItemCount}}
if allSubtasks.count
.badge
span.badge-icon.fa.fa-sitemap
span.badge-text.check-list-text {{subtasksFinishedCount}}/{{allSubtasksCount}}
//{{subtasksFinishedCount}}/{{subtasksCount}} does not work because when a subtaks is archived, the count goes down
+15 -8
View File
@@ -145,6 +145,7 @@ Template.editor.onRendered(() => {
const MAX_IMAGE_PIXEL = Utils.MAX_IMAGE_PIXEL;
const COMPRESS_RATIO = Utils.IMAGE_COMPRESS_RATIO;
const insertImage = src => {
// process all image upload types to the description/comment window
const img = document.createElement('img');
img.src = src;
img.setAttribute('width', '100%');
@@ -210,7 +211,16 @@ Template.editor.onRendered(() => {
}
}
},
onPaste() {
onPaste(e) {
var clipboardData = e.clipboardData;
var pastedData = clipboardData.getData('Text');
//if pasted data is an image, exit
if( !pastedData.length ){
e.preventDefault();
return;
}
// clear up unwanted tag info when user pasted in text
const thisNote = this;
const updatePastedText = function(object) {
@@ -219,7 +229,7 @@ Template.editor.onRendered(() => {
// (and multiplies by pasting more) by changing paste "p" to "br".
// Fixes https://github.com/wekan/wekan/2890 .
// == Fix Start ==
someNote.execCommand('defaultParagraphSeparator', false, 'br');
//someNote.execCommand('defaultParagraphSeparator', false, 'br');
// == Fix End ==
const original = someNote.summernote('code');
const cleaned = cleanPastedHTML(original); //this is where to call whatever clean function you want. I have mine in a different file, called CleanPastedHTML.
@@ -231,19 +241,16 @@ Template.editor.onRendered(() => {
//the function is called before the text is really pasted.
updatePastedText(thisNote);
}, 10);
},
}
},
dialogsInBody: true,
spellCheck: true,
disableGrammar: false,
disableDragAndDrop: true,
disableDragAndDrop: false,
toolbar,
popover: {
image: [
[
'image',
['resizeFull', 'resizeHalf', 'resizeQuarter', 'resizeNone'],
],
['imagesize', ['imageSize100', 'imageSize50', 'imageSize25']],
['float', ['floatLeft', 'floatRight', 'floatNone']],
['remove', ['removeMedia']],
],
+1 -1
View File
@@ -78,7 +78,7 @@ Template.userFormsLayout.helpers({
// ar-EG = Arabic (Egypt), simply Masri (مَصرى, [ˈmɑsˤɾi], Egyptian, Masr refers to Cairo)
name = 'مَصرى';
} else if (lang.name === 'de-CH') {
name = 'Schwiizerdütsch';
name = 'Deutsch (Schweiz)';
} else if (lang.name === 'fa-IR') {
// fa-IR = Persian (Iran)
name = 'فارسی/پارسی (ایران‎)';
+1 -1
View File
@@ -175,7 +175,7 @@ Template.changeLanguagePopup.helpers({
// fa-IR = Persian (Iran)
name = 'فارسی/پارسی (ایران‎)';
} else if (lang.name === 'de-CH') {
name = 'Schwiizerdütsch';
name = 'Deutsch (Schweiz)';
} else if (lang.name === 'fr-BE') {
name = 'Français (Belgique)';
} else if (lang.name === 'fr-CA') {
+1009 -1009
View File
File diff suppressed because it is too large. Load diff
+21 -26
View File
@@ -641,37 +641,32 @@ Cards.helpers({
);
},
allSubtasks() {
return Cards.find(
{
parentId: this._id,
archived: false,
},
{
sort: {
sort: 1,
},
},
);
},
subtasksCount() {
return Cards.find({
parentId: this._id,
archived: false,
}).count();
},
subtasksFinishedCount() {
subtasksFinished() {
return Cards.find({
parentId: this._id,
archived: true,
}).count();
});
},
subtasksFinished() {
const finishCount = this.subtasksFinishedCount();
return finishCount > 0 && this.subtasksCount() === finishCount;
allSubtasks() {
return Cards.find({
parentId: this._id
});
},
subtasksCount() {
const subtasks = this.subtasks();
return subtasks.count();
},
subtasksFinishedCount() {
const subtasksArchived = this.subtasksFinished();
return subtasksArchived.count();
},
allSubtasksCount() {
const allSubtasks = this.allSubtasks();
return allSubtasks.count();
},
allowsSubtasks() {
+27 -4
View File
@@ -239,7 +239,7 @@ export class ExporterExcel {
},
{
key: 'c',
width: 20,
width: 60,
},
{
key: 'd',
@@ -342,6 +342,10 @@ export class ExporterExcel {
key: 'p',
width: 20,
},
{
key: 'q',
width: 20,
},
];
//add title line
@@ -378,10 +382,23 @@ export class ExporterExcel {
for (const klist in result.lists) {
jlist[result.lists[klist]._id] = result.lists[klist].title;
}
//get kanban swimlanes info
const jswimlane = {};
for (const kswimlane in result.swimlanes) {
jswimlane[result.swimlanes[kswimlane]._id] = result.swimlanes[kswimlane].title;
}
//get kanban label info
const jlabel = {};
for (const klabel in result.labels) {
jlabel[result.labels[klabel]._id] = result.labels[klabel].name;
var isFirst = 1;
for (const klabel in result.labels){
console.log(klabel);
if (isFirst == 0){
jlabel[result.labels[klabel]._id] = `,${result.labels[klabel].name}`;
}
else{
isFirst = 0;
jlabel[result.labels[klabel]._id] = result.labels[klabel].name;
}
}
//add data +8 hours
function addTZhours(jdate) {
@@ -413,7 +430,7 @@ export class ExporterExcel {
size: 10,
bold: true,
};
ws.mergeCells('F3:P3');
ws.mergeCells('F3:Q3');
ws.getCell('B3').style = {
font: {
name: TAPi18n.__('excel-font'),
@@ -487,6 +504,7 @@ export class ExporterExcel {
];
//add card title
//ws.addRow().values = ['编号', '标题', '创建人', '创建时间', '更新时间', '列表', '成员', '描述', '标签'];
//this is where order in which the excel file generates
ws.addRow().values = [
TAPi18n.__('number'),
TAPi18n.__('title'),
@@ -499,6 +517,7 @@ export class ExporterExcel {
TAPi18n.__('card-due'),
TAPi18n.__('card-end'),
TAPi18n.__('list'),
TAPi18n.__('swimlane'),
TAPi18n.__('assignee'),
TAPi18n.__('members'),
TAPi18n.__('labels'),
@@ -522,6 +541,7 @@ export class ExporterExcel {
allBorder('N5');
allBorder('O5');
allBorder('P5');
allBorder('Q5');
cellCenter('A5');
cellCenter('B5');
cellCenter('C5');
@@ -538,6 +558,7 @@ export class ExporterExcel {
cellCenter('N5');
cellCenter('O5');
cellCenter('P5');
cellCenter('Q5');
ws.getRow(5).font = {
name: TAPi18n.__('excel-font'),
size: 12,
@@ -580,6 +601,7 @@ export class ExporterExcel {
addTZhours(jcard.dueAt),
addTZhours(jcard.endAt),
jlist[jcard.listId],
jswimlane[jcard.swimlaneId],
jcassig,
jcmem,
jclabel,
@@ -604,6 +626,7 @@ export class ExporterExcel {
allBorder(`N${y}`);
allBorder(`O${y}`);
allBorder(`P${y}`);
allBorder(`Q${y}`);
cellCenter(`A${y}`);
ws.getCell(`B${y}`).alignment = {
wrapText: true,
+10 -4
View File
@@ -607,6 +607,9 @@ class SchemaProperty(object):
# deal with subschemas
if '.' in name:
subschema = name.split('.')[0]
subschema = subschema.capitalize()
if name.endswith('$'):
# reference in reference
subschema = ''.join([n.capitalize() for n in self.name.split('.')[:-1]])
@@ -621,9 +624,12 @@ class SchemaProperty(object):
print(''' {}:
type: object'''.format(subschema))
return current_schema
elif '$' in name:
# In the form of 'profile.notifications.$.activity'
subschema = name[:name.index('$') - 1] # 'profile.notifications'
subschema = ''.join([s.capitalize() for s in subschema.split('.')])
subschema = name.split('.')[0]
schema_name = self.schema.name + subschema.capitalize()
schema_name = self.schema.name + subschema
name = name.split('.')[-1]
if current_schema != schema_name:
@@ -755,7 +761,7 @@ class Schemas(object):
# then print the references
current = None
required_properties = []
properties = [f for f in self.fields if '.' in f.name and not f.name.endswith('$')]
properties = [f for f in self.fields if '.' in f.name and not '$' in f.name]
for prop in properties:
current = prop.print_openapi(6, current, required_properties)
@@ -766,7 +772,7 @@ class Schemas(object):
required_properties = []
# then print the references in the references
for prop in [f for f in self.fields if '.' in f.name and f.name.endswith('$')]:
for prop in [f for f in self.fields if '.' in f.name and '$' in f.name]:
current = prop.print_openapi(6, current, required_properties)
if required_properties:
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v5.24.0",
"version": "v5.26.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v5.24.0",
"version": "v5.26.0",
"description": "Open-Source kanban",
"private": true,
"scripts": {
+119 -75
View File
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Wekan REST API v5.24</title>
<title>Wekan REST API v5.26</title>
<style>
</style>
@@ -1486,6 +1486,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
<!-- backwards compatibility -->
<!-- backwards compatibility -->
<!-- backwards compatibility -->
<!-- backwards compatibility -->
<!-- backwards compatibility -->
</head>
@@ -1549,7 +1550,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
<ul class="toc-list-h1">
<li>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v5.24">Wekan REST API v5.24</a>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v5.26">Wekan REST API v5.26</a>
</li>
@@ -2062,11 +2063,6 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
</li>
<li>
<a href="#tocs_usersemails" class="toc-h2 toc-link" data-title="">UsersEmails</a>
</li>
<li>
<a href="#tocs_usersprofile" class="toc-h2 toc-link" data-title="">UsersProfile</a>
@@ -2077,6 +2073,16 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
</li>
<li>
<a href="#tocs_usersemails" class="toc-h2 toc-link" data-title="">UsersEmails</a>
</li>
<li>
<a href="#tocs_usersprofilenotifications" class="toc-h2 toc-link" data-title="">UsersProfileNotifications</a>
</li>
</ul>
</li>
@@ -2092,7 +2098,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
<div class="page-wrapper">
<div class="dark-box"></div>
<div class="content">
<h1 id="wekan-rest-api">Wekan REST API v5.24</h1>
<h1 id="wekan-rest-api">Wekan REST API v5.26</h1>
<blockquote>
<p>Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.</p>
</blockquote>
@@ -15915,9 +15921,12 @@ System.out.println(response.toString());
<span class="hljs-string">&quot;string&quot;</span>
],
<span class="hljs-attr">&quot;language&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;notifications&quot;</span>: [],
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;notifications&quot;</span>: [
{
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>
}
],
<span class="hljs-attr">&quot;showCardsCountAt&quot;</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">&quot;startDayOfWeek&quot;</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">&quot;starredBoards&quot;</span>: [
@@ -16653,9 +16662,12 @@ System.out.println(response.toString());
<span class="hljs-string">&quot;string&quot;</span>
],
<span class="hljs-attr">&quot;language&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;notifications&quot;</span>: [],
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;notifications&quot;</span>: [
{
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>
}
],
<span class="hljs-attr">&quot;showCardsCountAt&quot;</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">&quot;startDayOfWeek&quot;</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">&quot;starredBoards&quot;</span>: [
@@ -20434,9 +20446,12 @@ UserSecurity
<span class="hljs-string">&quot;string&quot;</span>
],
<span class="hljs-attr">&quot;language&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;notifications&quot;</span>: [],
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;notifications&quot;</span>: [
{
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>
}
],
<span class="hljs-attr">&quot;showCardsCountAt&quot;</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">&quot;startDayOfWeek&quot;</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">&quot;starredBoards&quot;</span>: [
@@ -20572,45 +20587,6 @@ UserSecurity
</tr>
</tbody>
</table>
<h2 id="tocs_usersemails">UsersEmails</h2>
<p><a id="schemausersemails"></a>
<a id="schema_UsersEmails"></a>
<a id="tocSusersemails"></a>
<a id="tocsusersemails"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">&quot;address&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;verified&quot;</span>: <span class="hljs-literal">true</span>
}
</code></pre>
<h3 id="properties-18">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>address</td>
<td>string</td>
<td>true</td>
<td>none</td>
<td>The email address</td>
</tr>
<tr>
<td>verified</td>
<td>boolean</td>
<td>true</td>
<td>none</td>
<td>Has the email been verified</td>
</tr>
</tbody>
</table>
<h2 id="tocs_usersprofile">UsersProfile</h2>
<p><a id="schemausersprofile"></a>
<a id="schema_UsersProfile"></a>
@@ -20631,9 +20607,12 @@ UserSecurity
<span class="hljs-string">&quot;string&quot;</span>
],
<span class="hljs-attr">&quot;language&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;notifications&quot;</span>: [],
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;notifications&quot;</span>: [
{
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>
}
],
<span class="hljs-attr">&quot;showCardsCountAt&quot;</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">&quot;startDayOfWeek&quot;</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">&quot;starredBoards&quot;</span>: [
@@ -20649,7 +20628,7 @@ UserSecurity
}
</code></pre>
<h3 id="properties-19">Properties</h3>
<h3 id="properties-18">Properties</h3>
<table>
<thead>
<tr>
@@ -20739,20 +20718,6 @@ UserSecurity
<td>enabled notifications for the user</td>
</tr>
<tr>
<td>activity</td>
<td>string</td>
<td>true</td>
<td>none</td>
<td>The id of the activity this notification references</td>
</tr>
<tr>
<td>read</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>the date on which this notification was read</td>
</tr>
<tr>
<td>showCardsCountAt</td>
<td>number</td>
<td>false</td>
@@ -20882,7 +20847,7 @@ UserSecurity
}
</code></pre>
<h3 id="properties-20">Properties</h3>
<h3 id="properties-19">Properties</h3>
<table>
<thead>
<tr>
@@ -20910,6 +20875,84 @@ UserSecurity
</tr>
</tbody>
</table>
<h2 id="tocs_usersemails">UsersEmails</h2>
<p><a id="schemausersemails"></a>
<a id="schema_UsersEmails"></a>
<a id="tocSusersemails"></a>
<a id="tocsusersemails"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">&quot;address&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;verified&quot;</span>: <span class="hljs-literal">true</span>
}
</code></pre>
<h3 id="properties-20">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>address</td>
<td>string</td>
<td>true</td>
<td>none</td>
<td>The email address</td>
</tr>
<tr>
<td>verified</td>
<td>boolean</td>
<td>true</td>
<td>none</td>
<td>Has the email been verified</td>
</tr>
</tbody>
</table>
<h2 id="tocs_usersprofilenotifications">UsersProfileNotifications</h2>
<p><a id="schemausersprofilenotifications"></a>
<a id="schema_UsersProfileNotifications"></a>
<a id="tocSusersprofilenotifications"></a>
<a id="tocsusersprofilenotifications"></a></p>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">&quot;activity&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>,
<span class="hljs-attr">&quot;read&quot;</span>: <span class="hljs-string">&quot;string&quot;</span>
}
</code></pre>
<h3 id="properties-21">Properties</h3>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Required</th>
<th>Restrictions</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>activity</td>
<td>string</td>
<td>true</td>
<td>none</td>
<td>The id of the activity this notification references</td>
</tr>
<tr>
<td>read</td>
<td>string</td>
<td>false</td>
<td>none</td>
<td>the date on which this notification was read</td>
</tr>
</tbody>
</table>
<!-- Renderer: Shins v2.6.0 -->
<!-- Generator: Widdershins v4.0.1 -->
<!-- backwards compatibility -->
@@ -20931,6 +20974,7 @@ UserSecurity
<!-- backwards compatibility -->
<!-- backwards compatibility -->
<!-- backwards compatibility -->
<!-- backwards compatibility -->
<!-- backwards compatibility -->
</div>
<div class="dark-box">
+28 -24
View File
@@ -1,7 +1,7 @@
swagger: '2.0'
info:
title: Wekan REST API
version: v5.24
version: v5.26
description: |
The REST API allows you to control and extend Wekan with ease.
@@ -3681,20 +3681,6 @@ definitions:
- createdAt
- modifiedAt
- authenticationMethod
UsersEmails:
type: object
properties:
address:
description: |
The email address
type: string
verified:
description: |
Has the email been verified
type: boolean
required:
- address
- verified
UsersProfile:
type: object
properties:
@@ -3750,14 +3736,6 @@ definitions:
type: array
items:
$ref: "#/definitions/UsersProfileNotifications"
activity:
description: |
The id of the activity this notification references
type: string
read:
description: |
the date on which this notification was read
type: string
showCardsCountAt:
description: |
showCardCountAt field of the user
@@ -3813,7 +3791,6 @@ definitions:
Reference to the board templates swimlane Id
type: string
required:
- activity
- templatesBoardId
- cardTemplatesSwimlaneId
- listTemplatesSwimlaneId
@@ -3829,3 +3806,30 @@ definitions:
description: |
last hit that was returned
type: number
UsersEmails:
type: object
properties:
address:
description: |
The email address
type: string
verified:
description: |
Has the email been verified
type: boolean
required:
- address
- verified
UsersProfileNotifications:
type: object
properties:
activity:
description: |
The id of the activity this notification references
type: string
read:
description: |
the date on which this notification was read
type: string
required:
- activity
+3
View File
@@ -30,5 +30,8 @@ meteor-spk pack wekan-$1.spk
# Publish Sandstorm Wekan to exprimental App Market
spk publish wekan-$1.spk
# Upload spk to https://releases.wekan.team/sandstorm/
scp wekan-$1.spk x2:/var/snap/wekan/common/releases.wekan.team/sandstorm/
# Delete old temporary build directory
rm -rf ~/repos/wekan/.meteor-spk
+1 -1
View File
@@ -63,7 +63,7 @@ tx pull -f -l ka
echo "German:"
tx pull -f -l de
echo "German (Switzerland):"
echo "German (Switzerland) => Deutsch (Schweiz):"
tx pull -f -l de_CH
echo "Greek:"
+2 -2
View File
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
appTitle = (defaultText = "Wekan"),
# The name of the app as it is displayed to the user.
appVersion = 524,
appVersion = 526,
# Increment this for every release.
appMarketingVersion = (defaultText = "5.24.0~2021-04-24"),
appMarketingVersion = (defaultText = "5.26.0~2021-04-28"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
+1 -1
View File
@@ -1,5 +1,5 @@
name: wekan
version: '5.24'
version: '5.26'
summary: The open-source kanban
description: |
Wekan is an open-source and collaborative kanban board application.
+2 -2
View File
@@ -99,7 +99,7 @@ services:
- postgres
- mongodb
environment:
- POSTGRES_PASSWORD
- POSTGRES_PASSWORD=wekan
- TORODB_SETUP=true
- TORODB_SYNC_SOURCE=mongodb:27017
- TORODB_BACKEND_HOST=postgres
@@ -113,7 +113,7 @@ services:
networks:
- wekan-tier
environment:
- POSTGRES_PASSWORD
- POSTGRES_PASSWORD=wekan
ports:
- "5432:5432"
mongodb: