var myDesignSurface = new DesignSurface();
var pageguid = 0;
var fieldsetguid = 0;
var fieldguid = 0;
var currentpage = 0;
var addfield = true;
var fieldToUpdate;
var fieldToUpdatePrevalues;
$(document).ready(function () {
// $("#designsurface").sortable({
// handle: '.handle',
// update: function() {
// var sortorder = $('#designsurface').sortable('serialize');
// myDesignSurface.UpdatePageSortOrder(sortorder);
// }
// });
$(".fieldsetcontainer").sortable({
handle: '.handle',
connectWith: '.fieldsetcontainer'
});
$(".fieldcontainer").sortable({
handle: '.handle',
connectWith: '.fieldcontainer'
});
$("#" + addpage_id).click(function () {
ShowAddPageDialog();
});
ToggleAddFieldsetAction();
ToggleAddFieldAction();
$(".CancelModal").click(function () {
CloseDialog();
});
$("#addprevalue").click(function () {
AddPrevalue();
});
$("#editaddprevalue").click(function () {
EditAddPrevalue();
});
$("#fieldpageselect").change(function () {
$('#fieldfieldsetselect').children().remove();
$("#" + $("#fieldpageselect").val() + " .fieldset").each(function () {
var text = $(this).children(".fieldsetname").text();
var value = $(this).attr("id");
$("#fieldfieldsetselect").append($("").attr("value", value).text(text));
});
});
$("#fieldtype").change(function () {
//also show additional fieldtype settings
ShowFieldTypeSpecificSettings($("#fieldtype option:selected").val());
if ($("#fieldtype option:selected").attr('prevalues') == "1") {
if (!($('#fieldprevalues').is(':visible'))) {
$("#fieldprevalues").show('blind', {}, 500);
$("#fieldprevalueslist").sortable({
update: function () {
//var sortorder = $('#designsurface').sortable('serialize');
//myDesignSurface.UpdatePageSortOrder(sortorder);
}
});
}
}
else {
if ($('#fieldprevalues').is(':visible')) {
$("#fieldprevalues").hide('blind', {}, 500);
}
}
if ($("#fieldtype option:selected").attr('regex') == "1") {
$("#fieldinvaliderrormessagecontainer").show();
if (!($('#fieldregexcontainer').is(':visible'))) {
$("#fieldregexcontainer").show('blind', {}, 500);
}
}
else {
$("#fieldinvaliderrormessagecontainer").hide();
if ($('#fieldregexcontainer').is(':visible')) {
$("#fieldregexcontainer").hide('blind', {}, 500);
}
}
});
$('.editable').inlineEdit();
$('#toggleadditionalsettings').click(function () {
$('#fieldadditionalsettings').toggle();
});
if ($('#prevaluestype').children().size() == 1) {
$('#prevaluetypeselection').hide();
$('#prevaluetypeselectionselect').hide();
}
$('#prevaluestype').change(function () {
$("#fieldprevalueslist").children().remove();
if ($("#prevaluestype option:selected").val().length > 0) {
GetPrevalues($("#prevaluestype option:selected").val());
}
if ($("#prevaluestype option:selected").attr('crud') == "1") {
//$('#prevalueadd').show();
}
else {
//$('#prevalueadd').hide();
}
});
if (currentStep == 0) {
SetupStepsNavigation();
}
else {
ShowPage(currentStep);
}
$("#stepnavnew").click(function () {
ShowAddPageDialog();
});
$("#stepnavnext").click(function () {
ShowNextPage();
});
$("#stepnavprev").click(function () {
ShowPreviousPage();
});
SetFieldHover();
$("#fieldmandatory").click(function () {
if ($("#fieldmandatory").is(":checked"))
$("#fieldrequirederrormessagecontainer").show();
else
$("#fieldrequirederrormessagecontainer").hide();
});
var form = $('#fieldform').get(0);
$.removeData(form, 'validator');
$('#fieldform').unbind('submit');
$("#fieldform").validate({ submitHandler: function () {
AddUpdateField();
}
});
var form = $('#prevalueform').get(0);
$.removeData(form, 'validator');
$('#prevalueform').unbind('submit');
$("#prevalueform").validate({ submitHandler: function () {
UpdatePrevalues(fieldToUpdatePrevalues);
$("#" + fieldToUpdatePrevalues + " .fieldeditprevalues").show();
$("#" + fieldToUpdatePrevalues + " .fieldControl").show();
}
});
});
function AddUpdateField() {
if (addfield) {
AddField();
}
else {
UpdateField(fieldToUpdate);
}
}
function SetFieldHover(){
$('.field').hover(function() {
$(this).addClass('activefield');
}, function() {
$(this).removeClass('activefield');
});
}
function ShowPage(page) {
currentpage = page;
$(".page").hide();
$(".page:nth-child(" + currentpage + ")").show();
if (currentpage == 1) {
$("#stepnavprev").hide();
} else {
$("#stepnavprev").show();
}
if ($(".page").size() == currentpage) {
$("#stepnavnext").hide();
$("#stepnavnew").show();
}
else {
$("#stepnavnext").show();
$("#stepnavnew").hide();
}
}
function ShowNextPage() {
$(".page:nth-child(" + currentpage + ")").hide();
currentpage++;
$(".page:nth-child(" + currentpage + ")").show();
if (currentpage > 1) {
$("#stepnavprev").show();
}
else {
$("#stepnavprev").hide();
}
if ($(".page").size() == currentpage) {
$("#stepnavnext").hide();
$("#stepnavnew").show();
}
}
function ShowPreviousPage() {
if (currentpage > 1) {
$(".page:nth-child(" + currentpage + ")").hide();
currentpage--;
}
$(".page:nth-child(" + currentpage + ")").show();
if($(".page").size() == currentpage)
{
$("#stepnavnext").hide();
$("#stepnavnew").show();
}
else
{
$("#stepnavnext").show();
$("#stepnavnew").hide();
}
if (currentpage == 1) {
$("#stepnavprev").hide();
}
}
function SetupStepsNavigation() {
if($(".page").size() == 0)
{
$("#stepnavprev").hide();
$("#stepnavnext").hide();
$("#stepnavnew").show();
}
else if ($(".page").size() == 1) {
currentpage = 1;
$(".page:nth-child(1)").show();
$("#stepnavprev").hide();
$("#stepnavnext").hide();
$("#stepnavnew").show();
$(".page .pageheader .delete").hide();
}
else {
currentpage = 1;
$(".page:nth-child(1)").show();
$("#stepnavprev").hide();
$("#stepnavnew").hide();
$("#stepnavnext").show();
}
}
function ToggleAddFieldsetAction() {
$("#" + addfieldset_id).unbind('click');
if ($('#designsurface').children().size() > 0) {
$("#" + addfieldset_id).removeClass("disabled");
$("#" + addfieldset_id).click(function() {
ShowAddFieldsetDialog(null);
});
}
else {
$("#" + addfieldset_id).addClass("disabled");
$("#" + addfieldset_id).click(function(e) {
e.preventDefault();
});
}
}
function ToggleAddFieldAction() {
$("#" + addfield_id).unbind('click');
if ($(".fieldset").size() > 0) {
$("#" + addfield_id).removeClass("disabled");
$("#" + addfield_id).click(function() {
ShowAddFieldDialog(null);
});
}
else {
$("#" + addfield_id).addClass("disabled");
$("#" + addfield_id).click(function(e) {
e.preventDefault();
});
}
}
function CloseDialog() {
$.modal.close();
}
function ShowAddPageDialog()
{
/* Set Captions */
$('#PageModal h1').text(lang_addpage);
$('#PageModal #pageform .submit').attr('value', lang_addpage);
/* Clear Fields */
$('#NewPageName').val('');
/* Show Modal */
//$('#PageModal').modal();
//auto add
//$('#PageModal').appendTo("#designsurface");
//$('#PageModal').show();
$('#cancelpageaction').click(function() {
$('#PageModal').prependTo("#modals");
});
/* Set Focus */
$('#NewPageName').focus();
var form = $('#pageform').get(0);
$.removeData(form, 'validator');
$('#pageform').unbind('submit');
$("#pageform").validate({ submitHandler: function() {
AddPage();
}
});
//auto add
$("#NewPageName").val("Edit form step")
AddPage();
}
function AddPage() {
var pagenumber = pageguid;
pageguid = pageguid + 1;
var pagename = $("#NewPageName").val();
var pageid = "page_" + pagenumber;
$("#designsurface").append("
");
$(".fieldsetcontainer").sortable({
connectWith: '.fieldsetcontainer',
handle : '.handle',
update : function () {
var sortorder = $('#fieldsetcontainer' + pageid).sortable('serialize');
myDesignSurface.UpdateFieldsetSortOrder(pageid, sortorder);
}
});
ToggleAddFieldsetAction();
//CloseDialog();
$('#PageModal').prependTo("#modals");
$('.editable').inlineEdit();
myDesignSurface.AddPage(pageid,pagename);
ShowNextPage();
$(".page .pageheader .delete").show();
//auto inline edit;
$('#' + pageid + " .pageheader .editable").click();
}
function ShowUpdatePageDialog(page) {
/* Set Captions */
$('#PageModal h1').text(lang_updatepage);
$('#PageModal #pageform .submit').attr('value',lang_updatepage);
/* Set Current Values */
$('#NewPageName').val($('#' + page + ' .pagename').text());
//$('#PageModal').modal();
$('#PageModal').prependTo("#" + page + " .pageeditcontainer");
$('#PageModal').show();
$('#cancelpageaction').click(function() {
$('#PageModal').prependTo("#modals");
});
/* Set Focus */
$('#NewPageName').focus();
var form = $('#pageform').get(0);
$.removeData(form, 'validator');
$('#pageform').unbind('submit');
$("#pageform").validate({ submitHandler: function() {
UpdatePage(page);
}
});
}
function UpdatePage(page)
{
var newname = $('#NewPageName').val();
$('#' + page + ' .pagename').text(newname);
//CloseDialog();
$('#PageModal').prependTo("#modals");
$('.editable').inlineEdit();
myDesignSurface.UpdatePage(page,newname);
}
function DeletePage(page)
{
if(ConfirmDelete())
{
$("#" + page).hide('blind', {}, 500, function() {
$('#PageModal').prependTo("#modals");
$('#FieldSetModal').prependTo("#modals");
$('#FieldModal').prependTo("#modals");
$("#" + page).remove();
if ($(".page").size() == 1) {
$(".page .pageheader .delete").hide();
}
ShowPreviousPage();
ToggleAddFieldsetAction();
myDesignSurface.DeletePage(page);
});
}
}
function ConfirmDelete()
{
if (confirm(lang_deleteconfirm)==true)
return true;
else
return false;
}
function ShowAddFieldsetDialog(page) {
/* Show page selection */
$("#fieldsetpageselectcontainer").show();
/* Set Captions */
$('#FieldsetModal h1').text(lang_addfieldset);
$('#FieldsetModal #fieldsetform .submit').attr('value',lang_addfieldset);
/* Clear Fields */
$('#NewFieldsetName').val('');
if (page != null) {
$('#fieldsetpageselectcontainer').hide();
$('#cancelfieldsetaction').click(function() {
$('#FieldsetModal').prependTo("#modals");
$('#FieldsetModal').hide();
});
//auto add
//$('#FieldsetModal').appendTo("#" + page);
//$('#FieldsetModal').show();
}
else {
// auto add
//$('#fieldsetpageselectcontainer').show();
//$('#FieldsetModal').modal();
}
/* Set Focus */
$('#NewFieldsetName').focus();
$(".page").each(function() {
var text = $(this).children(".pagename").text();
var value = $(this).attr("id");
$("#pageselect").append($("").attr("value", value).text(text));
});
if (page != null) {
$("#pageselect").val(page);
}
var form = $('#fieldsetform').get(0);
$.removeData(form, 'validator');
$('#fieldsetform').unbind('submit');
$("#fieldsetform").validate({submitHandler: function() {
AddFieldset();
}});
// auto add
$("#NewFieldsetName").val("Edit fieldset");
AddFieldset();
}
function AddFieldset()
{
var page = $("#pageselect").val();
var fieldsetnumber = fieldsetguid;
fieldsetguid = fieldsetguid + 1;
var fieldsetcontainer = '#' + page + ' .fieldsetcontainer';
var newfieldsetid = page.replace('_', '') + "fieldset_" + fieldsetnumber;
var fieldsetname = $("#NewFieldsetName").val();
$(fieldsetcontainer).append(" ");
$(".fieldcontainer").sortable({
connectWith: '.fieldcontainer',
handle : '.handle',
update : function () {
//$('#designsurface').sortable('serialize');
//alert('field sort order updated');
myDesignSurface.UpdateFieldSortOrder("todo","todo");
}
});
ToggleAddFieldAction();
CloseDialog();
$('#FieldsetModal').prependTo("#modals");
$('#FieldsetModal').hide();
$('.editable').inlineEdit();
//auto inline edit;
$('#' + newfieldsetid + " .fieldsetheader .editable").click();
myDesignSurface.AddFieldset(page,newfieldsetid,fieldsetname);
}
function ShowUpdateFieldsetDialog(fieldset) {
/* Hide page selection */
$("#fieldsetpageselectcontainer").hide();
/* Set Captions */
$('#FieldsetModal h1').text(lang_updatefieldset);
$('#FieldsetModal #fieldsetform .submit').attr('value',lang_updatefieldset);
/* Set Current Values */
$('#NewFieldsetName').val($('#' + fieldset + ' .fieldsetname').text());
//$('#FieldsetModal').modal();
$('#FieldsetModal').prependTo("#" + fieldset + " .fieldseteditcontainer");
$('#FieldsetModal').show();
$('#cancelfieldsetaction').click(function() {
$('#FieldsetModal').prependTo("#modals");
$('#FieldsetModal').hide();
});
/* Set Focus */
$('#NewFieldsetName').focus();
var form = $('#fieldsetform').get(0);
$.removeData(form, 'validator');
$('#fieldsetform').unbind('submit');
$("#fieldsetform").validate({submitHandler: function() {
UpdateFieldset(fieldset);
}});
}
function UpdateFieldset(fieldset)
{
var newname = $('#NewFieldsetName').val();
$('#' + fieldset+ ' .fieldsetname').text(newname);
//CloseDialog();
$('#FieldsetModal').prependTo("#modals");
$('#FieldsetModal').hide();
$('.editable').inlineEdit();
myDesignSurface.UpdateFieldset(fieldset,newname);
}
function DeleteFieldset(fieldset)
{
if(ConfirmDelete())
{
$("#" + fieldset).hide('blind', {}, 500, function() {
$('#FieldsetModal').prependTo("#modals");
$('#FieldModal').prependTo("#modals");
$("#" + fieldset).remove();
ToggleAddFieldAction();
myDesignSurface.DeleteFieldset(fieldset);
});
}
}
function ShowAddFieldDialog(fieldset) {
/* Show fieldset selection */
$("#fieldfieldsetselectcontainer").show();
//hide additional settings
$('#fieldadditionalsettings').hide();
/* Set Captions */
$('#FieldModal h1').text(lang_addfield);
$('#FieldModal #fieldform .submit').attr('value',lang_addfield);
/* Clear Fields */
$('#fieldcaption').val('');
//$('#fieldtype').selectedIndex = -1;
//$("#fieldtype option:first").attr('selected', 'selected');
$("#fieldtype option:[value='3f92e01b-29e2-4a30-bf33-9df5580ed52c']").attr('selected', 'selected');
//show fieldtype specific settings
ShowFieldTypeSpecificSettings('3f92e01b-29e2-4a30-bf33-9df5580ed52c');
$('#fieldmandatory').attr('checked', false);
$('#fieldregex').val('');
$('#fieldprevalueslist').children().remove();
$('#fieldprevalues').hide();
$("#fieldtooltip").val('');
$("#fieldrequirederrormessage").val('');
$("#fieldinvaliderrormessage").val('');
$("#fieldrequirederrormessagecontainer").hide();
//Set standard prevalue type
$('#prevaluestype').val('');
if (fieldset != null) {
$("#fieldfieldsetselectcontainer").hide();
$('#cancelfieldaction').click(function() {
$('#FieldModal').prependTo("#modals");
});
$('#FieldModal').appendTo("#" + fieldset);
$('#FieldModal').show();
}
else {
$("#fieldfieldsetselectcontainer").show();
$('#FieldModal').modal();
}
/* Set Focus */
$('#fieldcaption').focus();
$(".page").each(function() {
var text = $(this).children(".pagename").text();
var value = $(this).attr("id");
if ($(this).children(".fieldsetcontainer").children().size() > 0) {
$("#fieldpageselect").append($("").attr("value", value).text(text));
}
});
FieldSetFieldsetSelection(fieldset);
// var form = $('#fieldform').get(0);
// $.removeData(form, 'validator');
//
// $('#fieldform').unbind('submit');
// $("#fieldform").validate({ submitHandler: function () {
// AddField();
// }
// });
addfield = true;
myDesignSurface.ShowAddFieldDialog();
}
function AddField()
{
var fieldsetid = $('#fieldfieldsetselect').val(); //$('#fieldsetid').text();
var fieldcaption = $("#fieldcaption").val();
var fieldtype = $("#fieldtype").val();
var fieldmandatory = $("#fieldmandatory").attr('checked');
var fieldregex = $("#fieldregex").val();
var fieldtooltip = $("#fieldtooltip").val();
var fieldrequirederrormessage = $("#fieldrequirederrormessage").val();
var fieldinvaliderrormessage = $("#fieldinvaliderrormessage").val();
var fieldnumber = fieldguid;
fieldguid = fieldguid + 1;
var fieldcontainer = '#' + $('#fieldfieldsetselect').val() +' .fieldcontainer';
var newfieldid = $('#fieldfieldsetselect').val().replace('_', '') + "field_" + fieldnumber;
var mandatorycontent = "";
if (fieldmandatory) {
mandatorycontent = "*";
}
var mandatory = "" + mandatorycontent + "";
$(fieldcontainer).append("");
$(fieldcontainer).append("");
$("#"+newfieldid).attr('fieldcaption',fieldcaption);
$("#"+newfieldid).attr('fieldtype',fieldtype);
$("#"+newfieldid).attr('fieldmandatory',fieldmandatory);
$("#" + newfieldid).attr('fieldregex', fieldregex);
$("#" + newfieldid).attr('fieldtooltip', fieldtooltip);
$("#" + newfieldid).attr('fieldrequirederrormessage', fieldrequirederrormessage);
$("#" + newfieldid).attr('fieldinvaliderrormessage', fieldinvaliderrormessage);
//does it allow regex
if ($("#fieldtype option:selected").attr('regex') == "1") {
$("#" + newfieldid).attr('fieldsupportsregex', '1');
}
else {
$("#" + newfieldid).attr('fieldsupportsregex', '0');
}
//does it have prevalues
if($("#fieldtype option:selected").attr('prevalues') == "1")
{
$("#"+newfieldid).attr('fieldsupportsprevalues','1');
}
else
{
$("#" + newfieldid).attr('fieldsupportsprevalues', '0');
$("#" + newfieldid + " .fieldeditprevalues").hide();
}
myDesignSurface.AddField(fieldsetid,newfieldid,fieldcaption,fieldtype,fieldmandatory,fieldregex);
var prevaluecontainer = '#' + newfieldid + ' .fieldprevalues';
var myPrevalues = new Array();
var prevaluecount = 0;
if ($("#fieldtype option:selected").attr('prevalues') == "1") {
$(prevaluecontainer).attr('type', $("#prevaluestype option:selected").val());
$(prevaluecontainer).attr('crud', $("#prevaluestype option:selected").attr('crud'));
}
$("#fieldprevalueslist").children().each(function() {
var child = $(this);
var relattr = "";
if (child.attr("rel") != undefined) {
relattr = "rel='" + child.attr("rel") + "'";
};
var prevalue = child.children(":first-child").text();
var prevalueid = child.attr("id");
$(prevaluecontainer).append("" + prevalue + "
");
//todo
//myDesignSurface.AddPrevalue(fieldid,prevalueid,value);
myPrevalues[prevaluecount] = prevalue;
prevaluecount++;
});
//additional settings
SaveAdditionalSettings(newfieldid);
//Field Preview
$("#" + newfieldid + " .fieldexample").append("
");
GetFieldPreview(newfieldid, fieldtype, myPrevalues)
//does it have prevalues
if ($("#fieldtype option:selected").attr('prevalues') == "1") {
if ($("#prevaluestype option:selected").attr('crud') == "0")
{
$("#" + newfieldid + " .fieldeditprevalues").hide();
}
}
else {
$("#" + newfieldid + " .fieldeditprevalues").hide();
}
CloseDialog();
$('#FieldModal').prependTo("#modals");
SetFieldHover();
}
function ShowUpdateFieldDialog(field) {
$(".field").show();
/* Hide fieldset selection */
$("#fieldfieldsetselectcontainer").hide();
//hide additional settings
$('#fieldadditionalsettings').hide();
/* Set Captions */
$('#FieldModal h1').text(lang_updatefield);
$('#FieldModal #fieldform .submit').attr('value',lang_updatefield);
/* Set Current Values */
var fieldcaption = $("#"+field).attr('fieldcaption');
$("#fieldcaption").val(fieldcaption);
var fieldtooltip = $("#" + field).attr('fieldtooltip');
$("#fieldtooltip").val(fieldtooltip);
var fieldrequirederrormessage = $("#" + field).attr('fieldrequirederrormessage');
$("#fieldrequirederrormessage").val(fieldrequirederrormessage);
var fieldinvaliderrormessage = $("#" + field).attr('fieldinvaliderrormessage');
$("#fieldinvaliderrormessage").val(fieldinvaliderrormessage);
var fieldtype = $("#"+field).attr('fieldtype');
$("#fieldtype").val(fieldtype);
//show fieldtype specific settings
ShowFieldTypeSpecificSettings(fieldtype);
LoadAdditionalSettings(field);
var fieldmandatory = $("#"+field).attr('fieldmandatory');
if (fieldmandatory.toString().toLowerCase() == 'true' || fieldmandatory == '1')
{
$("#fieldmandatory").attr('checked', true);
$("#fieldrequirederrormessagecontainer").show();
}
else
{
$("#fieldmandatory").attr('checked', false);
$("#fieldrequirederrormessagecontainer").hide();
}
var fieldregex = $("#"+field).attr('fieldregex');
$("#fieldregex").val(fieldregex);
$('#cancelfieldaction').click(function() {
$('#FieldModal').prependTo("#modals");
$('#FieldModal').hide();
$("#" + field).show();
});
//$('#FieldModal').modal();
$("#fieldeditcontainer" + field).insertAfter("#" + field);
$('#FieldModal').prependTo("#fieldeditcontainer" + field + "");
$('#FieldModal').show();
/* Regex */
if ($("#" + field).attr('fieldsupportsregex') == "0") {
$("#fieldregexcontainer").hide();
$("#fieldinvaliderrormessagecontainer").hide();
}
else {
$("#fieldregexcontainer").show();
$("#fieldinvaliderrormessagecontainer").show();
}
/* Prevalues */
$('#fieldprevalueslist').children().remove();
if ($("#" + field).attr('fieldsupportsprevalues') == "1") {
//Show prevalue part
$("#fieldprevalues").show();
//Set Type
var prevaluetype = $("#" + field + " .fieldprevalues").attr('type');
$("#prevaluestype").val(prevaluetype);
var prevaluecrud = $("#" + field + " .fieldprevalues").attr('crud');
$('#prevalueadd').hide();
// if (prevaluecrud == "1") {
// $('#prevalueadd').show();
// }
// else {
// $('#prevalueadd').hide();
// }
//Populate prevalues
var pvseed = 0;
$('#' + field + " .fieldprevalues").children().each(function() {
child = $(this);
var prevalue = child.text();
var prevalueid = "pvid" + pvseed;
if (child.attr("rel") != undefined) {
var relattr = "rel='" + child.attr("rel") + "'";
};
var hidecrud = "";
if (prevaluecrud != "1") {
hidecrud = " style='display:none'";
}
$("#fieldprevalueslist").append("" + prevalue + " " + lang_delete + " handle");
pvseed++;
});
$("#fieldprevalueslist").sortable({
handle: '.handle',
update: function() {
//var sortorder = $('#designsurface').sortable('serialize');
//myDesignSurface.UpdatePageSortOrder(sortorder);
}
});
}
else {
$("#fieldprevalues").hide();
}
/* Set Focus */
$('#fieldcaption').focus();
// var form = $('#fieldform').get(0);
// $.removeData(form, 'validator');
// $('#fieldform').unbind('submit');
//
// $("#fieldform").validate({submitHandler: function() {
// UpdateField(field);
//
// }});
fieldToUpdate = field;
addfield = false;
$("#" + field).hide();
myDesignSurface.ShowUpdateFieldDialog(field);
}
function UpdateField(field)
{
var newcaption = $("#fieldcaption").val();
var newtype = $("#fieldtype").val();
var newmandatory = $("#fieldmandatory").attr('checked');
var newregex = $("#fieldregex").val();
var newtooltip = $("#fieldtooltip").val();
var newrequirederrormessage = $("#fieldrequirederrormessage").val();
var newinvaliderrormessage = $("#fieldinvaliderrormessage").val();
$("#"+field).attr('fieldcaption',newcaption);
$("#"+field).attr('fieldtype',newtype);
$("#"+field).attr('fieldmandatory',newmandatory);
$("#" + field).attr('fieldregex', newregex);
$("#" + field).attr('fieldtooltip', newtooltip);
$("#" + field).attr('fieldrequirederrormessage', newrequirederrormessage);
$("#" + field).attr('fieldinvaliderrormessage', newinvaliderrormessage);
$("#" + field + ' .fieldexample label').text(newcaption);
//clear prevalues
var prevaluecontainer = '#' + field + ' .fieldprevalues';
$(prevaluecontainer).children().remove();
//clear examples
$('#' + field + ' .fieldexample').children().remove();
$('#' + field + ' .fieldexample').text("");
//mandatory
var mandatorycontent = "";
if (newmandatory) {
mandatorycontent = "*";
}
var mandatory = "" + mandatorycontent + "";
//does it allow regex
if ($("#fieldtype option:selected").attr('regex') == "1") {
$("#" + field).attr('fieldsupportsregex', '1');
}
else {
$("#" + field).attr('fieldsupportsregex', '0');
}
var myPrevalues = new Array();
var prevaluecount = 0;
//does it have prevalues
if($("#fieldtype option:selected").attr('prevalues') == "1") {
//$("#" + field + " .fieldeditprevalues").show();
$("#" + field).attr('fieldsupportsprevalues', '1');
if ($("#fieldtype option:selected").attr('prevalues') == "1") {
$("#" + field + " .fieldprevalues").attr('type', $("#prevaluestype option:selected").val());
$("#" + field + " .fieldprevalues").attr('crud', $("#prevaluestype option:selected").attr('crud'));
}
$("#fieldprevalueslist").children().each(function() {
var child = $(this);
var prevalue = child.children(":first-child").text();
var prevalueid = child.attr("id");
var relattr = "";
if (child.attr("rel") != undefined) {
relattr = "rel='" + child.attr("rel") + "'";
};
$(prevaluecontainer).append("" + prevalue + "
");
//todo
//myDesignSurface.AddPrevalue(fieldid,prevalueid,value);
myPrevalues[prevaluecount] = prevalue;
prevaluecount++;
});
}
else
{
$("#" + field).attr('fieldsupportsprevalues', '0');
//$("#" + field + " .fieldeditprevalues").hide();
}
$('#' + field + ' .fieldexample').append("
");
if ($("#fieldtype option:selected").attr('prevalues') == "1") {
if ($("#prevaluestype option:selected").attr('crud') == "0")
{
$("#" + field + " .fieldeditprevalues").hide();
}
else
{
$("#" + field + " .fieldeditprevalues").show();
}
}
else {
$("#" + field + " .fieldeditprevalues").hide();
}
//additional settings
SaveAdditionalSettings(field);
GetFieldPreview(field, newtype, myPrevalues)
//CloseDialog();
$('#FieldModal').prependTo("#modals");
$('#FieldModal').hide();
$("#" + field).show();
myDesignSurface.UpdateField(field,newcaption,newtype,newmandatory,newregex);
}
function FieldSetFieldsetSelection(fieldset) {
var fieldsetid;
var pageid;
if (fieldset == null) {
fieldsetid = $(".fieldset")[0].id;
}
else {
fieldsetid = fieldset;
}
pageid = $("#" + fieldsetid).parent().parent().attr("id");
$("#" + pageid + " .fieldset").each(function() {
var text = $(this).children(".fieldsetname").text();
var value = $(this).attr("id");
$("#fieldfieldsetselect").append($("").attr("value", value).text(text));
});
$("#fieldpageselect").val(pageid);
$("#fieldfieldsetselect").val(fieldsetid);
}
function DeleteField(field)
{
if(ConfirmDelete())
{
$("#" + field).hide('blind', {}, 500, function() {
$('#FieldModal').prependTo("#modals");
$('#PreValueModal').prependTo("#modals");
$("#" + field).remove();
$("#fieldeditcontainer" + field).remove();
myDesignSurface.DeleteField(field);
});
}
}
function AddPrevalue()
{
var prevalue = $("#fieldnewprevalue").val();
var prevaluenumber = $("#fieldprevalueslist").children().size() + 1;
var prevalueid = "prevalue_" + prevaluenumber;
if(prevalue.length > 0)
{
$("#fieldprevalueslist").append("" + prevalue + " " + lang_delete + " handle");
$("#fieldnewprevalue").val('');
}
}
function DeletePrevalue(prevalue) {
if (ConfirmDelete()) {
$("#" + prevalue).hide('blind', {}, 500, function() {
$("#" + prevalue).remove();
//myDesignSurface.DeletePage(page);
});
}
}
function SaveDesign() {
myDesignSurface.SaveDesign(formguid, $("#designsurface").html());
}
function EditAddPrevalue() {
var prevalue = $("#editnewprevalue").val();
var prevaluenumber = $("#editprevaluelist").children().size() + 1;
var prevalueid = "pvidedit" + prevaluenumber;
if (prevalue.length > 0) {
$("#editprevaluelist").append("" + prevalue + " " + lang_delete + " handle");
$("#editnewprevalue").val('');
}
$('.editable').inlineEdit();
}
function ShowUpdatePrevaluesDialog(field) {
$('#cancelprevalueaction').click(function() {
$('#PreValueModal').prependTo("#modals");
//$('#PreValueModal').hide();
//$("#" + field).show();
$("#" + field + " .fieldeditprevalues").show();
$("#" + field + " .fieldControl").show();
});
$('#editprevaluelist').children().remove();
//Populate prevalues
var pvseed = 0;
$('#' + field + " .fieldprevalues").children().each(function() {
child = $(this);
var prevalue = child.text();
var prevalueid = "pvidedit" + pvseed;
if (child.attr("rel") != undefined) {
var relattr = "rel='" + child.attr("rel") + "'";
};
$("#editprevaluelist").append("" + prevalue + " " + lang_delete + " handle");
pvseed++;
});
$("#editprevaluelist").sortable({
handle: '.handle',
update: function() {
}
});
fieldToUpdatePrevalues = field;
$('.editable').inlineEdit();
$('#PreValueModal').insertAfter("#" + field + " .fieldControl");
$('#PreValueModal').show();
$("#" + field + " .fieldeditprevalues").hide();
$("#" + field + " .fieldControl").hide();
//$("#" + field).hide();
}
function UpdatePrevalues(field) {
//clear prevalues
var prevaluecontainer = '#' + field + ' .fieldprevalues';
$(prevaluecontainer).children().remove();
var myPrevalues = new Array();
var prevaluecount = 0;
$("#editprevaluelist").children().each(function () {
var child = $(this);
var prevalue = "";
//check if item isn't in edit mode
if (child.children(":first-child").children().length > 0) {
prevalue = child.children(":first-child").children(":first-child").attr("value");
}
else {
prevalue = child.children(":first-child").text();
}
var prevalueid = "x" + child.attr("id");
var relattr = "";
if (child.attr("rel") != undefined) {
relattr = "rel='" + child.attr("rel") + "'";
};
$(prevaluecontainer).append("" + prevalue + "
");
myPrevalues[prevaluecount] = prevalue;
prevaluecount++;
});
$('#PreValueModal').prependTo("#modals");
var label = $('#' + field + ' .fieldexample .fieldexamplelabel');
$('#' + field + ' .fieldexample').children().remove();
$('#' + field + ' .fieldexample').text("");
$('#' + field + ' .fieldexample').append(label);
$('#' + field + ' .fieldexample').append("
");
GetFieldPreview(field, $("#"+field).attr('fieldtype'), myPrevalues)
}
function CopyField(fieldId) {
fieldguid = fieldguid + 1;
var cloneId = fieldId + "field_" + fieldguid;
var clone = $('#' + fieldId).clone();
var origName = clone.attr('fieldcaption');
clone.attr('id', cloneId);
clone.removeAttr('rel');
clone.removeClass('activefield');
clone.html(clone.html().replace(new RegExp(fieldId, "g"), cloneId));
clone.attr('fieldcaption', origName + ' ' + lang_copy);
$('.fieldexample label span:not(.mandatory)', clone).text(origName + ' ' + lang_copy);
$('.fieldprevalues .prevalue', clone).removeAttr('rel');
clone.insertAfter($('#fieldeditcontainer' + fieldId));
var cloneEditContainer = $("");
cloneEditContainer.insertAfter(clone);
SetFieldHover();
}
function ShowFieldTypeSpecificSettings(fieldtype) {
// move previous onesjquery
$("#ftSpecificSettingsContainer").append($("#fieldadditionalsettings .ftSpecificSettings"));
//clear values
$("#ftSettingsContainer" + fieldtype + " .ftAdditionalSetting .formControl").each(function () {
var tagname = $('":first-child', this).tagName().toLowerCase();
switch (tagname) {
case "input":
if ($('input', this).attr('type') == 'text') {
$('input', this).val('');
}
if ($('input', this).attr('type') == 'checkbox') {
$('input', this).attr('checked', false);
}
break;
default:
try { $('":first-child', this).val(''); } catch (err) { }
}
});
//show correct ones
$('#fieldadditionalsettings').append($('#ftSettingsContainer' + fieldtype));
}
function LoadAdditionalSettings(field) {
$("#" + field + " .fieldadditionalsettings").children().each(function () {
SetInputValue($(":first-child", "#fieldadditionalsettings .ftAdditionalSetting:[rel=" + $(this).attr('rel') + "] .formControl"), $(this).html());
});
}
function SetInputValue(input, value) {
var tagname =input.tagName().toLowerCase();
switch (tagname) {
case "input":
if (input.attr('type') == 'text') {
input.val(value);
}
if (input.attr('type') == 'checkbox') {
if (value == "true") {
input.attr('checked', true);
} else {
input.attr('checked', false);
}
}
break;
case "select":
input.val(value);
break;
case "span":
if ($(':first-child', input).attr('class') == "picker") {
var picker = $(':first-child', input);
if(value == null || value == '')
{
clearPickerValue($('input', picker).attr('id').replace('_ContentIdValue', ''));
}
else
{
setPickerValue($('input', picker).attr('id').replace('_ContentIdValue', ''), value);
}
}
break;
default:
try{input.val(value);}catch(err){}
break;
}
}
function clearPickerValue(pickerClientId){
Umbraco.Controls.TreePicker.inst[pickerClientId].ClearSelection();
}
function setPickerValue(pickerClientId,value) {
var currentpicker = Umbraco.Controls.TreePicker.inst[pickerClientId];
$("#" + currentpicker._itemIdValueClientID).val(value);
$.ajax({
type: "POST",
url: currentpicker._webServiceUrl,
data: '{ "nodeId": ' + value + ' }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
$("#" + currentpicker._itemTitleClientID).html(msg.d);
$("#" + currentpicker._itemTitleClientID).parent().show();
}
});
}
function SaveAdditionalSettings(field) {
$("#" + field + " .fieldadditionalsettings").children().remove();
$("#fieldadditionalsettings .ftAdditionalSetting .formControl").each(function () {
var settingvalue = "";
var tagname = $(':first-child', this).tagName().toLowerCase();
switch (tagname) {
case "input":
if ($(':first-child', this).attr('type') == 'text') {
settingvalue = $('input', this).val();
}
if ($(':first-child', this).attr('type') == 'checkbox') {
settingvalue = $('input', this).attr('checked');
}
break;
case "span":
if ($(':first-child', $(':first-child', this)).attr('class') == "picker") {
var picker = $(':first-child', $(':first-child', this));
settingvalue = $('input', picker).val();
}
break
case "select":
settingvalue = $('select', this).val();
break;
default:
try { settingvalue = $(':first-child', this).val(); } catch (err) { }
}
$("#" + field + " .fieldadditionalsettings").append("" + settingvalue + "
");
});
}
$.fn.tagName = function () {
return this.get(0).tagName;
}