/* (c) 2008-2014 Samnan ur Rehman @web http://mywebsql.net @license http://mywebsql.net/license */ var pendingChanges=!1,bAddingIndex=!1,newIndex=null;function setError(a,b){$("#grid-messages").html(b).addClass("error");$(selectedRow).length&&($(selectedRow).removeClass("sel"),selectedRow=null);$(a).each(function(){$(this).addClass("error")});setTimeout(function(){$(a).each(function(){$(this).removeClass("error")})},2E3)}function setMessage(a){$("#grid-messages").html(a).removeClass("error")} function setupIndexes(){$("#grid-tabs").tabs();$("#indexlist option").remove();options="";for(index in indexInfo)options+='";$("#indexlist").html(options).change(selectIndex);removeFieldList();$("#btn_addfield").button({disabled:!0}).click(addField).hide();$("#btn_delfield").button({disabled:!0}).click(deleteField).hide();$("#chk_primary,#chk_unique,#chk_fulltext").click(checkIndexOptions);$("#indextype").hide();$("#btn_add").button().click(addIndex);$("#btn_edit").button().click(editIndex).hide(); $("#btn_save").button().click(saveIndex).hide();$("#btn_del").button().click(deleteIndex).hide();$("#btn_cancel").button().click(cancelChanges).hide();$("#btn_submit").button({disabled:!0}).click(validateIndexes);$("#dialog-list").dialog({autoOpen:!1,width:240,height:240,modal:!0,draggable:!1,resizable:!1,open:loadDialogValues,buttons:{Add:addFieldToIndex,Done:function(){$("#dialog-list").dialog("close")}}})} function loadDialogValues(a,b){$("#list-items").html("");index_name=$("#indexlist").val();for(i=0;i").val(fi.fname).text(txt),$("#list-items").append(option))}setTimeout(function(){$("#list-item").focus()},50)} function addFieldToIndex(){if(0==$("#list-items option:selected").length)return!1;field=$("#list-items").val();flength=$("#flength").val();fieldObj={column:field,type:"BTREE",order:0,length:flength};index_name=$("#indexlist").val();newIndex.push(fieldObj);fi=getField(field);tr=$('');td=tr.find("td");ftype=""==fi.flen?fi.ftype:fi.ftype+" ("+fi.flen+")";td.eq(1).text(fi.fname);td.eq(2).text(ftype);$("#table_grid tbody").append(tr);$("#list-items option:selected").remove(); $("#flength").val("");$("#btn_save").button({disabled:!1})}function addIndex(){jPrompt(__("Enter new index name"),"",__("Indexes"),function(a){null!=a&&a&&""!=a&&!indexExists(a)&&(newIndex=[],bAddingIndex=!0,option=$('"),$("#indexlist").append(option),option.prop("selected","selected"),selectIndex(),editIndex())})} function editIndex(){index=$("#indexlist").val();bAddingIndex||(newIndex=clone(indexInfo[index]));$("#btn_add,#btn_edit,#btn_del").hide();$("#table_grid").find("input").removeAttr("disabled");$("#indexlist").attr("disabled","disabled");$("#btn_addfield").button({disabled:!1}).click(addField).show();$("#btn_delfield").button({disabled:!1}).click(deleteField).show();$("#btn_cancel").show();$("#btn_save").button({disabled:!0}).show();$("#btn_submit").button({disabled:!0});$("#indextype").find("input").removeAttr("disabled"); indexExists("PRIMARY")&&$("#chk_primary").attr("disabled","disabled");"PRIMARY"==index&&$("#chk_unique,#chk_fulltext").attr("disabled","disabled")}function deleteIndex(){index=$("#indexlist").val();""!=index&&(bAddingIndex||delete indexInfo[index_name],$("#indexlist option:selected").remove(),removeFieldList(),$("#indextype").hide(),$("#btn_addfield").hide(),$("#btn_delfield").hide(),$("#btn_edit").hide(),$("#btn_del").hide(),$("#btn_submit").button({disabled:!1}))} function saveIndex(){if(0==newIndex.length)return jAlert(__("Index must have at least one field")),!1;bAddingIndex&&"1"==newIndex.primary&&(index_name="PRIMARY",delete newIndex.primary,$("#indexlist option:selected").val(index_name).text(index_name));index_name=$("#indexlist").val();indexInfo[index_name]=newIndex;$("#btn_add").show();$("#btn_cancel").hide();$("#btn_save").hide();$("#indexlist").removeAttr("disabled");bAddingIndex=!1;pendingChanges=!0;$("#btn_submit").button({disabled:!1});selectIndex()} function selectIndex(){index_name=$("#indexlist").val();if(""!=index_name){$("#table_grid tr").not("#fhead").remove();primary=unique=fulltext=!1;index=bAddingIndex?newIndex:indexInfo[index_name];for(i=0;i'),td=tr.find("td"),ftype=""==fi.flen?fi.ftype:fi.ftype+" ("+fi.flen+")",td.eq(1).text(fi.fname),td.eq(2).text(ftype),$("#table_grid tbody").append(tr),"PRIMARY"==index_name&&(primary= !0),"1"==index[i].unique&&(unique=!0),"FULLTEXT"==index[i].type&&(fulltext=!0);$("#chk_primary").prop("checked",primary);$("#chk_unique").prop("checked",unique);$("#chk_fulltext").prop("checked",fulltext);$("#table_grid").find("input").attr("disabled","disabled");$("#indextype").show().find("input").attr("disabled","disabled");$("#btn_addfield").button({disabled:!0}).show();$("#btn_delfield").button({disabled:!0}).show();$("#btn_edit").show();$("#btn_del").show()}} function removeFieldList(){$("#table_grid tr").not("#fhead").remove();$("#table_grid tbody").append(''+__("Select an index to view / edit its details")+"")}function addField(){$("#dialog-list").dialog("open")} function deleteField(){checked=$("#table_grid input:checked");if(0==checked.length)return!1;index_name=$("#indexlist").val();delRows=[];checked.each(function(){field=$(this).parent().next().text();delRows.push($(this).parent().parent());for(i=0;i'), obj_out=$('
'),div.html("").append(obj_lines).append(obj_out),parent.commandEditor.win.highlightSql($("#tab-messages pre.sql_output"),$("#tab-messages div.sql_lines"),code));$("#popup_overlay").addClass("ui-helper-hidden")}function clone(a){var b=new a.constructor,c;for(c in a)b[c]=a[c];return b};