Added the ViciDial Web Dial Firefox web browser plugin, that allows right-click selection dialing of phone numbers on web pages to a logged-in ViciDial Agent session.

git-svn-id: svn://192.168.202.10@1536 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
mattf
2010-10-08 19:54:03 +00:00
parent d5e2db78e1
commit 1e18ecc983
22 changed files with 541 additions and 0 deletions
@@ -0,0 +1,42 @@
ViciDial Web Dial Firefox Plugin 2010-10-08
This is an XPI-type plugin for Firefox web browsers that allows you to highlight
on a phone number on a web page and right-click to dial that phone number
through an agent session in ViciDial.
The right-click menu also allows you to login to the ViciDial agent interface.
There is also an input form in the bottom right corner of your Firefox web
browser that you can put a phone number into and click to dial.
This has been tested on Firefox version 3.0 and higher only.
To install this plugin, just open the vicidial_webdial_plugin.xpi file with
Firefox and it will ask you if you want to install ViciDial Web Dial. Click OK
and then you will be prompted to restart Firefox. The plugin will not function
until you restart Firefox.
For Configuration, you need to fill in the following fields:
Web Connection Info:
ViciDial API URL: example- http://server/agc/api.php
(The agent API url)
ViciDial AGC URL: example- http://server/agc/vicidial.php
(The agent web interface)
User Connection Info: (what the agent would use to login to ViciDial)
Campaign:
Phone Login:
Phone Password:
User:
Passwd:
Your System Settings must have Agent API enabled.
Your user must have API enabled.
NOTE: If for any reason you want to wipe all traces of this plugin from your
system, first uninstall the plugin, then close Firefox, then erase the
associated preferences in the prefs.js file for that Firefox profile (This is
in different places depending on the version of Firefox and your Operating
System).
@@ -0,0 +1,7 @@
content viciwebdial chrome/content/
skin viciwebdial classic/1.0 chrome/skin/
locale viciwebdial en-US chrome/locale/en-US/
overlay chrome://browser/content/browser.xul chrome://viciwebdial/content/vwd-overlay.xul
style chrome://global/content/customizeToolbar.xul chrome://viciwebdial/skin/overlay.css
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<!DOCTYPE dialog SYSTEM "chrome://viciwebdial/locale/about.dtd">
<dialog title="&about; ViciDial-Web-Dial" orient="vertical" autostretch="always" onload="sizeToContent()" buttons="accept" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="viciwebdial-about">
<groupbox align="center" orient="horizontal">
<vbox>
<text value="ViciDial-Web-Dial" style="font-weight: bold; font-size: x-large;"/>
<text value="&version; 1.0"/>
<separator class="thin"/>
<text value="&createdBy;" style="font-weight: bold;"/>
<text value="Joseph Johnson"/>
<text value="Email: joej@vicidial.com"/>
<separator class="thin"/>
</vbox>
</groupbox>
</dialog>
@@ -0,0 +1,3 @@
function ShowWarning() {
var VWDalert=window.arguments[1];
}
@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<!DOCTYPE prefwindow SYSTEM "chrome://viciwebdial/locale/options.dtd">
<prefwindow id="viciwebdial-preferences" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="&prefwindow.title;" onload="ShowWarning();">
<script type="application/javascript" src="options.js"/>
<prefpane id="pane1" label="&pane1.title;" image="chrome://viciwebdial/skin/connection_icon.jpg">
<preferences>
<preference id="viciwebdial_autoconnect1" name="extensions.viciwebdial.viciwebdial_autoconnect" type="bool"/>
<preference id="viciwebdial_URL1" name="extensions.viciwebdial.viciwebdial_URL" type="string"/>
<preference id="viciwebdial_AGC1" name="extensions.viciwebdial.viciwebdial_AGC" type="string"/>
<preference id="stringpref1" name="extensions.viciwebdial.stringpref" type="string"/> <!-- note that this is only an ASCII string - use unichar for unicode strings -->
</preferences>
<groupbox align="start">
<grid>
<rows>
<row>
<separator class="thin"/>
</row>
<row align="start">
<label control="textviciwebdial_URL">&viciwebdial_URL.label;</label><textbox id="textviciwebdial_URL" preference="viciwebdial_URL1" size="30" maxlength="100"/>
</row>
<row align="start">
<label control="textviciwebdial_AGC">&viciwebdial_AGC.label;</label><textbox id="textviciwebdial_AGC" preference="viciwebdial_AGC1" size="30" maxlength="100"/>
</row>
<row align="start">
<checkbox id="viciwebdial_autoconnect" preference="viciwebdial_autoconnect1" label="&viciwebdial_autoconnect.label;"/>
</row>
<row align="start">
<label control="textviciwebdial_warning">&viciwebdial_acwarning.label;</label>
</row>
</rows>
</grid>
</groupbox>
</prefpane>
<prefpane id="viciwebdial_call_pane" label="&viciwebdial_call_pane.title;" image="chrome://viciwebdial/skin/phone_icon.jpg">
<preferences>
<preference id="viciwebdial_campaign1" name="extensions.viciwebdial.viciwebdial_campaign" type="string"/>
<preference id="viciwebdial_phonelogin1" name="extensions.viciwebdial.viciwebdial_phonelogin" type="string"/>
<preference id="viciwebdial_phonepwd1" name="extensions.viciwebdial.viciwebdial_phonepwd" type="string"/>
<preference id="viciwebdial_user1" name="extensions.viciwebdial.viciwebdial_user" type="string"/>
<preference id="viciwebdial_pwd1" name="extensions.viciwebdial.viciwebdial_pwd" type="string"/>
</preferences>
<groupbox align="start">
<grid>
<rows>
<row>
<separator class="thin"/>
</row>
<row align="start">
<label control="textviciwebdial_campaign">&viciwebdial_campaign.label;</label><textbox id="textviciwebdial_campaign" preference="viciwebdial_campaign1" size="15" maxlength="100"/>
</row>
<row align="start">
<label control="textviciwebdial_phonelogin">&viciwebdial_phonelogin.label;</label><textbox id="textviciwebdial_phonelogin" preference="viciwebdial_phonelogin1" size="15"/>
</row>
<row align="start">
<label control="textviciwebdial_phonepwd">&viciwebdial_phonepwd.label;</label><textbox id="textviciwebdial_phonepwd" preference="viciwebdial_phonepwd1" size="5" maxlength="10" type="password"/>
</row>
<row align="start">
<label control="textviciwebdial_user">&viciwebdial_user.label;</label><textbox id="textviciwebdial_user" preference="viciwebdial_user1" size="10" maxlength="20"/>
</row>
<row align="start">
<label control="textviciwebdial_pwd">&viciwebdial_pwd.label;</label><textbox id="textviciwebdial_pwd" preference="viciwebdial_pwd1" size="10" maxlength="20" type="password"/>
</row>
</rows>
</grid>
</groupbox>
</prefpane>
</prefwindow>
@@ -0,0 +1,17 @@
var viciwebdial = {
onLoad: function() {
this.initialized = true;
this.strings = document.getElementById("viciwebdial-strings");
},
onMenuItemCommand: function(e) {
var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"]
.getService(Components.interfaces.nsIPromptService);
promptService.alert(window, this.strings.getString("helloMessageTitle"),
this.strings.getString("helloMessage"));
},
onToolbarButtonCommand: function(e) {
viciwebdial.onMenuItemCommand(e);
}
};
@@ -0,0 +1,215 @@
// Constant variables for VICIWebDial
var PhonePattern = /(\+[0-9]{1,3})?[^+]?([0-9]+[^+]{0,2})+[0-9]+/ ;
var gPrefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
if (gPrefs.prefHasUserValue("extensions.viciwebdial.viciwebdial_phonelogin")) {
var phonelogin = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_phonelogin");
var phonepwd = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_phonepwd");
var VWD_user = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_user");
var VWD_pwd = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_pwd");
var VWD_URL = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_URL");
var VWD_AGC = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_AGC");
var VWD_campaign = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_campaign");
var VWD_ac = gPrefs.getBoolPref("extensions.viciwebdial.viciwebdial_autoconnect");
} else {
gPrefs.setCharPref("extensions.viciwebdial.viciwebdial_phonelogin", "");
gPrefs.setCharPref("extensions.viciwebdial.viciwebdial_phonepwd", "");
gPrefs.setCharPref("extensions.viciwebdial.viciwebdial_user", "");
gPrefs.setCharPref("extensions.viciwebdial.viciwebdial_pwd", "");
gPrefs.setCharPref("extensions.viciwebdial.viciwebdial_URL", "");
gPrefs.setCharPref("extensions.viciwebdial.viciwebdial_AGC", "");
gPrefs.setCharPref("extensions.viciwebdial.viciwebdial_campaign", "");
gPrefs.setBoolPref("extensions.viciwebdial.viciwebdial_autoconnect", false);
if (confirm("Thank you for installing ViciDial-Web-Dial!!\n\nBefore you begin using it, please set your connection preferences in the preferences window.")) {
openVWDOptionsWindow();
}
}
var highlightedPhone="";
var AutoConnectAttempts=0;
function getPropertiesValues()
{
return document.getElementById('viciwebdial-strings');
}
window.addEventListener("load", function () { gBrowser.addEventListener("load",VWDAutoConnect,true); }, false);
if( window.getBrowser ) {
window.getBrowser().addEventListener("load", VWDload, true);
}
function VWDload(event) {
if(document.getElementById("contentAreaContextMenu"))
{
document.getElementById("contentAreaContextMenu").addEventListener("popupshowing", ParsePhone, true);
}
}
function ParsePhone() {
var highlightedPhone = getBrowserSelection().replace(/[^0-9]/g,'');
var phoneStr=highlightedPhone;
if (highlightedPhone.length>0) {
document.getElementById('viciwebdial-phone-textbox').value=highlightedPhone;
if (highlightedPhone.length>=6) {
if (highlightedPhone.length==7) {
var phoneStr=highlightedPhone.substr(0,3)+"-"+highlightedPhone.substr(3);
} else if (phoneStr.length==10) {
var phoneStr=highlightedPhone.substr(0,3)+"-"+highlightedPhone.substr(3,3)+"-"+highlightedPhone.substr(6);
}
}
}
var menuitem=document.getElementById('context-viciwebdial');
if (phoneStr.length==0 && document.getElementById('viciwebdial-phone-textbox').value.length==0) {
phoneStr="";
menuitem.disabled=true;
} else {
menuitem.disabled=false;
}
menuitem.label=getPropertiesValues().getString("menu_dial")+" "+document.getElementById('viciwebdial-phone-textbox').value;
}
function VICIWebDialPlaceCall()
{
var highlightedPhone=document.getElementById('viciwebdial-phone-textbox').value;
PlaceCall(highlightedPhone, 'DIAL');
}
function PlaceCall(phone_number, VWD_action) {
var alert_msg="";
GetVWDOptionVariables();
if (!phonelogin || phonelogin.length==0) {alert_msg+=" - Phone login not set.\n";}
if (!phonepwd || phonepwd.length==0) {alert_msg+=" - Phone password not set.\n";}
if (!VWD_user || VWD_user.length==0) {alert_msg+=" - User login not set.\n";}
if (!VWD_pwd || VWD_pwd.length==0) {alert_msg+=" - User password not set.\n";}
if (!VWD_URL || VWD_URL.length==0) {alert_msg+=" - Vicidial api.php URL not set.\n";}
if (alert_msg.length>0) {
if (confirm("There are problems with your preference settings:\n\n"+alert_msg+"\nPlease open the ViciDial-web-dial preferences window and make the necessary changes.")) {
openVWDOptionsWindow();
}
return false;
}
var phone_number = document.getElementById('viciwebdial-phone-textbox').value;
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
if (xmlhttp) {
var vicidial_query="&source=VWD&value="+phone_number+"&function=external_dial&preview=NO&search=YES&focus=YES&user="+VWD_user+"&agent_user="+VWD_user+"&pass="+VWD_pwd;
xmlhttp.open('POST', VWD_URL);
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
xmlhttp.send(vicidial_query);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
var VDrslt = null;
VDrslt = xmlhttp.responseText;
var VWD_errcheck=VDrslt.match(/^SUCCESS/);
if (!VWD_errcheck) {alert(VDrslt);}
}
}
delete xmlhttp;
}
}
function VWDSetMenuValues(menuStr) {
var menuitem=document.getElementById('connect-viciwebdial');
menuitem.label=getPropertiesValues().getString(menuStr);
}
function openVWDOptionsWindow(optionsTitle) {
var windows = Components.classes['@mozilla.org/appshell/window-mediator;1']
.getService(Components.interfaces.nsIWindowMediator)
.getEnumerator(null);
while (windows.hasMoreElements())
{
var win = windows.getNext();
if (win.document.documentURI == "chrome://viciwebdial/content/options.xul")
{
win.focus();
return;
}
}
window.openDialog("chrome://viciwebdial/content/options.xul",
"viciwebdial-preferences",
"chrome,titlebar,toolbar,centerscreen,modal",
null,
optionsTitle);
}
function openVWDAboutWindow() {
var windows = Components.classes['@mozilla.org/appshell/window-mediator;1']
.getService(Components.interfaces.nsIWindowMediator)
.getEnumerator(null);
while (windows.hasMoreElements())
{
var win = windows.getNext();
if (win.document.documentURI == "chrome://viciwebdial/content/about.xul")
{
win.focus();
return;
}
}
window.openDialog(
"chrome://viciwebdial/content/about.xul",
"viciwebdial-about",
"chrome,centerscreen,modal",
null);
}
function VWDAutoConnect() {
if (VWD_ac) {
if (AutoConnectAttempts==0) {
VWDConnect("Connect to Vicidial");
}
AutoConnectAttempts++;
}
}
function VWDConnect(VWD_action) {
GetVWDOptionVariables();
var alert_msg="";
if (!VWD_AGC || VWD_AGC.length==0) {alert_msg+=" - Vicidial AGC URL not set.\n";}
if (!phonelogin || phonelogin.length==0) {alert_msg+=" - Phone login not set.\n";}
if (!phonepwd || phonepwd.length==0) {alert_msg+=" - Phone password not set.\n";}
if (!VWD_user || VWD_user.length==0) {alert_msg+=" - User login not set.\n";}
if (!VWD_pwd || VWD_pwd.length==0) {alert_msg+=" - User password not set.\n";}
if (!VWD_URL || VWD_URL.length==0) {alert_msg+=" - Vicidial api.php URL not set.\n";}
if (alert_msg.length>0) {
if (confirm("There are problems with your preference settings:\n\n"+alert_msg+"\nPlease open the ViciDial-web-dial preferences window and make the necessary changes.")) {
openVWDOptionsWindow();
}
return false;
}
if (VWD_action=="Connect to Vicidial") {
var URL=VWD_AGC+"?phone_login="+phonelogin+"&phone_pass="+phonepwd+"&VD_login="+VWD_user+"&VD_pass="+VWD_pwd+"&VD_campaign="+VWD_campaign+"&SUBMIT=SUBMIT"
content.wrappedJSObject.location=URL;
}
}
function GetVWDOptionVariables() {
gPrefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
phonelogin = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_phonelogin");
phonepwd = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_phonepwd");
VWD_user = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_user");
VWD_pwd = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_pwd");
VWD_URL = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_URL");
VWD_AGC = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_AGC");
VWD_campaign = gPrefs.getCharPref("extensions.viciwebdial.viciwebdial_campaign");
}
@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="chrome://viciwebdial/skin/overlay.css" type="text/css"?>
<!DOCTYPE overlay SYSTEM "chrome://viciwebdial/locale/overlay.dtd">
<overlay id="viciwebdial-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script src="overlay.js"/>
<script src="vwd-overlay.js"/>
<stringbundleset id="stringbundleset">
<stringbundle id="viciwebdial-strings" src="chrome://viciwebdial/locale/overlay.properties"/>
</stringbundleset>
<!-- RIGHT-CLICK...VERY IMPORTANT! //-->
<popup id="contentAreaContextMenu">
<menuitem id="context-viciwebdial" label="&viciwebdialContext.label;"
accesskey="&viciwebdialContext.accesskey;"
insertafter="context-viewinfo"
oncommand="PlaceCall();"
disabled="true"/>
<menuitem id="connect-viciwebdial" label="&vwdmenu.connect;"
insertafter="context-viciwebdial"
style="color: #FF0000;"
oncommand="VWDConnect(this.label);"/>
<menuitem id="preferences-viciwebdial" label="&viciwebdialPreferences.label;"
accesskey="&viciwebdialContext.accesskey;"
insertafter="connect-viciwebdial"
style="color: #FF0000;"
oncommand="openVWDOptionsWindow();"/>
<menuitem id="about-viciwebdial" label="&viciwebdialAbout.label;"
accesskey="&viciwebdialContext.accesskey;"
insertafter="preferences-viciwebdial"
style="color: #FF0000;"
oncommand="openVWDAboutWindow();"/>
</popup>
<statusbar id="status-bar">
<statusbarpanel id="my-panel" label="&viciwebdialStatusbar.label;" tooltiptext="Status bar control panel for VICIWebDial">
<image id="viciwebdial-status-icon" src="chrome://viciwebdial/skin/vicidial_logo.png" tooltiptext="VICI Web Dial"
onmousedown="openVWDOptionsWindow();" hidden="false" />
<textbox id="viciwebdial-phone-textbox" type="search" empty="true" emptytext="&viciwebdialPhoneField.label;" size="12" command="cmd_statusdial" searchbutton="false" hidden="false" />
<image id="viciwebdial-dial-button" src="chrome://viciwebdial/skin/dial_button.gif" tooltiptext="VICI Web Dial"
onmousedown="VICIWebDialPlaceCall();" hidden="false"/>
</statusbarpanel>
</statusbar>
<toolbarpalette id="BrowserToolbarPalette">
<toolbarbutton id="viciwebdial-toolbar-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
label="&viciwebdialToolbarButton.label;" tooltiptext="&viciwebdialToolbarButton.tooltip;"
oncommand="viciwebdial.onToolbarButtonCommand()"/>
</toolbarpalette>
</overlay>
@@ -0,0 +1,4 @@
<!ENTITY about "About">
<!ENTITY version "Version:">
<!ENTITY createdBy "Created By:">
<!ENTITY homepage "Home Page:">
@@ -0,0 +1,21 @@
<!ENTITY prefwindow.title "ViciDial-Web-Dial preferences">
<!ENTITY pane1.title "Web connection info">
<!ENTITY viciwebdial_call_pane.title "User connection info">
<!ENTITY viciwebdial_autoconnect.label "Auto-connect">
<!ENTITY viciwebdial_acwarning.label "(experts only)">
<!ENTITY viciwebdial_autoconnect.accesskey "B">
<!ENTITY viciwebdial_URL.label "ViciDial API URL: ">
<!ENTITY viciwebdial_AGC.label "ViciDial AGC URL: ">
<!ENTITY viciwebdial_campaign.label "Campaign: ">
<!ENTITY viciwebdial_host.label "DB Host: ">
<!ENTITY viciwebdial_port.label "DB Port: ">
<!ENTITY viciwebdial_phonelogin.label "Phone login: ">
<!ENTITY viciwebdial_phonepwd.label "Phone passwd: ">
<!ENTITY viciwebdial_user.label "User: ">
<!ENTITY viciwebdial_pwd.label "Passwd: ">
<!ENTITY viciwebdial_port.accesskey "I">
<!ENTITY viciwebdial_calloverride.label "Override codes if in database">
<!ENTITY viciwebdial_phonecode.label "Phone prefix">
<!ENTITY viciwebdial_countrycode.label "Country code">
<!ENTITY stringpref.label "A String Preference">
<!ENTITY stringpref.accesskey "S">
@@ -0,0 +1,26 @@
<!ENTITY viciwebdial.label "Your localized menuitem">
<!ENTITY viciwebdialContext.label "Dial: ">
<!ENTITY viciwebdialContext.accesskey "D">
<!ENTITY viciwebdialPreferences.label "Change ViciDial-Web-Dial Preferences: ">
<!ENTITY viciwebdialPreferences.accesskey "P">
<!ENTITY viciwebdialAbout.label "About ViciDial-Web-Dial...">
<!ENTITY viciwebdialToolbarButton.label "Your Toolbar Button">
<!ENTITY viciwebdialToolbarButton.tooltip "This is your toolbar button!">
<!ENTITY viciwebdialSidebar.label "Your Sidebar">
<!ENTITY viciwebdialPhoneField.label "Phone Number">
<!ENTITY viciwebdialStatusbar.label "ViciDialWebDial - put fields here">
<!ENTITY viciwebdialToolbar.name "This should not be seen">
<!ENTITY viciwebdialToolbar.label "This is an example toolbar. You can hide it under View &gt; toolbars &gt; &viciwebdialToolbar.name;">
<!-- Context Menu -->
<!ENTITY vwdmenu.call "Call: ">
<!ENTITY vwdmenu.editcall "Edit&amp;Call: ">
<!ENTITY vwdmenu.callKey "c">
<!ENTITY vwdmenu.editcallKey "e">
<!ENTITY vwdmenu.connect "Connect to Vicidial">
<!ENTITY vwdmenu.disconnect "Disconnect">
<!ENTITY vwdmenu.about "About">
<!ENTITY vwdmenu.options "Options">
<!ENTITY vwdmenu.optionsLong "Open options window">
@@ -0,0 +1,7 @@
helloMessage=Welcome to ViciDialWebDial
helloMessageTitle=ViciDialWebdial 1.0 beta
prefMessage=Int Pref Value: %d
extensions.joejohn@viciwebdial.com.description=Allows dialing phone numbers off a web page through ViciDial
menu_dial=Dial:
VWDConnect=Connect to ViciDial
VWDDisconnect=Logout from ViciDial
Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

