function SetScreen()
{
if (TD = xGetElementById("tdForm"))
{
ScreenWidth = screen.width;
ScreenHeight = screen.height;
if (ScreenWidth >= 1024)
{
TD.height = "350px";
}
}
}
//------------------------------------------------------------------------------------------------------------
function FormLoading()
{
SetScreen();
PageStyle = xGetElementById("lnkStyle");
Scripts = xGetElementsByTagName("script");
IsForm = false;
for (var i = 0; i < Scripts.length; i++)
{
if (Scripts[i].src.indexOf('js/form.js') != -1)
{
IsForm = true;
}
}

if (IsForm)
{
SetSelectedData();
Table = xGetElementById("tblTable");
if (Table.dir == "rtl")
{
SetDirection("rtl");
if (document.title == "")
{
document.title = "سيستم مديريت محتواي پروانه";
}
//PageStyle.href = "../css/style_rtl.css";
}
else if (xGetElementById("tblTable").dir == "ltr")
{
SetDirection("ltr");
if (document.title == "")
{
document.title = "Butterfly CMS";
}
//PageStyle.href = "../css/style_ltr.css";
}
if (Save = xGetElementById("btnSave"))
{
if (Save.onclick == null)
{
Save.onclick = FormSubmit;
}
}

}

if (((typeof FormLoading_) !== 'undefined' ) && FormLoading_)
{
FormLoading_();
}
else
{
}
}
//------------------------------------------------------------------------------------------------------------
function FormSubmit(FormID)
{
Form = GetInfo();
if (!Form)
{
if (FormID)
{
Form = FormID;
}
else
{
Form = document.forms[0];
}
}

if (FormValidate(Form.id))
{
Form.submit();
}
}
//------------------------------------------------------------------------------------------------------------
function GoTo(URL)
{
window.location = URL;
//document.forms[0].action = URL;
//document.forms[0].submit();
}
//------------------------------------------------------------------------------------------------------------
function GoToNew(URL)
{
var NewWindow = window.open(URL);
//NewWindow.location = URL;
}
//------------------------------------------------------------------------------------------------------------
function GoToNewBlank(URL)
{
var NewWindow = window.open(URL, "", "left=40,top=30,width=800,height=600,status=1,scrollbars=1,menubar=0,toolbar=0,resizable=0");
}

function NewWindow(URL, Target, Width, Height, Top, Left, Resizable, MenuBar, ScrollBars, ToolBar, Status)
{
return goToWindow(URL, Target, Width, Height, Top, Left, Resizable, MenuBar, ScrollBars, ToolBar, Status)
}

function goToWindow(URL, Target, Width, Height, Top, Left, Resizable, MenuBar, ScrollBars, ToolBar, Status) {
var StatusText = '';

if (!(Target && Target.length > 0))
{Target = null;}

if (Width)
{StatusText += ',width=' + Width;}
else
{StatusText += ',width=800';}

if (Height)
{StatusText += ',height=' + Height;}
else
{StatusText += ',height=600';}

if (Top)
{StatusText += ',top=' + Top;}
else
{StatusText += ',top=30';}

if (Left)
{StatusText += ',left=' + Left;}
else
{StatusText += ',left=40';}

if (Resizable)
{StatusText += ',resizable=' + Resizable;}
else
{StatusText += ',resizable=yes';}

if (MenuBar)
{StatusText += ',menubar=' + MenuBar;}
else
{StatusText += ',menubar=no';}

if (ScrollBars)
{StatusText += ',scrollbars=' + ScrollBars;}
else
{StatusText += ',scrollbars=yes';}

if (ToolBar)
{StatusText += ',toolbar=' + ToolBar;}
else
{StatusText += ',toolbar=no';}

if (Status)
{StatusText += ',status=' + Status;}
else
{StatusText += ',status=no';}

if (StatusText.length > 0)
{
StatusText = StatusText.substr(1);
}

var NewWindow_ = window.open(URL, Target, StatusText);
}

