Skip to content
Code-Schnipsel Gruppen Projekte
Commit 6286aea2 erstellt von Henning Leutz's avatar Henning Leutz :martial_arts_uniform:
Dateien durchsuchen

baustein custom einstellungen

Übergeordneter 3b4a85f0
No related branches found
No related tags found
Keine zugehörigen Merge Requests gefunden
......@@ -780,21 +780,31 @@ define('package/quiqqer/bricks/bin/Site/Area', [
new QUIConfirm({
title : QUILocale.get(lg, 'site.area.window.settings.title'),
icon : 'icon-gear',
texticon : false,
maxWidth : 600,
maxHeight : 400,
autoclose : false,
events :
ok_button : {
text : QUILocale.get('quiqqer/system', 'save'),
textimage : 'icon-save fa fa-save'
},
cancel_button : {
text : QUILocale.get('quiqqer/system', 'cancel'),
textimage : 'icon-remove fa fa-remove'
},
events :
{
onOpen : function(Win)
{
Win.Loader.show();
require([
'package/quiqqer/bricks/bin/Site/BrickEdit'
], function(BrickEdit) {
new BrickEdit({
brickId : Select.value
Win.Edit = new BrickEdit({
brickId : Select.value,
styles : {
height : Win.getContent().getSize().y
}
}).inject(Win.getContent());
});
......@@ -821,13 +831,16 @@ define('package/quiqqer/bricks/bin/Site/Area', [
onSubmit : function(Win)
{
var Form = Win.getContent().getElement( 'form' );
console.log(Win.Edit);
Select.set({
'data-inheritance' : Form.elements.inheritance.checked ? 1 : 0
});
Win.close();
// var Form = Win.getContent().getElement( 'form' );
//
// Select.set({
// 'data-inheritance' : Form.elements.inheritance.checked ? 1 : 0
// });
//
// Win.close();
}
}
}).open();
......
.quiqqer-bricks-site-brickedit {
float: left;
width: 100%;
}
\ No newline at end of file
{assign var=dataQuiKey value="data-qui"}
<table class="data-table brick-site-edit">
<tbody>
<tr class="odd">
<td>
<label for="inheritance">
{locale group="quiqqer/bricks" var="site.area.window.settings.setting.inheritance"}
</label>
</td>
<td>
<input type="checkbox" name="inheritance" id="inheritance" />
</td>
</tr>
{if isset($params.customfields)}
{foreach $params.customfields as $key => $field}
{if isset($params.availableSettings.$key)}
{assign var=setting value=$params.availableSettings.$key}
<tr class="{cycle values="even,odd"}">
<td>
<label for="{$setting.name}">
{assign var=group value=$setting.text.0}
{assign var=val value=$setting.text.1}
{locale group=$group var=$val}
</label>
</td>
<td>
{if $setting.type == 'select'}
<select>
{foreach $setting.options as $option}
<option value="">
{locale group=$option.text.0 value=$option.text.1}
</option>
{/foreach}
</select>
{else if $setting.type == 'checkbox'}
<input type="checkbox"
id="{$setting.name}"
class="{$setting.class}"
data-qui="{$setting.$dataQuiKey}"
/>
{else}
<input type="text"
id="{$setting.name}"
class="{$setting.class}"
data-qui="{$setting.$dataQuiKey}"
/>
{/if}
</td>
</tr>
{/if}
{/foreach}
{/if}
</tbody>
</table>
......@@ -11,9 +11,14 @@ define('package/quiqqer/bricks/bin/Site/BrickEdit', [
'qui/QUI',
'qui/controls/Control',
'qui/controls/loader/Loader'
'qui/controls/loader/Loader',
'utils/Template',
'utils/Controls',
'Ajax',
], function(QUI, QUIControl, QUILoader)
'css!package/quiqqer/bricks/bin/Site/BrickEdit.css'
], function(QUI, QUIControl, QUILoader, Template, ControlUtils, QUIAjax)
{
"use strict";
......@@ -24,11 +29,25 @@ define('package/quiqqer/bricks/bin/Site/BrickEdit', [
Extends: QUIControl,
Type: 'package/quiqqer/bricks/bin/Site/BrickEdit',
Binds : [
'$onInject'
],
options :{
brickId : false,
Site : false
},
initialize : function(options)
{
this.parent(options);
this.Loader = new QUILoader();
this.$Form = null;
this.addEvents({
onInject : this.$onInject
});
},
/**
......@@ -43,7 +62,7 @@ define('package/quiqqer/bricks/bin/Site/BrickEdit', [
});
this.Loader.inject(this.$Elm);
this.$Form = new Element('form').inject(this.$Elm);
return this.$Elm;
},
......@@ -53,7 +72,81 @@ define('package/quiqqer/bricks/bin/Site/BrickEdit', [
*/
$onInject : function()
{
if (!this.getAttribute('brickId')) {
return;
}
if (!this.getAttribute('Site')) {
return;
}
var self = this;
this.Loader.show();
this.getSettings().then(function(result) {
console.log(result);
return Template.get('bin/Site/BrickEdit', false, {
'package' : 'quiqqer/bricks',
params : JSON.encode({
customfields : result.customfields,
availableSettings : result.availableSettings
})
});
}).then(function(html) {
self.getElm().set('html', html);
return QUI.parse(self.getElm());
}).then(function() {
return ControlUtils.parse(self.getElm());
}).then(function() {
var i, len, Control;
var Project = self.getAttribute('Site'),
controls = self.getElm().getElements(['data-quiid']);
for (i = 0, len = controls.length; i < len; i++)
{
console.log( controls[i] );
Control = QUI.Controls.getById(controls[i].get('data-quiid'));
if (Control && "setProject" in Control) {
Control.setProject(Project);
}
}
self.Loader.hide();
}).catch(function(err) {
console.error(err);
});
},
/**
* Return the settings of the brick
*
* @returns {Promise}
*/
getSettings : function()
{
return new Promise(function(resolve, reject) {
QUIAjax.get('package_quiqqer_bricks_ajax_getBrick', function(result) {
resolve(result);
}, {
'package' : 'quiqqer/bricks',
onError : reject,
brickId : this.getAttribute('brickId')
});
}.bind(this));
}
});
});
......@@ -188,7 +188,10 @@
<de><![CDATA[Bestimmen Sie welche Einstellung flexibel von anderen Benutzern verändert werden können.]]></de>
<en><![CDATA[Determine which setting can be flexibly changed by others.]]></en>
</locale>
<locale name="site.area.window.settings.setting.inheritance">
<de><![CDATA[Baustein wird vererbt]]></de>
<en><![CDATA[Brick is inherited]]></en>
</locale>
</groups>
<groups name="quiqqer/bricks" datatype="js">
<locale name="brick.type">
......@@ -274,10 +277,6 @@ M&ouml;chten Sie die Bausteine aus der Bausteinzone entfernen?</p>]]></de>
<de><![CDATA[Baustein-Einstellungen]]></de>
<en><![CDATA[Brick settings]]></en>
</locale>
<locale name="site.area.window.settings.setting.inheritance">
<de><![CDATA[Baustein wird vererbt]]></de>
<en><![CDATA[Brick is inherited]]></en>
</locale>
<locale name="manager.button.add">
<de><![CDATA[Baustein hinzufügen]]></de>
<en><![CDATA[Add a Brick]]></en>
......
0% oder .
You are about to add 0 people to the discussion. Proceed with caution.
Bearbeitung dieser Nachricht zuerst beenden!
Bitte registrieren oder zum Kommentieren