<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<!------ Include the above in your HEAD tag ---------->
<!DOCTYPE html><html lang='en' class=''>
<head><script src='//production-assets.codepen.io/assets/editor/live/console_runner-079c09a0e3b9ff743e39ee2d5637b9216b3545af0de366d4b9aad9dc87e26bfd.js'></script><script src='//production-assets.codepen.io/assets/editor/live/events_runner-73716630c22bbc8cff4bd0f07b135f00a0bdc5d14629260c3ec49e5606f98fdd.js'></script><script src='//production-assets.codepen.io/assets/editor/live/css_live_reload_init-2c0dc5167d60a5af3ee189d570b1835129687ea2a61bee3513dee3a50c115a77.js'></script><meta charset='UTF-8'><meta name="robots" content="noindex"><link rel="shortcut icon" type="image/x-icon" href="//production-assets.codepen.io/assets/favicon/favicon-8ea04875e70c4b0bb41da869e81236e54394d63638a1ef12fa558a4a835f1164.ico" /><link rel="mask-icon" type="" href="//production-assets.codepen.io/assets/favicon/logo-pin-f2d2b6d2c61838f7e76325261b7195c27224080bc099486ddd6dccb469b8e8e6.svg" color="#111" /><link rel="canonical" href="https://codepen.io/geo007us/pen/Kzvpvx?depth=everything&order=popularity&page=12&q=builder&show_forks=false" />
<style class="cp-pen-styles"></style></head><body>
<html class="">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://code.jquery.com/jquery-latest.js"></script>
<script src="https://cdn.alloyui.com/2.5.0/aui/aui-min.js"></script>
<link href="https://cdn.alloyui.com/2.5.0/aui-css/css/bootstrap.min.css" rel="stylesheet"></link>
<script src="dynamicForm.js"></script>
<title>DEMO</title>
</head>
<body>
<div class="gridContainer clearfix">
<div id="Header"></div>
<script type="text/javascript">
// YUI.add('salut', function(Y){
// Y.namespace('Salutare');
// Y.Salutare.spuneSalut=function(){
// return 'Hai Noroc';
// };
// });
//
// YUI.use('node-base', 'node','salut', function(Y) {
// Y.one('#Header').setHTML(Y.Salutare.spuneSalut());
// })
</script>
</div>
</body>
</html>
<script src='//production-assets.codepen.io/assets/common/stopExecutionOnTimeout-b2a7b3fe212eaa732349046d8416e00a9dec26eb7fd347590fbced3ab38af52e.js'></script>
<script >YUI.add('dempubweb-dynamic-form', function (Y) {
Y.ALLOYFORM={};
Y.ALLOYFORM.formDefinition=[];
var that=this;
Y.DynamicForm = {
renderFormBuilder : function (idDiv, myFormBuilder) {
YUI().use('aui-form-builder', function (G) {
//Y.myFormBuilder=myFormBuilder;
myFormBuilder = new G.FormBuilder(
{
availableFields: [
{
iconClass: 'form-builder-field-icon-text',
id: 'uniqueTextField',
label: 'Text',
type: 'text',
width: 75,
editable: true,
required:true
//hiddenAttributes: ['showLabel','readOnly','required', 'tip']
},
{
//hiddenAttributes: ['showLabel','readOnly','required'],
iconClass: 'form-builder-field-icon-textarea',
label: 'Rich editor',
type: 'textarea'
} ,
{
iconClass: 'form-builder-field-icon-checkbox',
label: 'Checkbox',
type: 'checkbox'
},
{
iconClass: 'form-builder-field-icon-button',
label: 'Button',
type: 'button'
},
{
iconClass: 'form-builder-field-icon-select',
label: 'Select',
type: 'select'
},
{
iconClass: 'form-builder-field-icon-radio',
label: 'Radio Buttons',
type: 'radio'
},
{
iconClass: 'form-builder-field-icon-fileupload',
label: 'File Upload',
type: 'fileupload'
}
],
boundingBox: idDiv
}
);
myFormBuilder.render();
}
);
},
saveFieldsForm:function(fields, container){
console.log("myFormBuilder"+ this.myFormBuilder);
//parser = function(fields, container){
fields.each(function(item, index) {
//item is the "current" item being provided by the each function.
//index is the position of that item at its depth within its bounding element
var surveyElement = {}; //elementul inspectat
var properties = item.getProperties(); //
//console.log("properties"+properties);
//console.log("surveyElement"+surveyElement);
properties.forEach(function(property) {
var attr = property.attributeName;
surveyElement[attr] = item.get(attr);
})
surveyElement.name = item.get('name');
//console.log("dar aici surveyElement"+surveyElement.name);
var children = item.getAttrs()['fields'];
if(children && children.size() > 0){
surveyElement.children = [];
parser(children, surveyElement.children);
}
container.push(surveyElement);
});
//}
//test
//cred ca parser devine saveFieldsForm
//si la apel se va folosi ce e mai jos
//Y.ALLOYFORM.formDefinition=[];
//parser(myFormBuilder.get('fields'), ALLOYFORM.formDefinition);
// jsonDef = JSON.stringify(ALLOYFORM.formDefinition)
// console.log("formDefinition json \n" + json+'\n');
// //console.log(Object.getOwnPropertyNames(YUI));
//
// return Y.ALLOYFORM.formDefinition;
}
}, '0.0.1', { requires:['node', 'event', 'aui-form-builder']}
});
YUI().use('dempubweb-dynamic-form', function (Y) {
var myForm={}
Y.DynamicForm.renderFormBuilder("#Header", myForm);
//Y.DynamicForm.saveFieldsForm(myForm.get('fields'), ALLOYFORM.formDefinition);
});
//# sourceURL=pen.js
</script>
</body></html>