pax_global_header00006660000000000000000000000064117011126300014502gustar00rootroot0000000000000052 comment=a171a622d8d4c14e419d9bf3deef7802b0feb7b0 TBDialOut-1.7.2/000077500000000000000000000000001170111263000133005ustar00rootroot00000000000000TBDialOut-1.7.2/README000066400000000000000000000004721170111263000141630ustar00rootroot00000000000000TBDialOut ========= TBDialOut is a Thunderbird extension that adds buttons and context menu items to the Thunderbird address book that allow a user to set up a call to a contact direct from Thunderbird. To build a .xpi file from this source on Linux, cd into the top directory of the source and run ./build.sh TBDialOut-1.7.2/build.sh000077500000000000000000000075731170111263000147520ustar00rootroot00000000000000#!/bin/bash # build.sh -- builds JAR and XPI files for mozilla extensions # by Nickolay Ponomarev # (original version based on Nathan Yergler's build script) # Most recent version is at # This script assumes the following directory structure: # ./ # chrome.manifest (optional - for newer extensions) # install.rdf # (other files listed in $ROOT_FILES) # # content/ | # locale/ |} these can be named arbitrary and listed in $CHROME_PROVIDERS # skin/ | # # defaults/ | # components/ |} these must be listed in $ROOT_DIRS in order to be packaged # ... | # # It uses a temporary directory ./build when building; don't use that! # Script's output is: # ./$APP_NAME.xpi # ./$APP_NAME.jar (only if $KEEP_JAR=1) # ./files -- the list of packaged files # # Note: It modifies chrome.manifest when packaging so that it points to # chrome/$APP_NAME.jar!/* # # default configuration file is ./config_build.sh, unless another file is # specified in command-line. Available config variables: APP_NAME= # short-name, jar and xpi files name. Must be lowercase with no spaces CHROME_PROVIDERS= # which chrome providers we have (space-separated list) CLEAN_UP= # delete the jar / "files" when done? (1/0) ROOT_FILES= # put these files in root of xpi (space separated list of leaf filenames) ROOT_DIRS= # ...and these directories (space separated list) BEFORE_BUILD= # run this before building (bash command) AFTER_BUILD= # ...and this after the build (bash command) if [ -z $1 ]; then . ./config_build.sh else . $1 fi if [ -z $APP_NAME ]; then echo "You need to create build config file first!" echo "Read comments at the beginning of this script for more info." exit; fi ROOT_DIR=`pwd` TMP_DIR=build #uncomment to debug #set -x # remove any left-over files from previous build rm -f $APP_NAME.jar $APP_NAME.xpi files rm -rf $TMP_DIR $BEFORE_BUILD mkdir --parents --verbose $TMP_DIR/chrome # generate the JAR file, excluding CVS and temporary files JAR_FILE=$TMP_DIR/chrome/$APP_NAME.jar echo "Generating $JAR_FILE..." for CHROME_SUBDIR in $CHROME_PROVIDERS; do find $CHROME_SUBDIR -path '*CVS*' -prune -o -type f -print | grep -v \~ >> files done zip -0 -r $JAR_FILE `cat files` # The following statement should be used instead if you don't wish to use the JAR file #cp --verbose --parents `cat files` $TMP_DIR/chrome # prepare components and defaults echo "Copying various files to $TMP_DIR folder..." for DIR in $ROOT_DIRS; do mkdir $TMP_DIR/$DIR FILES="`find $DIR -path '*CVS*' -prune -o -type f -print | grep -v \~`" echo $FILES >> files cp --verbose --parents $FILES $TMP_DIR done # Copy other files to the root of future XPI. for ROOT_FILE in $ROOT_FILES install.rdf chrome.manifest; do cp --verbose $ROOT_FILE $TMP_DIR if [ -f $ROOT_FILE ]; then echo $ROOT_FILE >> files fi done cd $TMP_DIR if [ -f "chrome.manifest" ]; then echo "Preprocessing chrome.manifest..." # You think this is scary? #s/^(content\s+\S*\s+)(\S*\/)$/\1jar:chrome\/$APP_NAME\.jar!\/\2/ #s/^(skin|locale)(\s+\S*\s+\S*\s+)(.*\/)$/\1\2jar:chrome\/$APP_NAME\.jar!\/\3/ # # Then try this! (Same, but with characters escaped for bash :) sed -i -r s/^\(content\\s+\\S*\\s+\)\(\\S*\\/\)$/\\1jar:chrome\\/$APP_NAME\\.jar!\\/\\2/ chrome.manifest sed -i -r s/^\(skin\|locale\)\(\\s+\\S*\\s+\\S*\\s+\)\(.*\\/\)$/\\1\\2jar:chrome\\/$APP_NAME\\.jar!\\/\\3/ chrome.manifest # (it simply adds jar:chrome/whatever.jar!/ at appropriate positions of chrome.manifest) fi # generate the XPI file echo "Generating $APP_NAME.xpi..." zip -r ../$APP_NAME.xpi * cd "$ROOT_DIR" echo "Cleanup..." if [ $CLEAN_UP = 0 ]; then # save the jar file mv $TMP_DIR/chrome/$APP_NAME.jar . else rm ./files fi # remove the working files rm -rf $TMP_DIR echo "Done!" $AFTER_BUILD TBDialOut-1.7.2/chrome.manifest000066400000000000000000000011301170111263000163000ustar00rootroot00000000000000content tbdialout content/ locale tbdialout en-US locale/en-US/ locale tbdialout en-GB locale/en-GB/ locale tbdialout de locale/de/ locale tbdialout es-ES locale/es-ES/ locale tbdialout zh-CN locale/zh-CN/ locale tbdialout nl locale/nl/ locale tbdialout fr locale/fr/ locale tbdialout sv-SE locale/sv-SE/ locale tbdialout it locale/it/ locale tbdialout ru locale/ru/ skin tbdialout classic/1.0 skin/ overlay chrome://messenger/content/addressbook/addressbook.xul chrome://tbdialout/content/thunderbirdOverlay.xul style chrome://global/content/customizeToolbar.xul chrome://tbdialout/skin/overlay.css TBDialOut-1.7.2/config_build.sh000066400000000000000000000002511170111263000162560ustar00rootroot00000000000000#!/bin/bash # Build config for build.sh APP_NAME=tbdialout CHROME_PROVIDERS="content locale skin" CLEAN_UP=1 ROOT_FILES= ROOT_DIRS="defaults" BEFORE_BUILD= AFTER_BUILD= TBDialOut-1.7.2/content/000077500000000000000000000000001170111263000147525ustar00rootroot00000000000000TBDialOut-1.7.2/content/loading.xul000066400000000000000000000007501170111263000171230ustar00rootroot00000000000000 TBDialOut-1.7.2/content/options.js000066400000000000000000000114151170111263000170050ustar00rootroot00000000000000/****** BEGIN LICENSE BLOCK ***** * Version: MPL 1.1/GPL 2.0/LGPL 2.1 * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License * for the specific language governing rights and limitations under the * License. * * The Original Code is TBDialOut. * * The Initial Developer of the Original Code is * Chris Hastie http://www.oak-wood.co.uk * Portions created by the Initial Developer are Copyright (C) 2010 * the Initial Developer. All Rights Reserved. * * TBDialOut was inspired by VOIP3 Dialer by MSelector, although the code * has largely been rewritten. http://www.mselector.com * * Contributor(s): * * Alternatively, the contents of this file may be used under the terms of * either the GNU General Public License Version 2 or later (the "GPL"), or * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), * in which case the provisions of the GPL or the LGPL are applicable instead * of those above. If you wish to allow use of your version of this file only * under the terms of either the GPL or the LGPL, and not to allow others to * use your version of this file under the terms of the MPL, indicate your * decision by deleting the provisions above and replace them with the notice * and other provisions required by the GPL or the LGPL. If you do not delete * the provisions above, a recipient may use your version of this file under * the terms of any one of the MPL, the GPL or the LGPL. * * ***** END LICENSE BLOCK ***** */ var tbdialoutprefs = { onLoad: function() { this.setCustomOptViz(); this.setCustomAuthViz(); this.prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService) .getBranch("extensions.tbdialout."); var passmigrated = this.prefs.getBoolPref("passmigrated"); if (!passmigrated) { tbdialoututils.migratePass(); } this.retrievePasswords(); }, setCustomOptViz: function () { var custom_elements = document.getElementsByClassName("tbdocustomoptions"); var ami_elements = document.getElementsByClassName("tbdoamioptions"); var idx; for (idx in custom_elements) { if (document.getElementById("proto_menu").value == 'custom') { custom_elements[idx].disabled = false; } else { custom_elements[idx].disabled = true; } } for (idx in ami_elements) { if (document.getElementById("proto_menu").value == 'asteriskami') { ami_elements[idx].disabled = false; } else { ami_elements[idx].disabled = true; } } }, setCustomAuthViz: function () { if (document.getElementById("proto_menu").value == 'custom') { var custom_auth_elements = new Array(); custom_auth_elements.push(document.getElementById("customuser_text")); custom_auth_elements.push(document.getElementById("custompass_text")); var loadhidden = document.getElementById("custominbackground_cb").checked; var idx; for (idx in custom_auth_elements) { if (loadhidden) { custom_auth_elements[idx].disabled = false; } else { custom_auth_elements[idx].disabled = true; } } var prefs = Components.classes["@mozilla.org/preferences-service;1"] .getService(Components.interfaces.nsIPrefService) .getBranch("extensions.tbdialout."); prefs.setBoolPref("custominbackground", loadhidden); } }, openHelp: function () { var helpurl = "http://www.oak-wood.co.uk/oss/tbdialout/confighelp"; var click_re = "^http://www.oak-wood.co.uk/"; tbdialoututils.openInTab(helpurl, click_re); }, openPassWarn: function () { var warnurl = "chrome://tbdialout/content/passwarn.xul"; var dialogWin = window.openDialog(warnurl, "tbdo_pass_warn", "width=800px,height=350px"); }, savePasswords: function () { tbdialoututils.logger(5, "tbdialoutprefs.savePasswords called"); var amisecret = document.getElementById("amisecret_text").value; tbdialoututils.setPass('ami.secret', amisecret); var custompass = document.getElementById("custompass_text").value; tbdialoututils.setPass('custompass', custompass); }, retrievePasswords: function () { tbdialoututils.logger(5, "tbdialoutprefs.retrievePasswords called"); document.getElementById("amisecret_text").value = tbdialoututils.getPass('ami.secret'); document.getElementById("custompass_text").value = tbdialoututils.getPass('custompass'); }, }TBDialOut-1.7.2/content/options.xul000066400000000000000000000232001170111263000171740ustar00rootroot00000000000000