@@ -0,0 +1,22 @@
/* This is just an example. You shouldn't do this. */
#viciwebdial-hello
{
color: red ! important;
}
#viciwebdial-toolbar-button
{
list-style-image: url("chrome://viciwebdial/skin/toolbar-button.png");
-moz-image-region: rect(0px 24px 24px 0px);
}
#viciwebdial-toolbar-button:hover
{
-moz-image-region: rect(24px 24px 48px 0px);
}
[iconsize="small"] #viciwebdial-toolbar-button
{
-moz-image-region: rect( 0px 40px 16px 24px);
}
[iconsize="small"] #viciwebdial-toolbar-button:hover
{
-moz-image-region: rect(24px 40px 40px 24px);
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

@@ -0,0 +1,6 @@
pref("extensions.viciwebdial.boolpref", false);
pref("extensions.viciwebdial.intpref", 0);
pref("extensions.viciwebdial.stringpref", "A string");
// https://developer.mozilla.org/en/Localizing_extension_descriptions
pref("extensions.joejohn@viciwebdial.com.description", "chrome://viciwebdial/locale/overlay.properties");
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
<Description about="urn:mozilla:install-manifest">
<em:id>joejohn@viciwebdial.com</em:id>
<em:type>2</em:type>
<em:name>ViciDial-Web-Dial</em:name>
<em:version>1.0</em:version>
<em:creator>Joseph Johnson</em:creator>
<em:contributor></em:contributor>
<em:description>Allows dialing phone numbers off a web page through ViciDial</em:description>
<em:aboutURL>chrome://viciwebdial/content/about.xul</em:aboutURL>
<em:optionsURL>chrome://viciwebdial/content/options.xul</em:optionsURL>
<em:targetApplication>
<Description>
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <!-- Firefox -->
<em:minVersion>3.0</em:minVersion>
<em:maxVersion>3.9</em:maxVersion>
</Description>
</em:targetApplication>
</Description>
</RDF>
Binary file not shown.