Add default content and default template to forms
This commit is contained in:
parent
1a288f5896
commit
8a07b66843
|
@ -2450,6 +2450,7 @@ define([
|
|||
'title': name,
|
||||
}).appendTo($container);
|
||||
$span.data('id', obj.id);
|
||||
if (obj.content) { $span.data('content', obj.content); }
|
||||
if (idx === selected) { $span.addClass('cp-creation-template-selected'); }
|
||||
if (!obj.thumbnail) {
|
||||
$span.append(obj.icon || h('span.cptools.cptools-template'));
|
||||
|
@ -2605,6 +2606,7 @@ define([
|
|||
|
||||
var $template = $creation.find('.cp-creation-template-selected');
|
||||
var templateId = $template.data('id') || undefined;
|
||||
var templateContent = $template.data('content') || undefined;
|
||||
// Team
|
||||
var team;
|
||||
if (teamValue) {
|
||||
|
@ -2617,6 +2619,7 @@ define([
|
|||
password: passwordVal,
|
||||
expire: expireVal,
|
||||
templateId: templateId,
|
||||
templateContent: templateContent,
|
||||
team: team
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1478,28 +1478,45 @@ define([
|
|||
return 'thumbnail-' + parsed.type + '-' + channel;
|
||||
};
|
||||
sframeChan.on('Q_CREATE_TEMPLATES', function (type, cb) {
|
||||
Cryptpad.getSecureFilesList({
|
||||
types: [type],
|
||||
where: ['template']
|
||||
}, function (err, data) {
|
||||
// NOTE: Never return data directly!
|
||||
if (err) { return void cb({error: err}); }
|
||||
|
||||
var res = [];
|
||||
nThen(function (waitFor) {
|
||||
Object.keys(data).map(function (el) {
|
||||
var k = getKey(data[el].href, data[el].channel);
|
||||
Utils.LocalStore.getThumbnail(k, waitFor(function (e, thumb) {
|
||||
res.push({
|
||||
id: el,
|
||||
name: data[el].filename || data[el].title || '?',
|
||||
thumbnail: thumb,
|
||||
used: data[el].used || 0
|
||||
var templates;
|
||||
nThen(function (waitFor) {
|
||||
var next = waitFor();
|
||||
require([
|
||||
'/'+type+'/templates.js'
|
||||
], function (Templates) {
|
||||
templates = Templates;
|
||||
next();
|
||||
}, function () {
|
||||
next();
|
||||
});
|
||||
}).nThen(function () {
|
||||
Cryptpad.getSecureFilesList({
|
||||
types: [type],
|
||||
where: ['template']
|
||||
}, function (err, data) {
|
||||
// NOTE: Never return data directly!
|
||||
if (err) { return void cb({error: err}); }
|
||||
var res = [];
|
||||
nThen(function (waitFor) {
|
||||
Object.keys(data).map(function (el) {
|
||||
var k = getKey(data[el].href, data[el].channel);
|
||||
Utils.LocalStore.getThumbnail(k, waitFor(function (e, thumb) {
|
||||
res.push({
|
||||
id: el,
|
||||
name: data[el].filename || data[el].title || '?',
|
||||
thumbnail: thumb,
|
||||
used: data[el].used || 0
|
||||
});
|
||||
}));
|
||||
});
|
||||
}).nThen(function () {
|
||||
if (Array.isArray(templates)) {
|
||||
templates.forEach(function (obj) {
|
||||
res.push(obj);
|
||||
});
|
||||
}));
|
||||
}
|
||||
cb({data: res});
|
||||
});
|
||||
}).nThen(function () {
|
||||
cb({data: res});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@ -1892,6 +1909,7 @@ define([
|
|||
Utils.rtConfig = rtConfig;
|
||||
var templatePw;
|
||||
nThen(function(waitFor) {
|
||||
if (data.templateContent) { return; }
|
||||
if (data.templateId) {
|
||||
if (data.templateId === -1) {
|
||||
isTemplate = true;
|
||||
|
@ -1905,6 +1923,14 @@ define([
|
|||
}
|
||||
}).nThen(function () {
|
||||
var cryptputCfg = $.extend(true, {}, rtConfig, {password: password});
|
||||
if (data.templateContent) {
|
||||
Cryptget.put(currentPad.hash, JSON.stringify(data.templateContent), function () {
|
||||
console.error(arguments);
|
||||
startRealtime();
|
||||
cb();
|
||||
}, cryptputCfg);
|
||||
return;
|
||||
}
|
||||
if (data.template) {
|
||||
// Start OO with a template...
|
||||
// Cryptget and give href, password and content to inner
|
||||
|
|
|
@ -458,7 +458,8 @@ define([
|
|||
password: cfg.password,
|
||||
team: cfg.team,
|
||||
template: cfg.template,
|
||||
templateId: cfg.templateId
|
||||
templateId: cfg.templateId,
|
||||
templateContent: cfg.templateContent
|
||||
}, cb);
|
||||
};
|
||||
|
||||
|
|
|
@ -2579,11 +2579,14 @@ define([
|
|||
|
||||
if (APP.isEditor) {
|
||||
if (!content.form) {
|
||||
content.form = {};
|
||||
content.form = {
|
||||
"1": { type: 'md' },
|
||||
"2": { type: 'radio' }
|
||||
};
|
||||
framework.localChange();
|
||||
}
|
||||
if (!content.order) {
|
||||
content.order = [];
|
||||
content.order = ["1", "2"];
|
||||
framework.localChange();
|
||||
}
|
||||
if (!content.answers || !content.answers.channel || !content.answers.publicKey || !content.answers.validateKey) {
|
||||
|
@ -2594,6 +2597,7 @@ define([
|
|||
};
|
||||
framework.localChange();
|
||||
}
|
||||
checkIntegrity();
|
||||
}
|
||||
|
||||
sframeChan.event('EV_FORM_PIN', {channel: content.answers.channel});
|
||||
|
|
Loading…
Reference in New Issue
Block a user