PK
94oɾ content/informenter/contents.rdf
chrome://informenter/content/informenter.xul
chrome://informenter/content/informenter.xul
PK
j5G5. 5. ! content/informenter/ife_common.js// global variables ------------------------------------------------------------
var ife_Preferences = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
var ife_FormHistory = 0;
if ("nsIFormHistory" in Components.interfaces)
ife_FormHistory = Components.classes["@mozilla.org/satchel/form-history;1"].getService(Components.interfaces.nsIFormHistory);
if ("nsIFormHistory2" in Components.interfaces)
ife_FormHistory = Components.classes["@mozilla.org/satchel/form-history;1"].getService(Components.interfaces.nsIFormHistory2);
var ife_On = ife_GetPrefInt("InFormEnter.On", 1);
var ife_OptionsPlacement = ife_GetPrefInt("InFormEnter.OptionsPlacement", 0);
var ife_MarkerRightClick = ife_GetPrefInt("InFormEnter.MarkerRightClick", 0);
var ife_MarkersMode = ife_GetPrefInt("InFormEnter.MarkersMode", 1);
var ife_ColorizeItems = ife_GetPrefInt("InFormEnter.ColorizeItems2", 0);
var ife_MenuSet = "";
var ife_MenuSetDefault = "";
var ife_MenuItemsCount = 0;
// dummy debug dump ------------------------------------------------------------------
function ddd(msg) {
var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
.getService(Components.interfaces.nsIConsoleService);
consoleService.logStringMessage("_" + msg + "_");
}
//------------------------------------------------------------------------------
function ife_GetPrefInt(prefName, prefDefault)
{
if (!ife_Preferences.prefHasUserValue(prefName))
ife_Preferences.setIntPref(prefName, prefDefault);
return ife_Preferences.getIntPref(prefName);
}
//------------------------------------------------------------------------------
function ife_GetPrefChar(prefName, prefDefault)
{
if (!ife_Preferences.prefHasUserValue(prefName))
ife_Preferences.setCharPref(prefName, prefDefault);
return ife_Preferences.getCharPref(prefName);
}
//------------------------------------------------------------------------------
function ife_GetPropStr(id)
{
var ife_strings = document.getElementById("ife_sb");
return ife_strings.getString (id);
}
//------------------------------------------------------------------------------
function ife_CheckDefaultProfile()
{
var ife_strings = document.getElementById("ife_sb");
ife_MenuSetDefault = "";
for (var s=1; s<=8; s++)
ife_MenuSetDefault += (ife_strings.getString ("ife.default.line."+s) + "\n");
ife_MenuSet = ife_GetPrefChar("InFormEnter.1.MenuSet", ife_MenuSetDefault);
ife_GetPrefChar("InFormEnter.Profiles", ife_strings.getString ("ife.default.profile") + "\t1");
ife_GetPrefInt("InFormEnter.ProfileCurrent", 1);
ife_GetPrefInt("InFormEnter.ProfileNext", 2);
}
//------------------------------------------------------------------------------
function ife_RandInt()
{
return Math.round (Math.random()*10000);
}
//------------------------------------------------------------------------------
function ife_RandChar()
{
var x, y;
x = ife_RandInt() % 3;
if (x == 2)
y = 48 + (ife_RandInt() % 10);
if (x == 1)
y = 97 + (ife_RandInt() % 26);
if (x == 0)
y = 65 + (ife_RandInt() % 26);
return String.fromCharCode(y);
}
//------------------------------------------------------------------------------
function ife_HideSharp(str)
{
str = str.replace(/##/g, "\t");
return str;
}
//------------------------------------------------------------------------------
function ife_UnhideSharp(str)
{
str = str.replace(/\t/g, "#");
return str;
}
//------------------------------------------------------------------------------
function ife_HideAt(str)
{
str = str.replace(/@@/g, "\n");
return str;
}
//------------------------------------------------------------------------------
function ife_UnhideAt(str)
{
str = str.replace(/\n/g, "@@");
return str;
}
//------------------------------------------------------------------------------
function ife_GetElementXY (element)
{
var offsetLeft = 0;
var offsetTop = 0;
while (element)
{
offsetLeft += element.offsetLeft;
offsetTop += element.offsetTop;
element = element.offsetParent;
}
if (navigator.userAgent.indexOf("Mac") != -1 && typeof document.body.leftMargin != "undefined")
{
offsetLeft += document.body.leftMargin;
offsetTop += document.body.topMargin;
}
return {x:offsetLeft, y:offsetTop};
}
//------------------------------------------------------------------------------
function ife_GetClientX (element)
{
var result = 0;
if (element.offsetParent != null)
result = ife_GetClientX (element.offsetParent);
result += element.offsetLeft;
return result;
}
//------------------------------------------------------------------------------
function ife_GetClientY (element)
{
var result = 0;
if (element.offsetParent != null)
result = ife_GetClientY (element.offsetParent);
result += element.offsetTop;
return result;
}
//------------------------------------------------------------------------------
var ife_LastPassword = "";
function ife_Macro(command, runMode)
{
var result = ife_GetPropStr("ife.msg.macro.text");
var tmp = command.split (":");
if (tmp.length == 1) // macro without params
{
result = ife_GetPropStr("ife.msg.macro.name");
if (tmp[0] == "RLP")
result = ife_LastPassword;
else
if (tmp[0] == "SR")
result = "#SR#";
}
if (tmp.length == 2) // macro with params
{
result = ife_GetPropStr("ife.msg.macro.name");
if (tmp[0] == "GP")
{
result = ife_GetPropStr("ife.msg.macro.arguments");
var param = parseInt (tmp[1]);
if (param > 0 && param < 33)
{
result = "";
var i=0;
do
{
result += ife_RandChar();
i++;
}while(i maxLength)
{
var sepText = "[...]"; // must be shorter maxLength
var pos1 = (maxLength-sepText.length)/2;
textShort = menu_name.substring(0, pos1);
textShort += sepText;
var pos2 = menu_name.length-pos1;
textShort += menu_name.substring(pos2);
}
return textShort;
}
//------------------------------------------------------------------------------
function ife_IsStrInFormCache(inputName, str)
{
if(ife_FormHistory && ife_On && ife_ColorizeItems)
return ife_FormHistory.entryExists(inputName, str);
return false;
}
//------------------------------------------------------------------------------
function ife_ParseMenuLine(line)
{
var menu_name = "";
var menu_value = "";
if (line.length > 0)
{
line = ife_HideSharp(line);
var tmp = line.split ("#");
if (tmp.length > 1)
{
var arraySize = tmp.length;
if (arraySize == 2) // no macros
{
menu_name = ife_UnhideSharp(tmp[1]);
menu_value = ife_HideAt(ife_UnhideSharp(tmp[0]));
}
else
{
menu_name = ife_UnhideSharp(tmp[arraySize-1]);
menu_value = ife_Macro(tmp[arraySize-2], false);
}
}
else
{
menu_name = ife_UnhideSharp(line);
menu_value = ife_HideAt(ife_UnhideSharp(line));
}
}
var result = new Array(menu_name, menu_value);
return result;
}
//------------------------------------------------------------------------------
function ife_GetCurrentProfileItemsCountInFormCache(inputName)
{
var itemsCount = 0;
if(ife_FormHistory && ife_On && ife_ColorizeItems)
{
var profileId = ife_GetPrefInt("InFormEnter.ProfileCurrent", 1);
ife_MenuSet = ife_GetPrefChar("InFormEnter."+profileId+".MenuSet", "");
var menuTextItems = unescape(ife_MenuSet).split("\n");
var lines_count = menuTextItems.length;
for (var i=0; i