//------------------------------------------------------------------------------------------------------------
function Add(Name)
{
//window.location = "index.php?Page="+Name+"&Mode=NEW";
document.forms[0].action = "index.php?Page=" + Name + "&Mode=NEW";
document.forms[0].submit();
}
//------------------------------------------------------------------------------------------------------------
function Edit(Name, Evt)
{
var Evt = new xEvent(Evt)
var Element = Evt.target;
TD = xParentNode(Element, 1);
TR = xParentNode(TD, 1);
document.forms[0].action = "index.php?Page=" + Name + "&Mode=EDIT&UID=" + TR.id;
document.forms[0].submit();
}
//------------------------------------------------------------------------------------------------------------
function Edit_InOtherLanguage(Name, Evt)
{
var Evt = new xEvent(Evt)
var Element = Evt.target;
TD = xParentNode(Element, 1);
TR = xParentNode(TD, 1);

if (Element.id == "")
{
document.forms[0].action = "index.php?Page=" + Name + "&Mode=NEW&ID=" + TR.id + "&Language=" + TD.id;
}
else
{
document.forms[0].action = "index.php?Page=" + Name + "&Mode=EDIT&UID=" + Element.id + "&ID=" + TR.id + "&Language=" + TD.id;
}
document.forms[0].submit();
}
//------------------------------------------------------------------------------------------------------------
function MoveTableRow(Direction, Evt)
{
if(typeof Evt == 'undefined')
{
if (typeof Direction != 'number')
{
if (typeof Direction != 'undefined')
{
Evt = Direction;
Direction = null;
}
else
{
Evt = null;
}
}
else
{
Evt = null;
}
}

if (Evt == null)
{
var Event = new xEvent()
}
else
{
var Event = new xEvent(Evt);
}

var Element = Event.target;

if (typeof Direction == 'undefined' || Direction == null)
{
Direction = Element.direction;
}

TD = xParentNode(Element, 1);
TR = xParentNode(TD, 1);
TBody = xParentNode(TR, 1);

if(TBody.tagName.toLowerCase() == "table")
{
Table = TBody
}
else
{
Table = xParentNode(TBody, 1);
}

if ((NewTR = Table.rows[TR.rowIndex + Direction]) && (TR.rowIndex + Direction) > 0)
{
swapNodes(TR, NewTR)
//TR.swapNode(NewTR);
}
}
//------------------------------------------------------------------------------------------------------------
function FormInfo()
{
string = "  :  ( tagName ) ( type ) ( name ) ( id ) ( className ) \n";
for (i = 0; i < document.forms[0].elements.length; i++)
{
string += i + " : ";
string += " ( " + document.forms[0].elements[i].tagName + " ) ";
string += " ( " + document.forms[0].elements[i].type + " ) ";
string += " ( " + document.forms[0].elements[i].name + " ) ";
string += " ( " + document.forms[0].elements[i].id + " ) ";
string += " ( " + document.forms[0].elements[i].className + " ) ";
string += "\n";
}
//alert(string);
w = window.open();
w.document.write("<pre>" + string + "</pre>");
}
//------------------------------------------------------------------------------------------------------------
function FormInfoTable()
{
W = window.open();
Table = W.document.createElement("table");
Table.align = "center";
Table.border = "1";
Table.borderColor = "#990000";
TR = Table.insertRow(-1);
TD = TR.insertCell();
xInnerHtml(TD, "&nbsp;");
TD = TR.insertCell();
xInnerHtml(TD, "tagName");
TD = TR.insertCell();
xInnerHtml(TD, "type");
TD = TR.insertCell();
xInnerHtml(TD, "name");
TD = TR.insertCell();
xInnerHtml(TD, "id");
TD = TR.insertCell();
xInnerHtml(TD, "className");
for (i = 0; i < document.forms[0].elements.length; i++)
{
TR = Table.insertRow(-1);
TD = TR.insertCell();
xInnerHtml(TD, i);
TD = TR.insertCell();
xInnerHtml(TD, document.forms[0].elements[i].tagName);
TD = TR.insertCell();
xInnerHtml(TD, document.forms[0].elements[i].type);
TD = TR.insertCell();
xInnerHtml(TD, document.forms[0].elements[i].name);
TD = TR.insertCell();
xInnerHtml(TD, document.forms[0].elements[i].id);
TD = TR.insertCell();
xInnerHtml(TD, document.forms[0].elements[i].className);
}
W.document.body.appendChild(Table);
}
//------------------------------------------------------------------------------------------------------------
function ShowHide(Element)
{
//	if (Element.currentStyle.visibility == "hidden")
if (xVisibility(Element) == "hidden")
{
xVisibility(Element, true);
}
//	else if (Element.currentStyle.visibility == "visible")
else if (xVisibility(Element) == "visible")
{
xVisibility(Element, false);
}
}
//------------------------------------------------------------------------------------------------------------
function trim(str)
{
if (typeof(str) == "string")
{
return str.replace(/^\s*|\s*$/,"");
}
//	return str.replace(/(^ +| +$)/, "");
}
//------------------------------------------------------------------------------------------------------------
function Is_String(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_EnString(Value)
{
var RegExpPattern = /\w+/;
return RegExpPattern.test(Value);
}
function Is_FaString(Value)
{
var RegExpPattern = /./;
return true;
}
function Is_Name(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Number(Value)
{
var RegExpPattern = /\d+/;
return RegExpPattern.test(Value);
}
function Is_Username(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Password(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Email(Value)
{
//var RegExpPattern = /^[\w-\.\']{1,}\@([\da-zA-Z-]{1,}\.){1,}[\da-zA-Z-]{2,}$/;
var RegExpPattern = /^[\w-\.\']{1,}\@([\d0-9a-zA-Z-_]{1,}\.){1,}[\d0-9a-zA-Z-_]{2,}$/;
return RegExpPattern.test(Value);
}
function Is_URL(Value)
{
var RegExpPattern = /./;
//var RegExpPattern = /^[\w-\.\']{1,}\:\/\/([\d0-9a-zA-Z-_.&?;%]*)$/;
return RegExpPattern.test(Value);
}
function Is_PhoneNumber(Value)
{
var RegExpPattern = /\d+/;
return RegExpPattern.test(Value);
}
function Is_Age(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Date(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Year(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Month(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Day(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Time(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Houre(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Minute(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
function Is_Second(Value)
{
var RegExpPattern = /./;
return RegExpPattern.test(Value);
}
//------------------------------------------------------------------------------------------------------------
function Validate(Value, Type)
{
Value = trim(Value);
if (Value)
{
switch(Type)
{
case "STRING":
if(!Is_String(Value))
{
return false;
}
break;
case "En_STRING":
if(!Is_EnString(Value))
{
return false;
}
break;
case "Fa_STRING":
if(!Is_FaString(Value))
{
return false;
}
break;
case "NAME":
if(!Is_Name(Value))
{
return false;
}
break;
case "USERNAME":
if(!Is_Username(Value))
{
return false;
}
break;
case "PASSWORD":
if(!Is_Password(Value))
{
return false;
}
break;
case "EMAIL":
if(!Is_Email(Value))
{
return false;
}
break;
case "URL":
if(!Is_URL(Value))
{
return false;
}
break;
case "NUMBER":
if(!Is_Number(Value))
{
return false;
}
break;
case "PHONE_NUMBER":
if(!Is_PhoneNumber(Value))
{
return false;
}
break;
case "AGE":
if(!Is_Age(Value))
{
return false;
}
break;
case "DATE":
if(!Is_Date(Value))
{
return false;
}
break;
case "YEAR":
if(!Is_Year(Value))
{
return false;
}
break;
case "MONTH":
if(!Is_Month(Value))
{
return false;
}
break;
case "DAY":
if(!Is_Day(Value))
{
return false;
}
break;
case "TIME":
if(!Is_Time(Value))
{
return false;
}
break;
case "HOUR":
if(!Is_Houre(Value))
{
return false;
}
break;
case "MINUTE":
if(!Is_Minute(Value))
{
return false;
}
break;
case "SECOND":
if(!Is_Second(Value))
{
return false;
}
break;
}
return true;
}
else
{
return false;
}
}
//------------------------------------------------------------------------------------------------------------
