@ -0,0 +1,14 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = tab
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.{js,py}]
|
||||
charset = utf-8
|
||||
|
||||
[*.py]
|
||||
indent_style = space
|
||||
indent_size = 4
|
@ -1,11 +1,9 @@
|
||||
wappalyzer-chrome.zip
|
||||
wappalyzer-firefox.xpi
|
||||
wappalyzer.xpi
|
||||
!.gitkeep
|
||||
|
||||
drivers/**/apps.json
|
||||
drivers/**/wappalyzer.js
|
||||
drivers/**/icons/*.png
|
||||
.vagrant
|
||||
|
||||
!.gitkeep
|
||||
build/*
|
||||
|
||||
node_modules/*
|
||||
|
||||
drivers/npm/node_modules/
|
||||
|
@ -0,0 +1,20 @@
|
||||
ENV['VAGRANT_DEFAULT_PROVIDER'] = 'docker'
|
||||
|
||||
SYNCED_FOLDER = "/home/wappalyzer/synced"
|
||||
|
||||
Vagrant.configure("2") do |config|
|
||||
config.vm.synced_folder ".", SYNCED_FOLDER
|
||||
|
||||
config.vm.provider "docker" do |d|
|
||||
d.image = "wappalyzer/dev"
|
||||
d.has_ssh = true
|
||||
d.remains_running = true
|
||||
end
|
||||
|
||||
config.ssh.port = "22"
|
||||
config.ssh.username = "wappalyzer"
|
||||
config.ssh.private_key_path = "docker/insecure.key"
|
||||
|
||||
config.vm.provision "shell", inline: "su - wappalyzer -c 'wappalyzer links'"
|
||||
config.vm.provision "shell", inline: "echo Finished. Run \\`vagrant ssh\\` to access the environment."
|
||||
end
|
@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ -f "$0-$1" ]
|
||||
then
|
||||
$0-$1 ${*:2}
|
||||
else
|
||||
$0-help
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit
|
@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ -z $WAPPALYZER_ROOT ]
|
||||
then
|
||||
echo "\$WAPPALYZER_ROOT not set"
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
wappalyzer validate
|
||||
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo "Build aborted"
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Prettifying apps.json..."
|
||||
|
||||
jsonlint -ist $'\t' $WAPPALYZER_ROOT/src/apps.json
|
||||
|
||||
wappalyzer links
|
||||
|
||||
# Mozilla Firefox
|
||||
echo "Building Firefox driver..."
|
||||
|
||||
cfx xpi --pkgdir=$WAPPALYZER_ROOT/src/drivers/firefox --output-file=$WAPPALYZER_ROOT/build/wappalyzer_firefox.xpi
|
||||
|
||||
# Google Chrome
|
||||
echo "Building Chrome driver..."
|
||||
|
||||
pushd $WAPPALYZER_ROOT/src/drivers/chrome > /dev/null
|
||||
|
||||
zip -qr $WAPPALYZER_ROOT/build/wappalyzer_chrome.zip .
|
||||
|
||||
popd > /dev/null
|
||||
|
||||
# Bookmarklet
|
||||
echo "Building Bookmarklet driver..."
|
||||
|
||||
echo "var json =" > /tmp/bookmarklet
|
||||
|
||||
cat $WAPPALYZER_ROOT/src/apps.json >> /tmp/bookmarklet
|
||||
|
||||
echo -e ";\n\nwappalyzer.apps = json.apps;\nwappalyzer.categories = json.categories;" >> /tmp/bookmarklet
|
||||
|
||||
mv /tmp/bookmarklet $WAPPALYZER_ROOT/src/drivers/bookmarklet/js/apps.js
|
||||
|
||||
echo "Done. Builds have been created in $WAPPALYZER_ROOT/build."
|
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
cat << 'EOF'
|
||||
usage: wappalyzer <command> [<args>]
|
||||
|
||||
The following commands are available:
|
||||
build Package drivers
|
||||
help This help text
|
||||
links Create hard links to shared files in each driver
|
||||
validate Validate apps.json
|
||||
EOF
|
@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
|
||||
path=$1
|
||||
|
||||
if [ -z $path ]
|
||||
then
|
||||
if [ -z $WAPPALYZER_ROOT ]
|
||||
then
|
||||
echo "-$(basename $0): No path specified"
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
path=$WAPPALYZER_ROOT
|
||||
fi
|
||||
|
||||
if [ ! -d $path/src ]
|
||||
then
|
||||
echo "-$(basename $0): Incorrect path"
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
path="$path/src"
|
||||
|
||||
echo "Creating hard links..."
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/firefox/lib
|
||||
ln -f $path/apps.json $path/drivers/firefox/data
|
||||
ln -f $path/icons/*.png $path/drivers/firefox/data/images/icons
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/chrome/js
|
||||
ln -f $path/apps.json $path/drivers/chrome
|
||||
ln -f $path/icons/*.png $path/drivers/chrome/images/icons
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/bookmarklet/js
|
||||
ln -f $path/icons/*.png $path/drivers/bookmarklet/images/icons
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/html/js
|
||||
ln -f $path/apps.json $path/drivers/html
|
||||
ln -f $path/icons/*.png $path/drivers/html/images/icons
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/php/js
|
||||
ln -f $path/apps.json $path/drivers/php
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/python/js
|
||||
ln -f $path/apps.json $path/drivers/python
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/phantomjs
|
||||
ln -f $path/apps.json $path/drivers/phantomjs
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/ruby/js
|
||||
ln -f $path/apps.json $path/drivers/ruby
|
||||
|
||||
ln -f $path/wappalyzer.js $path/drivers/npm
|
||||
ln -f $path/apps.json $path/drivers/npm
|
||||
|
||||
echo "Done"
|
||||
|
||||
exit 0
|
@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
color_ok='\033[1;32m'
|
||||
color_err='\033[0;31m'
|
||||
color_none='\033[0m'
|
||||
|
||||
path=$1
|
||||
|
||||
if [ -z $path ]
|
||||
then
|
||||
if [ -z $WAPPALYZER_ROOT ]
|
||||
then
|
||||
echo "-$(basename $0): No path specified"
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
path=$WAPPALYZER_ROOT
|
||||
fi
|
||||
|
||||
if [ ! -d $path/src ]
|
||||
then
|
||||
echo "-$(basename $0): Incorrect path"
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
path="$path/src"
|
||||
|
||||
echo "Validating apps.json..."
|
||||
|
||||
echo -en "${color_err}"
|
||||
|
||||
jsonlint --quiet -V $WAPPALYZER_ROOT/schema.json $path/apps.json
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
echo -e "${color_ok}Ok${color_none}"
|
||||
|
||||
exit 0
|
||||
else
|
||||
echo -en "${color_none}"
|
||||
|
||||
exit 1
|
||||
fi
|
@ -0,0 +1,63 @@
|
||||
FROM phusion/baseimage
|
||||
MAINTAINER Elbert Alias <elbert@alias.io>
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
# Install packages
|
||||
RUN apt-get update && apt-get install -y curl nodejs npm zip
|
||||
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||
|
||||
RUN ln -s /usr/bin/nodejs /usr/bin/node
|
||||
|
||||
RUN npm install jsonlint -g
|
||||
|
||||
|
||||
# Add user
|
||||
RUN useradd -ms /bin/bash wappalyzer && echo "wappalyzer:wappalyzer" | chpasswd
|
||||
RUN echo 'wappalyzer ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
|
||||
|
||||
WORKDIR /home/wappalyzer
|
||||
|
||||
RUN su wappalyzer -c "mkdir bin synced"
|
||||
|
||||
RUN echo "export WAPPALYZER_ROOT='/home/wappalyzer/synced'" >> /tmp/profile
|
||||
RUN echo "export PATH=$PATH:/home/wappalyzer/bin:\$WAPPALYZER_ROOT/bin" >> /tmp/profile
|
||||
|
||||
RUN cat .profile >> /tmp/profile && mv /tmp/profile .profile
|
||||
|
||||
RUN echo "cd \$WAPPALYZER_ROOT" >> .bashrc
|
||||
RUN echo "wappalyzer" >> .bashrc
|
||||
|
||||
|
||||
# Mozilla Add-on SDK
|
||||
RUN su wappalyzer -c "\
|
||||
mkdir mozilla && \
|
||||
curl -L https://ftp.mozilla.org/pub/mozilla.org/labs/jetpack/jetpack-sdk-latest.tar.gz | tar xvzC mozilla && \
|
||||
ln -s /home/wappalyzer/mozilla/addon-sdk-*/bin/cfx bin/cfx"
|
||||
|
||||
|
||||
# PhantomJS
|
||||
RUN su wappalyzer -c "\
|
||||
mkdir phantomjs && \
|
||||
curl -L https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2 | tar xvjC phantomjs && \
|
||||
ln -s /home/wappalyzer/phantomjs/phantomjs-*-linux-x86_64/bin/phantomjs bin/phantomjs"
|
||||
|
||||
|
||||
# SSH
|
||||
RUN rm -f /etc/service/sshd/down
|
||||
RUN su wappalyzer -c "mkdir .ssh && chmod 700 .ssh"
|
||||
|
||||
ADD insecure.key.pub /tmp/insecure.key.pub
|
||||
|
||||
RUN su wappalyzer -c "cat /tmp/insecure.key.pub >> .ssh/authorized_keys && chmod 600 .ssh/authorized_keys" && rm -f /tmp/insecure.key.pub
|
||||
|
||||
|
||||
# Fix the `stdin: is not a tty` error in Vagrant
|
||||
RUN sed -i 's/^mesg n$/tty -s \&\& mesg n/g' /root/.profile
|
||||
|
||||
|
||||
EXPOSE 22
|
||||
|
||||
RUN echo "/usr/sbin/sshd -D" > /etc/my_init.d/sshd.sh
|
||||
|
||||
CMD ["/sbin/my_init"]
|
@ -0,0 +1,27 @@
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEowIBAAKCAQEAqVo54bv3J4K62IDCUIVY7gF2iBOR8fub5c9t6j4MbsRQDmU0
|
||||
yxhN1+7fMCERcoMSelAb/SYSzKE8azLugP7hsq4t+/xJijCB22uriFhKMpu4ySoA
|
||||
6PVNbfbIptaVo6holVIMRKPXTg1hU6lr2DWMKB5AlGmz7ZHmQgX9iBoV8PmMYOF5
|
||||
UpiwfokcNnIwDiCCpd19G/lT6FlCVZHZdeZh41FWke8oQgWevM8fdGJkZ+a7Lgdm
|
||||
6A3WlvI0AIz9KWfXlXAOvthi4QlB4SvSCwRQbKdHbW5UBRShucjlce3hZO9Q6ROC
|
||||
Ta1zgvscleKd63yHSQ18Z2+j1t5T3HJzhOn1ywIDAQABAoIBAFdbcWwd15oL93Hi
|
||||
yVlbz8nF+2yqG6ilT3+2Bk7EfwlMPreOQTNacB0o3PwosqVNM2Tgme91ilEAAviR
|
||||
JzJnR+kxrArF0vFzoCidW7hTQsLkTOeHwTxp/OzyVgKpwjrPjlMoJafqlA9xG3la
|
||||
dYTr6kZvhISKGgQ8NHhuOp/QRO0uFaQD8l0kVCEufgqbs6gBY7aAkNf2iogSms9w
|
||||
139zwsXeSg2Vm7Img1PVrRsRM5qbTNBMIim+9q4fSrqP+rYF9lU1p68IzmG/wY2o
|
||||
0ElwRoatVVV9Rvk00a1qBGNaT39oVEtryIiAlXPno+KW5dyVx53o9vjWHDz44yBN
|
||||
G8/EgEECgYEA3UJtj5ikEdhquzy1WfbZwZVmTCJLMefiVui00RLV4Q/r/4Uojdsb
|
||||
L/QCAplpbHUrj7O8Lp9CuXSnUNa4CkrTidj2wkDWDFl1EBLJNz1zhJjs6Aaw2u1t
|
||||
SV6ULgx9Y25oiStygkJhon+wlNF9HRSCFeNkBNNjpkD2gEifxnHIDLsCgYEAw/Fi
|
||||
OHFvVPx0/DS3FD/MEJAAZaGdg8Zb2TCmCIVjoj0tZOTDvwKIEYCQ41vADDLlCSGg
|
||||
XOgNXvosSZtezmJxnkzO3NYXE4XZ7bPVMamuqbKXXzaee3tPmiFaeZfiB4tj7uxh
|
||||
tWQdUicSMQ8WPqyTB5wmcF7k3L4TzrjSLOi5MjECgYEAnsLYfI3pREjGpN01v3zp
|
||||
2QbLZVvCGugpN3U4sUBTqW9URn+Ujt0mD+2FN7o+tC0K+czc/ZMXPJ1gpRe87N2u
|
||||
Fh5RSSder3PNFKB2MyXr6rwUWZTbd+ufXGL57mTV3+/MIIjFXIQnLIN1AAOlQ6WA
|
||||
hhYooXHQ8e1xMrFpu+nOwpsCgYAanYEf9ZiPzLL/RxHPOFM5tLW5GFjS+3Cicc87
|
||||
vRKpiPHPkJteKLPe3L3RhDbz8T3XHbAwrnySeBzn6qjYE9snC3vV12bPChFuDk1Z
|
||||
L5lAB7g0ALFKSJepcfpeJdlX+QEcBRPIlc69x/zamRgGb16RXA6EmP8xVMhP/h7e
|
||||
ZsYxIQKBgBqOaZNHwaG6PqP2HCjc1keH4wQVx9eTV5y4/B5FJbMeK05vV2rBHoxA
|
||||
P/dXE85olj8D/9E88xJ1V716kBeONcKFdbd3VfY5bo2VBz+piOaG3EBQOLIbd4/C
|
||||
KVtgOWqI7WTLPIgpXlG5MA801RwhVyk1phmwhvW/Kb3lWsK1vkOe
|
||||
-----END RSA PRIVATE KEY-----
|
@ -0,0 +1 @@
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCpWjnhu/cngrrYgMJQhVjuAXaIE5Hx+5vlz23qPgxuxFAOZTTLGE3X7t8wIRFygxJ6UBv9JhLMoTxrMu6A/uGyri37/EmKMIHba6uIWEoym7jJKgDo9U1t9sim1pWjqGiVUgxEo9dODWFTqWvYNYwoHkCUabPtkeZCBf2IGhXw+Yxg4XlSmLB+iRw2cjAOIIKl3X0b+VPoWUJVkdl15mHjUVaR7yhCBZ68zx90YmRn5rsuB2boDdaW8jQAjP0pZ9eVcA6+2GLhCUHhK9ILBFBsp0dtblQFFKG5yOVx7eFk71DpE4JNrXOC+xyV4p3rfIdJDXxnb6PW3lPccnOE6fXL elbert@home
|
@ -1,9 +0,0 @@
|
||||
content wappalyzer content/
|
||||
locale wappalyzer en-US locale/en-US/
|
||||
locale wappalyzer de-DE locale/de-DE/
|
||||
locale wappalyzer fr-FR locale/fr-FR/
|
||||
locale wappalyzer es-ES locale/es-ES/
|
||||
skin wappalyzer classic/1.0 skin/
|
||||
|
||||
overlay chrome://browser/content/browser.xul chrome://wappalyzer/content/xul/wappalyzer.xul
|
||||
overlay chrome://navigator/content/navigator.xul chrome://wappalyzer/content/xul/wappalyzer.xul
|
@ -1,72 +0,0 @@
|
||||
"use strict";
|
||||
|
||||
(function() {
|
||||
var
|
||||
data = {},
|
||||
lastEnv = [],
|
||||
prefs = sendSyncMessage('wappalyzer', { action: 'get prefs' })[0]
|
||||
;
|
||||
|
||||
addEventListener('DOMContentLoaded', function() {
|
||||
removeEventListener('DOMContentLoaded', onLoad, false);
|
||||
|
||||
onLoad();
|
||||
}, false);
|
||||
|
||||
function onLoad() {
|
||||
if ( content.document.contentType != 'text/html' ) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ( prefs.analyzeJavaScript && prefs.analyzeOnLoad ) {
|
||||
content.document.documentElement.addEventListener('load', function() {
|
||||
var env = Object.keys(content.wrappedJSObject).slice(0, 500);
|
||||
|
||||
lastEnv = env;
|
||||
|
||||
// Only analyze new variables
|
||||
env = { env: env.filter(function(i) { return lastEnv.indexOf(i) === -1; }) };
|
||||
|
||||
if ( env.length ) {
|
||||
sendAsyncMessage('wappalyzer', {
|
||||
action: 'analyze',
|
||||
analyze: { env: env }
|
||||
});
|
||||
}
|
||||
|
||||
env = null;
|
||||
|
||||
removeEventListener('load', onLoad, true);
|
||||
}, true);
|
||||
}
|
||||
|
||||
// HTML
|
||||
var html = content.document.documentElement.outerHTML;
|
||||
|
||||
// Comments outside HTML
|
||||
//if ( content.document.lastChild.nodeType === 8 ) {
|
||||
//content.alert(content.document.lastChild.nodeValue);
|
||||
//}
|
||||
|
||||
if ( html.length > 50000 ) {
|
||||
html = html.substring(0, 25000) + html.substring(html.length - 25000, html.length);
|
||||
}
|
||||
|
||||
data = { html: html };
|
||||
|
||||
if ( prefs.analyzeJavaScript ) {
|
||||
data.env = Object.keys(content.wrappedJSObject).slice(0, 500);
|
||||
|
||||
lastEnv = data.env;
|
||||
}
|
||||
|
||||
sendAsyncMessage('wappalyzer', {
|
||||
action: 'analyze',
|
||||
hostname: content.location.hostname,
|
||||
url: content.location.href,
|
||||
analyze: data
|
||||
});
|
||||
|
||||
data = null;
|
||||
}
|
||||
})();
|
@ -1,375 +0,0 @@
|
||||
/**
|
||||
* Firefox driver
|
||||
*/
|
||||
|
||||
(function() {
|
||||
//'use strict';
|
||||
|
||||
if ( wappalyzer == null ) return;
|
||||
|
||||
var w = wappalyzer,
|
||||
firstRun = false,
|
||||
upgraded = false,
|
||||
prefs, strings;
|
||||
|
||||
const
|
||||
d = document,
|
||||
Cc = Components.classes,
|
||||
Ci = Components.interfaces
|
||||
;
|
||||
|
||||
w.driver = {
|
||||
lastDisplayed: null,
|
||||
|
||||
/**
|
||||
* Log messages to console
|
||||
*/
|
||||
log: function(args) {
|
||||
if ( prefs != null && prefs.getBoolPref('debug') ) {
|
||||
Cc['@mozilla.org/consoleservice;1'].getService(Ci.nsIConsoleService).logStringMessage(args.message);
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Initialize
|
||||
*/
|
||||
init: function() {
|
||||
var handler = function() {
|
||||
window.removeEventListener('load', handler, false);
|
||||
|
||||
w.log('w.driver: browser window loaded');
|
||||
|
||||
strings = d.getElementById('wappalyzer-strings');
|
||||
|
||||
// Read apps.json
|
||||
var xhr = Cc['@mozilla.org/xmlextras/xmlhttprequest;1'].createInstance(Ci.nsIXMLHttpRequest);
|
||||
|
||||
xhr.overrideMimeType('application/json');
|
||||
|
||||
xhr.open('GET', 'chrome://wappalyzer/content/apps.json', true);
|
||||
|
||||
xhr.onload = function() {
|
||||
var json = JSON.parse(xhr.responseText);
|
||||
|
||||
w.categories = json.categories;
|
||||
w.apps = json.apps;
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
|
||||
AddonManager.getAddonByID('wappalyzer@crunchlabz.com', function(addon) {
|
||||
// Preferences
|
||||
prefs = Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefService).getBranch('extensions.wappalyzer.');
|
||||
|
||||
prefs.addObserver('', w.driver, false);
|
||||
|
||||
container();
|
||||
|
||||
bindings();
|
||||
|
||||
// Version check
|
||||
addon.version = addon.version;
|
||||
|
||||
if ( !prefs.getCharPref('version') ) {
|
||||
firstRun = true;
|
||||
} else if ( prefs.getCharPref('version') != addon.version ) {
|
||||
upgraded = true;
|
||||
}
|
||||
|
||||
prefs.setCharPref('version', addon.version);
|
||||
|
||||
// Listen for messages from content script
|
||||
messageManager.addMessageListener('wappalyzer', content);
|
||||
|
||||
// Load content script
|
||||
messageManager.loadFrameScript('chrome://wappalyzer/content/js/content.js', true);
|
||||
|
||||
gBrowser.addProgressListener({
|
||||
// Listen for location changes
|
||||
onLocationChange: function(progress, request, location, flags) {
|
||||
w.driver.displayApps();
|
||||
},
|
||||
|
||||
// Get response headers
|
||||
onStateChange: function(progress, request, flags, status) {
|
||||
if ( !prefs.getBoolPref('analyzeHeaders') ) { return; }
|
||||
|
||||
if ( request != null && flags & Ci.nsIWebProgressListener.STATE_STOP ) {
|
||||
if ( request.nsIHttpChannel && request.contentType == 'text/html' ) {
|
||||
if ( progress.currentURI && request.name == progress.currentURI.spec ) {
|
||||
var headers = {};
|
||||
|
||||
request.nsIHttpChannel.visitResponseHeaders(function(header, value) {
|
||||
headers[header.toLowerCase()] = value;
|
||||
});
|
||||
|
||||
w.analyze(progress.currentURI.host, progress.currentURI.spec, { headers: headers });
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
gBrowser.tabContainer.addEventListener('TabSelect', w.driver.displayApps, false);
|
||||
|
||||
if ( firstRun ) {
|
||||
w.driver.goToURL({ url: w.config.websiteURL + 'installed', medium: 'install' });
|
||||
|
||||
firstRun = false;
|
||||
}
|
||||
|
||||
if ( upgraded ) {
|
||||
setTimeout(function() {
|
||||
w.driver.goToURL({ url: w.config.websiteURL + 'upgraded', medium: 'upgrade' });
|
||||
}, 500);
|
||||
|
||||
upgraded = false;
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
window.addEventListener('load', handler, false);
|
||||
window.addEventListener('unload', w.driver.track, false);
|
||||
},
|
||||
|
||||
// Observe preference changes
|
||||
observe: function(subject, topic, data) {
|
||||
if ( topic != 'nsPref:changed' ) { return; }
|
||||
|
||||
switch(data) {
|
||||
case 'addonBar':
|
||||
container();
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
w.driver.displayApps();
|
||||
},
|
||||
|
||||
/**
|
||||
* Display apps
|
||||
*/
|
||||
displayApps: function() {
|
||||
var
|
||||
i, j, app, confidence, elements, menuItem, menuSeparator, image, version,
|
||||
remove = [],
|
||||
container = d.getElementById('wappalyzer-container'),
|
||||
menu = d.getElementById('wappalyzer-applications'),
|
||||
url = gBrowser.currentURI.spec.split('#')[0]
|
||||
;
|
||||
|
||||
if ( !container ) { return; }
|
||||
|
||||
if ( w.detected[url] != null && Object.keys(w.detected[url]).length ) {
|
||||
// No change
|
||||
if ( w.driver.lastDisplayed === JSON.stringify(w.detected[url]) ) { return; }
|
||||
} else {
|
||||
if ( w.driver.lastDisplayed === 'empty' ) { return; }
|
||||
}
|
||||
|
||||
elements = {
|
||||
images: container.getElementsByTagName('image'),
|
||||
menuItems: menu .getElementsByTagName('menuitem'),
|
||||
menuSeparators: menu .getElementsByTagName('menuseparator')
|
||||
};
|
||||
|
||||
for ( i in elements ) {
|
||||
for ( j = elements[i].length - 1; j >= 0; j -- ) {
|
||||
remove.push(elements[i][j]);
|
||||
}
|
||||
}
|
||||
|
||||
if ( w.detected[url] != null && Object.keys(w.detected[url]).length ) {
|
||||
if ( !prefs.getBoolPref('showIcons') ) {
|
||||
image = d.createElement('image');
|
||||
|
||||
image.setAttribute('src', 'chrome://wappalyzer/skin/images/icon_hot.png');
|
||||
|
||||
container.appendChild(image);
|
||||
}
|
||||
|
||||
for ( app in w.detected[url] ) {
|
||||
confidence = w.detected[url][app].confidenceTotal;
|
||||
version = w.detected[url][app].version;
|
||||
|
||||
var j, cat, showCat, categories = [];
|
||||
|
||||
for ( i in w.apps[app].cats ) {
|
||||
showCat = false;
|
||||
|
||||
try {
|
||||
showCat = prefs.getBoolPref('cat' + w.apps[app].cats[i]);
|
||||
} catch(e) { }
|
||||
|
||||
if ( showCat ) {
|
||||
menuSeparator = d.createElement('menuseparator');
|
||||
menuItem = d.createElement('menuitem');
|
||||
|
||||
menuItem.setAttribute('class', 'wappalyzer-application menuitem-iconic');
|
||||
menuItem.setAttribute('image', 'chrome://wappalyzer/skin/images/icons/' + app + '.png');
|
||||
menuItem.setAttribute('label', app + ( version ? ' ' + version : '' ) + ( confidence < 100 ? ' (' + confidence + '% sure)' : '' ));
|
||||
menuItem.setAttribute('name', app);
|
||||
menuItem.setAttribute('data-url', w.config.websiteURL + 'applications/' + app.toLowerCase().replace(/ /g, '-').replace(/[^\w-]/g, ''));
|
||||
|
||||
menuItem.addEventListener('command', function() {
|
||||
w.driver.goToURL({ url: this.getAttribute('data-url'), medium: 'menu' });
|
||||
});
|
||||
|
||||
menu.appendChild(menuSeparator);
|
||||
menu.appendChild(menuItem);
|
||||
|
||||
for ( j in w.apps[app].cats ) {
|
||||
cat = w.apps[app].cats[j];
|
||||
|
||||
categories.push(strings.getString('wappalyzer.cat' + cat));
|
||||
|
||||
menuItem = d.createElement('menuitem');
|
||||
|
||||
menuItem.setAttribute('class', 'wappalyzer-category');
|
||||
menuItem.setAttribute('label', strings.getString('wappalyzer.cat' + cat));
|
||||
menuItem.setAttribute('data-url', w.config.websiteURL + 'categories/' + w.categories[cat]);
|
||||
|
||||
menuItem.addEventListener('command', function() {
|
||||
w.driver.goToURL({ url: this.getAttribute('data-url'), medium: 'menu' });
|
||||
});
|
||||
|
||||
menu.appendChild(menuItem);
|
||||
}
|
||||
|
||||
if ( prefs.getBoolPref('showIcons') ) {
|
||||
image = d.createElement('image');
|
||||
|
||||
image.setAttribute('src', 'chrome://wappalyzer/skin/images/icons/' + app + '.png');
|
||||
image.setAttribute('tooltiptext', app + ( version ? ' ' + version : '' ) + ' - ' + categories.join(', '));
|
||||
|
||||
container.appendChild(image);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
w.driver.lastDisplayed = JSON.stringify(w.detected[url]);
|
||||
} else {
|
||||
image = d.createElement('image');
|
||||
menuSeparator = d.createElement('menuseparator');
|
||||
menuItem = d.createElement('menuitem');
|
||||
|
||||
image.setAttribute('src', 'chrome://wappalyzer/skin/images/icon.png');
|
||||
|
||||
menuItem.setAttribute('disabled', 'true');
|
||||
menuItem.setAttribute('label', strings.getString('wappalyzer.noAppsDetected'));
|
||||
|
||||
container.appendChild(image);
|
||||
menu .appendChild(menuSeparator);
|
||||
menu .appendChild(menuItem);
|
||||
|
||||
w.driver.lastDisplayed = 'empty';
|
||||
}
|
||||
|
||||
for ( i in remove ) {
|
||||
remove[i].parentNode.removeChild(remove[i]);
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Go to URL
|
||||
*/
|
||||
goToURL: function(args) {
|
||||
var url = args.url + ( typeof args.medium === 'undefined' ? '' : '?utm_source=firefox&utm_medium=' + args.medium + '&utm_campaign=extensions');
|
||||
|
||||
gBrowser.selectedTab = gBrowser.addTab(url);
|
||||
},
|
||||
|
||||
/**
|
||||
* Anonymously track detected applications for research purposes
|
||||
*/
|
||||
ping: function() {
|
||||
if ( Object.keys(w.ping.hostnames).length && prefs.getBoolPref('tracking') ) {
|
||||
// Make POST request
|
||||
var request = new XMLHttpRequest();
|
||||
|
||||
request.open('POST', w.config.websiteURL + 'ping/v2/', true);
|
||||
|
||||
request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
|
||||
|
||||
request.onreadystatechange = function(e) {
|
||||
if ( request.readyState == 4 ) { w.log('w.driver.ping: status ' + request.status); }
|
||||
};
|
||||
|
||||
request.send('json=' + encodeURIComponent(JSON.stringify(w.ping)));
|
||||
|
||||
w.log('w.driver.ping: ' + JSON.stringify(w.ping));
|
||||
|
||||
w.ping = { hostnames: {} };
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Content message listener
|
||||
*/
|
||||
function content(msg) {
|
||||
w.log('content.js');
|
||||
|
||||
switch ( msg.json.action ) {
|
||||
case 'analyze':
|
||||
w.analyze(msg.json.hostname, msg.json.url, msg.json.analyze);
|
||||
|
||||
break;
|
||||
case 'get prefs':
|
||||
return {
|
||||
analyzeJavaScript: prefs.getBoolPref('analyzeJavaScript'),
|
||||
analyzeOnLoad: prefs.getBoolPref('analyzeOnLoad')
|
||||
};
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
msg = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Move container to address or addon bar
|
||||
*/
|
||||
function container() {
|
||||
if ( prefs.getBoolPref('addonBar') ) {
|
||||
d.getElementById('wappalyzer-addonbar').appendChild(d.getElementById('wappalyzer-container'));
|
||||
} else {
|
||||
d.getElementById('urlbar-icons').insertBefore(d.getElementById('wappalyzer-container'), d.getElementById('urlbar-icons').childNodes[0]);
|
||||
}
|
||||
|
||||
d.getElementById('wappalyzer-addonbar').setAttribute('collapsed', prefs.getBoolPref('addonBar') ? 'false' : 'true');
|
||||
}
|
||||
|
||||
/**
|
||||
* Bindings
|
||||
*/
|
||||
function bindings() {
|
||||
// Menu items
|
||||
var prefix = 'wappalyzer-menu-';
|
||||
|
||||
d.getElementById(prefix + 'preferences').onclick = function() {
|
||||
w.driver.goToURL({ url: 'chrome://wappalyzer/content/xul/preferences.xul' })
|
||||
};
|
||||
|
||||
d.getElementById(prefix + 'feedback').onclick = function() {
|
||||
w.driver.goToURL({ url: w.config.websiteURL + 'contact', medium: 'menu' })
|
||||
};
|
||||
|
||||
d.getElementById(prefix + 'website').onclick = function() {
|
||||
w.driver.goToURL({ url: w.config.websiteURL, medium: 'menu' })
|
||||
};
|
||||
|
||||
d.getElementById(prefix + 'github').onclick = function() {
|
||||
w.driver.goToURL({ url: w.config.githubURL, medium: 'menu' })
|
||||
};
|
||||
|
||||
d.getElementById(prefix + 'twitter').onclick = function() {
|
||||
w.driver.goToURL({ url: w.config.twitterURL, medium: 'menu' })
|
||||
};
|
||||
}
|
||||
|
||||
w.init();
|
||||
})();
|
@ -1,177 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<?xml-stylesheet type="text/css" href="chrome://global/skin/"?>
|
||||
<?xml-stylesheet type="text/css" href="chrome://wappalyzer/skin/css/wappalyzer.css"?>
|
||||
|
||||
<!DOCTYPE overlay SYSTEM "chrome://wappalyzer/locale/wappalyzer.dtd">
|
||||
|
||||
<prefwindow id="wappalyzer-options" title="&wappalyzer.name; - &wappalyzer.preferences;" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
<prefpane>
|
||||
<preferences>
|
||||
<preference id="wappalyzer-icons" name="extensions.wappalyzer.showIcons" type="bool"/>
|
||||
<preference id="wappalyzer-addonbar" name="extensions.wappalyzer.addonBar" type="bool"/>
|
||||
|
||||
<preference id="wappalyzer-analyze-headers" name="extensions.wappalyzer.analyzeHeaders" type="bool"/>
|
||||
<preference id="wappalyzer-analyze-javascript" name="extensions.wappalyzer.analyzeJavaScript" type="bool"/>
|
||||
<preference id="wappalyzer-analyze-onload" name="extensions.wappalyzer.analyzeOnLoad" type="bool"/>
|
||||
|
||||
<preference id="wappalyzer-cat1" name="extensions.wappalyzer.cat1" type="bool"/>
|
||||
<preference id="wappalyzer-cat2" name="extensions.wappalyzer.cat2" type="bool"/>
|
||||
<preference id="wappalyzer-cat3" name="extensions.wappalyzer.cat3" type="bool"/>
|
||||
<preference id="wappalyzer-cat4" name="extensions.wappalyzer.cat4" type="bool"/>
|
||||
<preference id="wappalyzer-cat5" name="extensions.wappalyzer.cat5" type="bool"/>
|
||||
<preference id="wappalyzer-cat6" name="extensions.wappalyzer.cat6" type="bool"/>
|
||||
<preference id="wappalyzer-cat7" name="extensions.wappalyzer.cat7" type="bool"/>
|
||||
<preference id="wappalyzer-cat8" name="extensions.wappalyzer.cat8" type="bool"/>
|
||||
<preference id="wappalyzer-cat9" name="extensions.wappalyzer.cat9" type="bool"/>
|
||||
<preference id="wappalyzer-cat10" name="extensions.wappalyzer.cat10" type="bool"/>
|
||||
<preference id="wappalyzer-cat11" name="extensions.wappalyzer.cat11" type="bool"/>
|
||||
<preference id="wappalyzer-cat12" name="extensions.wappalyzer.cat12" type="bool"/>
|
||||
<preference id="wappalyzer-cat13" name="extensions.wappalyzer.cat13" type="bool"/>
|
||||
<preference id="wappalyzer-cat14" name="extensions.wappalyzer.cat14" type="bool"/>
|
||||
<preference id="wappalyzer-cat15" name="extensions.wappalyzer.cat15" type="bool"/>
|
||||
<preference id="wappalyzer-cat16" name="extensions.wappalyzer.cat16" type="bool"/>
|
||||
<preference id="wappalyzer-cat17" name="extensions.wappalyzer.cat17" type="bool"/>
|
||||
<preference id="wappalyzer-cat18" name="extensions.wappalyzer.cat18" type="bool"/>
|
||||
<preference id="wappalyzer-cat19" name="extensions.wappalyzer.cat19" type="bool"/>
|
||||
<preference id="wappalyzer-cat20" name="extensions.wappalyzer.cat20" type="bool"/>
|
||||
<preference id="wappalyzer-cat21" name="extensions.wappalyzer.cat21" type="bool"/>
|
||||
<preference id="wappalyzer-cat22" name="extensions.wappalyzer.cat22" type="bool"/>
|
||||
<preference id="wappalyzer-cat23" name="extensions.wappalyzer.cat23" type="bool"/>
|
||||
<preference id="wappalyzer-cat24" name="extensions.wappalyzer.cat24" type="bool"/>
|
||||
<preference id="wappalyzer-cat25" name="extensions.wappalyzer.cat25" type="bool"/>
|
||||
<preference id="wappalyzer-cat26" name="extensions.wappalyzer.cat26" type="bool"/>
|
||||
<preference id="wappalyzer-cat27" name="extensions.wappalyzer.cat27" type="bool"/>
|
||||
<preference id="wappalyzer-cat28" name="extensions.wappalyzer.cat28" type="bool"/>
|
||||
<preference id="wappalyzer-cat29" name="extensions.wappalyzer.cat29" type="bool"/>
|
||||
<preference id="wappalyzer-cat30" name="extensions.wappalyzer.cat30" type="bool"/>
|
||||
<preference id="wappalyzer-cat31" name="extensions.wappalyzer.cat31" type="bool"/>
|
||||
<preference id="wappalyzer-cat32" name="extensions.wappalyzer.cat32" type="bool"/>
|
||||
<preference id="wappalyzer-cat33" name="extensions.wappalyzer.cat33" type="bool"/>
|
||||
<preference id="wappalyzer-cat34" name="extensions.wappalyzer.cat34" type="bool"/>
|
||||
<preference id="wappalyzer-cat35" name="extensions.wappalyzer.cat35" type="bool"/>
|
||||
<preference id="wappalyzer-cat36" name="extensions.wappalyzer.cat36" type="bool"/>
|
||||
<preference id="wappalyzer-cat37" name="extensions.wappalyzer.cat37" type="bool"/>
|
||||
<preference id="wappalyzer-cat38" name="extensions.wappalyzer.cat38" type="bool"/>
|
||||
<preference id="wappalyzer-cat39" name="extensions.wappalyzer.cat39" type="bool"/>
|
||||
<preference id="wappalyzer-cat40" name="extensions.wappalyzer.cat40" type="bool"/>
|
||||
|
||||
<preference id="wappalyzer-tracking" name="extensions.wappalyzer.tracking" type="bool"/>
|
||||
</preferences>
|
||||
|
||||
<vbox>
|
||||
<hbox>
|
||||
<label class="header" value="&wappalyzer.interface;"/>
|
||||
</hbox>
|
||||
|
||||
<groupbox>
|
||||
<checkbox preference="wappalyzer-icons" id="wappalyzer-option-icons" label="&wappalyzer.showIcons;"/>
|
||||
<checkbox preference="wappalyzer-addonbar" id="wappalyzer-option-addonbar" label="&wappalyzer.addonBar;"/>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
|
||||
<separator/>
|
||||
|
||||
<vbox>
|
||||
<hbox>
|
||||
<label class="header" value="&wappalyzer.performance;"/>
|
||||
</hbox>
|
||||
|
||||
<groupbox>
|
||||
<checkbox preference="wappalyzer-analyze-headers" label="&wappalyzer.analyzeHeaders;"/>
|
||||
<checkbox preference="wappalyzer-analyze-javascript" label="&wappalyzer.analyzeJavaScript;"/>
|
||||
<checkbox preference="wappalyzer-analyze-onload" label="&wappalyzer.analyzeOnload;"/>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
|
||||
<separator/>
|
||||
|
||||
<vbox>
|
||||
<hbox>
|
||||
<label class="header" value="&wappalyzer.categories;"/>
|
||||
</hbox>
|
||||
|
||||
<groupbox>
|
||||
<grid>
|
||||
<columns>
|
||||
<column/>
|
||||
<column/>
|
||||
<column/>
|
||||
<column/>
|
||||
<column/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<checkbox preference="wappalyzer-cat36" label="&wappalyzer.cat36;"/><!-- Advertising networks-->
|
||||
<checkbox preference="wappalyzer-cat10" label="&wappalyzer.cat10;"/><!-- Analytics -->
|
||||
<checkbox preference="wappalyzer-cat11" label="&wappalyzer.cat11;"/><!-- Blogs -->
|
||||
<checkbox preference="wappalyzer-cat23" label="&wappalyzer.cat23;"/><!-- Cache tools -->
|
||||
<checkbox preference="wappalyzer-cat16" label="&wappalyzer.cat16;"/><!-- CAPTCHAs -->
|
||||
</row>
|
||||
<row>
|
||||
<checkbox preference="wappalyzer-cat31" label="&wappalyzer.cat31;"/><!-- CDN -->
|
||||
<checkbox preference="wappalyzer-cat1" label="&wappalyzer.cat1;" /><!-- CMS -->
|
||||
<checkbox preference="wappalyzer-cat15" label="&wappalyzer.cat15;"/><!-- Comment systems -->
|
||||
<checkbox preference="wappalyzer-cat34" label="&wappalyzer.cat34;"/><!-- Database -->
|
||||
<checkbox preference="wappalyzer-cat3" label="&wappalyzer.cat3;" /><!-- Database managers -->
|
||||
</row>
|
||||
<row>
|
||||
<checkbox preference="wappalyzer-cat4" label="&wappalyzer.cat4;" /><!-- Documentation tools -->
|
||||
<checkbox preference="wappalyzer-cat20" label="&wappalyzer.cat20;"/><!-- Editors -->
|
||||
<checkbox preference="wappalyzer-cat17" label="&wappalyzer.cat17;"/><!-- Font scripts -->
|
||||
<checkbox preference="wappalyzer-cat9" label="&wappalyzer.cat9;" /><!-- Hosting panels -->
|
||||
<checkbox preference="wappalyzer-cat13" label="&wappalyzer.cat13;"/><!-- Issue trackers -->
|
||||
</row>
|
||||
<row>
|
||||
<checkbox preference="wappalyzer-cat12" label="&wappalyzer.cat12;"/><!-- JavaScript frameworks -->
|
||||
<checkbox preference="wappalyzer-cat25" label="&wappalyzer.cat25;"/><!-- Javascript graphics -->
|
||||
<checkbox preference="wappalyzer-cat21" label="&wappalyzer.cat21;"/><!-- LMS -->
|
||||
<checkbox preference="wappalyzer-cat35" label="&wappalyzer.cat35;"/><!-- Maps -->
|
||||
<checkbox preference="wappalyzer-cat32" label="&wappalyzer.cat32;"/><!-- Marketing automation -->
|
||||
</row>
|
||||
<row>
|
||||
<checkbox preference="wappalyzer-cat38" label="&wappalyzer.cat38;"/><!-- Media servers -->
|
||||
<checkbox preference="wappalyzer-cat2" label="&wappalyzer.cat2;" /><!-- Message boards -->
|
||||
<checkbox preference="wappalyzer-cat19" label="&wappalyzer.cat19;"/><!-- Miscellaneous -->
|
||||
<checkbox preference="wappalyzer-cat26" label="&wappalyzer.cat26;"/><!-- Mobile frameworks -->
|
||||
<checkbox preference="wappalyzer-cat37" label="&wappalyzer.cat37;"/><!-- Network devices -->
|
||||
</row>
|
||||
<row>
|
||||
<checkbox preference="wappalyzer-cat28" label="&wappalyzer.cat28;"/><!-- Operating systems -->
|
||||
<checkbox preference="wappalyzer-cat7" label="&wappalyzer.cat7;" /><!-- Photo galleries -->
|
||||
<checkbox preference="wappalyzer-cat40" label="&wappalyzer.cat40;"/><!-- Printers -->
|
||||
<checkbox preference="wappalyzer-cat27" label="&wappalyzer.cat27;"/><!-- Programming languages -->
|
||||
<checkbox preference="wappalyzer-cat24" label="&wappalyzer.cat24;"/><!-- Rich text editors -->
|
||||
</row>
|
||||
<row>
|
||||
<checkbox preference="wappalyzer-cat29" label="&wappalyzer.cat29;"/><!-- Search engines -->
|
||||
<checkbox preference="wappalyzer-cat14" label="&wappalyzer.cat14;"/><!-- Video players -->
|
||||
<checkbox preference="wappalyzer-cat39" label="&wappalyzer.cat39;"/><!-- Web cams-->
|
||||
<checkbox preference="wappalyzer-cat18" label="&wappalyzer.cat18;"/><!-- Web frameworks -->
|
||||
<checkbox preference="wappalyzer-cat30" label="&wappalyzer.cat30;"/><!-- Web mail -->
|
||||
</row>
|
||||
<row>
|
||||
<checkbox preference="wappalyzer-cat22" label="&wappalyzer.cat22;"/><!-- Web servers -->
|
||||
<checkbox preference="wappalyzer-cat33" label="&wappalyzer.cat33;"/><!-- Web server extensions -->
|
||||
<checkbox preference="wappalyzer-cat6" label="&wappalyzer.cat6;" /><!-- eCommerce -->
|
||||
<checkbox preference="wappalyzer-cat5" label="&wappalyzer.cat5;" /><!-- Widgets -->
|
||||
<checkbox preference="wappalyzer-cat8" label="&wappalyzer.cat8;" /><!-- Wikis -->
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
|
||||
<separator/>
|
||||
|
||||
<vbox>
|
||||
<hbox>
|
||||
<label class="header" value="&wappalyzer.tracking;"/>
|
||||
</hbox>
|
||||
|
||||
<groupbox>
|
||||
<checkbox preference="wappalyzer-tracking" id="wappalyzer-option-tracking" label="&wappalyzer.research;"/>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
</prefpane>
|
||||
</prefwindow>
|
@ -1,42 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<?xml-stylesheet type="text/css" href="chrome://wappalyzer/skin/css/wappalyzer.css"?>
|
||||
|
||||
<!DOCTYPE overlay SYSTEM "chrome://wappalyzer/locale/wappalyzer.dtd">
|
||||
|
||||
<overlay id="wappalyzer-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
<script type="application/x-javascript" src="chrome://wappalyzer/content/js/wappalyzer.js"/>
|
||||
<script type="application/x-javascript" src="chrome://wappalyzer/content/js/driver.js"/>
|
||||
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="wappalyzer-strings" src="chrome://wappalyzer/locale/wappalyzer.properties"/>
|
||||
</stringbundleset>
|
||||
|
||||
<hbox id="urlbar-icons">
|
||||
<hbox id="wappalyzer-container" tooltiptext="&wappalyzer.help;" context="wappalyzer-menu" popup="wappalyzer-menu">
|
||||
<menupopup id="wappalyzer-menu" position="after_end">
|
||||
<menu label="&wappalyzer.name;">
|
||||
<menupopup>
|
||||
<menuitem id="wappalyzer-menu-preferences" label="&wappalyzer.preferences;" class="menuitem-iconic"/>
|
||||
|
||||
<menuseparator/>
|
||||
|
||||
<menuitem id="wappalyzer-menu-feedback" label="&wappalyzer.feedback;" image="chrome://wappalyzer/skin/images/feedback.png" class="menuitem-iconic"/>
|
||||
<menuitem id="wappalyzer-menu-website" label="&wappalyzer.website;" image="chrome://wappalyzer/skin/images/icon_hot.png" class="menuitem-iconic"/>
|
||||
|
||||
<menuseparator/>
|
||||
|
||||
<menuitem id="wappalyzer-menu-github" label="&wappalyzer.github;" image="chrome://wappalyzer/skin/images/github.png" class="menuitem-iconic"/>
|
||||
<menuitem id="wappalyzer-menu-twitter" label="&wappalyzer.twitter;" image="chrome://wappalyzer/skin/images/twitter.png" class="menuitem-iconic"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<vbox id="wappalyzer-applications"/>
|
||||
</menupopup>
|
||||
</hbox>
|
||||
</hbox>
|
||||
|
||||
<toolbar id="addon-bar">
|
||||
<toolbarbutton id="wappalyzer-addonbar" popup="wappalyzer-menu"/>
|
||||
</toolbar>
|
||||
</overlay>
|
@ -1,49 +0,0 @@
|
||||
pref('extensions.wappalyzer.debug', false);
|
||||
pref('extensions.wappalyzer.showIcons', true);
|
||||
pref('extensions.wappalyzer.tracking', true);
|
||||
pref('extensions.wappalyzer.addonBar', false);
|
||||
pref('extensions.wappalyzer.version', '');
|
||||
pref('extensions.wappalyzer.analyzeHeaders', true);
|
||||
pref('extensions.wappalyzer.analyzeJavaScript', true);
|
||||
pref('extensions.wappalyzer.analyzeOnLoad', true);
|
||||
|
||||
pref('extensions.wappalyzer.cat1', true);
|
||||
pref('extensions.wappalyzer.cat2', true);
|
||||
pref('extensions.wappalyzer.cat3', true);
|
||||
pref('extensions.wappalyzer.cat4', true);
|
||||
pref('extensions.wappalyzer.cat5', true);
|
||||
pref('extensions.wappalyzer.cat6', true);
|
||||
pref('extensions.wappalyzer.cat7', true);
|
||||
pref('extensions.wappalyzer.cat8', true);
|
||||
pref('extensions.wappalyzer.cat9', true);
|
||||
pref('extensions.wappalyzer.cat10', true);
|
||||
pref('extensions.wappalyzer.cat11', true);
|
||||
pref('extensions.wappalyzer.cat12', true);
|
||||
pref('extensions.wappalyzer.cat13', true);
|
||||
pref('extensions.wappalyzer.cat14', true);
|
||||
pref('extensions.wappalyzer.cat15', true);
|
||||
pref('extensions.wappalyzer.cat16', true);
|
||||
pref('extensions.wappalyzer.cat17', true);
|
||||
pref('extensions.wappalyzer.cat18', true);
|
||||
pref('extensions.wappalyzer.cat19', true);
|
||||
pref('extensions.wappalyzer.cat20', true);
|
||||
pref('extensions.wappalyzer.cat21', true);
|
||||
pref('extensions.wappalyzer.cat22', true);
|
||||
pref('extensions.wappalyzer.cat23', true);
|
||||
pref('extensions.wappalyzer.cat24', true);
|
||||
pref('extensions.wappalyzer.cat25', true);
|
||||
pref('extensions.wappalyzer.cat26', true);
|
||||
pref('extensions.wappalyzer.cat27', true);
|
||||
pref('extensions.wappalyzer.cat28', true);
|
||||
pref('extensions.wappalyzer.cat29', true);
|
||||
pref('extensions.wappalyzer.cat30', true);
|
||||
pref('extensions.wappalyzer.cat31', true);
|
||||
pref('extensions.wappalyzer.cat32', true);
|
||||
pref('extensions.wappalyzer.cat33', true);
|
||||
pref('extensions.wappalyzer.cat34', true);
|
||||
pref('extensions.wappalyzer.cat35', true);
|
||||
pref('extensions.wappalyzer.cat36', true);
|
||||
pref('extensions.wappalyzer.cat37', true);
|
||||
pref('extensions.wappalyzer.cat38', true);
|
||||
pref('extensions.wappalyzer.cat39', true);
|
||||
pref('extensions.wappalyzer.cat40', true);
|
@ -1,38 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<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>wappalyzer@crunchlabz.com</em:id>
|
||||
<em:version>2.7.8</em:version>
|
||||
<em:type>2</em:type>
|
||||
<em:unpack>true</em:unpack>
|
||||
|
||||
<em:targetApplication>
|
||||
<!-- Firefox -->
|
||||
<Description>
|
||||
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
|
||||
<em:minVersion>4.0</em:minVersion>
|
||||
<em:maxVersion>28.*</em:maxVersion>
|
||||
</Description>
|
||||
</em:targetApplication>
|
||||
|
||||
<em:targetApplication>
|
||||
<!-- Seamonkey -->
|
||||
<Description>
|
||||
<em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id>
|
||||
<em:minVersion>2.0</em:minVersion>
|
||||
<em:maxVersion>2.26.*</em:maxVersion>
|
||||
</Description>
|
||||
</em:targetApplication>
|
||||
|
||||
<em:optionsURL>chrome://wappalyzer/content/xul/preferences.xul</em:optionsURL>
|
||||
<em:optionsType>3</em:optionsType>
|
||||
|
||||
<em:name>Wappalyzer</em:name>
|
||||
<em:description>Identifies software on the web.</em:description>
|
||||
<em:iconURL>chrome://wappalyzer/skin/images/icon32.png</em:iconURL>
|
||||
<em:icon64URL>chrome://wappalyzer/skin/images/icon64.png</em:icon64URL>
|
||||
<em:creator>Elbert Alias</em:creator>
|
||||
<em:homepageURL>https://wappalyzer.com</em:homepageURL>
|
||||
</Description>
|
||||
</RDF>
|
@ -1,60 +0,0 @@
|
||||
<!ENTITY wappalyzer.name "Wappalyzer">
|
||||
<!ENTITY wappalyzer.help "Wappalyzer - klicken für Details und Einstellungen">
|
||||
|
||||
<!ENTITY wappalyzer.showIcons "Applikations-Icons zeigen">
|
||||
<!ENTITY wappalyzer.preferences "Weitere Optionen ...">
|
||||
<!ENTITY wappalyzer.addonBar "In Addon-Leiste platzieren (Ctrl+/ oder Cmd+/)">
|
||||
<!ENTITY wappalyzer.categories "Kategorienverwaltung">
|
||||
<!ENTITY wappalyzer.performance "Performance">
|
||||
<!ENTITY wappalyzer.interface "Interface">
|
||||
<!ENTITY wappalyzer.tracking "Tracken">
|
||||
<!ENTITY wappalyzer.research "Sende anonyme Reports über gefundene Applikationen zu Forschungszwecken an wappalyzer.com">
|
||||
<!ENTITY wappalyzer.analyzeHeaders "Analyze response headers">
|
||||
<!ENTITY wappalyzer.analyzeJavaScript "Analyze JavaScript">
|
||||
<!ENTITY wappalyzer.analyzeOnload "Analyze onLoad events">
|
||||
|
||||
<!ENTITY wappalyzer.feedback "Feedback">
|
||||
<!ENTITY wappalyzer.github "Github">
|
||||
<!ENTITY wappalyzer.twitter "Twitter">
|
||||
<!ENTITY wappalyzer.website "Zu wappalyzer.com browsen">
|
||||
|
||||
<!ENTITY wappalyzer.cat1 "CMS">
|
||||
<!ENTITY wappalyzer.cat2 "Webforen">
|
||||
<!ENTITY wappalyzer.cat3 "Datenbankverwaltung">
|
||||
<!ENTITY wappalyzer.cat4 "Dokumentationstools">
|
||||
<!ENTITY wappalyzer.cat5 "Widgets">
|
||||
<!ENTITY wappalyzer.cat6 "Webshops">
|
||||
<!ENTITY wappalyzer.cat7 "Bildergalerien">
|
||||
<!ENTITY wappalyzer.cat8 "Wikis">
|
||||
<!ENTITY wappalyzer.cat9 "Hosting Panels">
|
||||
<!ENTITY wappalyzer.cat10 "Analyse">
|
||||
<!ENTITY wappalyzer.cat11 "Blogs">
|
||||
<!ENTITY wappalyzer.cat12 "JavaScript-Bibliotheken">
|
||||
<!ENTITY wappalyzer.cat13 "Bugtracking-Systeme">
|
||||
<!ENTITY wappalyzer.cat14 "Videoplattformen">
|
||||
<!ENTITY wappalyzer.cat15 "Kommentarsysteme">
|
||||
<!ENTITY wappalyzer.cat16 "CAPTCHAs">
|
||||
<!ENTITY wappalyzer.cat17 "Font-Skripte">
|
||||
<!ENTITY wappalyzer.cat18 "Web-Frameworks">
|
||||
<!ENTITY wappalyzer.cat19 "Vermischtes">
|
||||
<!ENTITY wappalyzer.cat20 "Editoren">
|
||||
<!ENTITY wappalyzer.cat21 "LMS">
|
||||
<!ENTITY wappalyzer.cat22 "Webserver">
|
||||
<!ENTITY wappalyzer.cat23 "Cachetools">
|
||||
<!ENTITY wappalyzer.cat24 "Rich-Text-Editoren">
|
||||
<!ENTITY wappalyzer.cat25 "Javascript Graphics">
|
||||
<!ENTITY wappalyzer.cat26 "Mobile Frameworks">
|
||||
<!ENTITY wappalyzer.cat27 "Programmiersprachen">
|
||||
<!ENTITY wappalyzer.cat28 "Betriebssysteme">
|
||||
<!ENTITY wappalyzer.cat29 "Suchmaschinen">
|
||||
<!ENTITY wappalyzer.cat30 "Web mail">
|
||||
<!ENTITY wappalyzer.cat31 "CDN">
|
||||
<!ENTITY wappalyzer.cat32 "Marketing Automation">
|
||||
<!ENTITY wappalyzer.cat33 "Web Server Extensions">
|
||||
<!ENTITY wappalyzer.cat34 "Databases">
|
||||
<!ENTITY wappalyzer.cat35 "Maps">
|
||||
<!ENTITY wappalyzer.cat36 "Advertizing Networks">
|
||||
<!ENTITY wappalyzer.cat37 "Network Devices">
|
||||
<!ENTITY wappalyzer.cat38 "Media Servers">
|
||||
<!ENTITY wappalyzer.cat39 "Webcams">
|
||||
<!ENTITY wappalyzer.cat40 "Printers">
|
@ -1,44 +0,0 @@
|
||||
wappalyzer.name = Wappalyzer
|
||||
wappalyzer.noAppsDetected = Keine Applikationen erkannt
|
||||
wappalyzer.addonBar = Wappalyzer has been placed in the add-on bar.\n\nTo show the add-on bar, close this window and press Ctrl+/.
|
||||
|
||||
wappalyzer.cat1 = CMS
|
||||
wappalyzer.cat2 = Message Board
|
||||
wappalyzer.cat3 = Database Manager
|
||||
wappalyzer.cat4 = Documentation Tool
|
||||
wappalyzer.cat5 = Widget
|
||||
wappalyzer.cat6 = Web Shop
|
||||
wappalyzer.cat7 = Photo Gallery
|
||||
wappalyzer.cat8 = Wiki
|
||||
wappalyzer.cat9 = Hosting Panel
|
||||
wappalyzer.cat10 = Analytics
|
||||
wappalyzer.cat11 = Blog
|
||||
wappalyzer.cat12 = JavaScript Framework
|
||||
wappalyzer.cat13 = Issue Tracker
|
||||
wappalyzer.cat14 = Video Player
|
||||
wappalyzer.cat15 = Comment System
|
||||
wappalyzer.cat16 = CAPTCHA
|
||||
wappalyzer.cat17 = Font Script
|
||||
wappalyzer.cat18 = Web Framework
|
||||
wappalyzer.cat19 = Miscellaneous
|
||||
wappalyzer.cat20 = Editor
|
||||
wappalyzer.cat21 = LMS
|
||||
wappalyzer.cat22 = Web Server
|
||||
wappalyzer.cat23 = Cache Tool
|
||||
wappalyzer.cat24 = Rich Text Editor
|
||||
wappalyzer.cat25 = Javascript Graphics
|
||||
wappalyzer.cat26 = Mobile Framework
|
||||
wappalyzer.cat27 = Programming Language
|
||||
wappalyzer.cat28 = Operating System
|
||||
wappalyzer.cat29 = Search Engine
|
||||
wappalyzer.cat30 = Web mail
|
||||
wappalyzer.cat31 = CDN
|
||||
wappalyzer.cat32 = Marketing Automation
|
||||
wappalyzer.cat33 = Web Server Extension
|
||||
wappalyzer.cat34 = Database
|
||||
wappalyzer.cat35 = Map
|
||||
wappalyzer.cat36 = Advertizing Network
|
||||
wappalyzer.cat37 = Network Device
|
||||
wappalyzer.cat38 = Media Server
|
||||
wappalyzer.cat39 = Webcam
|
||||
wappalyzer.cat40 = Printer
|
@ -1,60 +0,0 @@
|
||||
<!ENTITY wappalyzer.name "Wappalyzer">
|
||||
<!ENTITY wappalyzer.help "Wappalyzer - Click for more detail and settings">
|
||||
|
||||
<!ENTITY wappalyzer.showIcons "Show application icons">
|
||||
<!ENTITY wappalyzer.preferences "Options">
|
||||
<!ENTITY wappalyzer.addonBar "Place in addon-bar (press Ctrl+/ or Cmd+/ to toggle)">
|
||||
<!ENTITY wappalyzer.categories "Categories">
|
||||
<!ENTITY wappalyzer.performance "Performance">
|
||||
<!ENTITY wappalyzer.interface "Interface">
|
||||
<!ENTITY wappalyzer.tracking "Tracking">
|
||||
<!ENTITY wappalyzer.research "Anonymously send reports on detected applications to wappalyzer.com for research">
|
||||
<!ENTITY wappalyzer.analyzeHeaders "Analyze response headers">
|
||||
<!ENTITY wappalyzer.analyzeJavaScript "Analyze JavaScript">
|
||||
<!ENTITY wappalyzer.analyzeOnload "Analyze onLoad events">
|
||||
|
||||
<!ENTITY wappalyzer.feedback "Feedback">
|
||||
<!ENTITY wappalyzer.github "Github">
|
||||
<!ENTITY wappalyzer.twitter "Twitter">
|
||||
<!ENTITY wappalyzer.website "Go to wappalyzer.com">
|
||||
|
||||
<!ENTITY wappalyzer.cat1 "CMS">
|
||||
<!ENTITY wappalyzer.cat2 "Message boards">
|
||||
<!ENTITY wappalyzer.cat3 "Database managers">
|
||||
<!ENTITY wappalyzer.cat4 "Documentation tools">
|
||||
<!ENTITY wappalyzer.cat5 "Widgets">
|
||||
<!ENTITY wappalyzer.cat6 "eCommerce">
|
||||
<!ENTITY wappalyzer.cat7 "Photo galleries">
|
||||
<!ENTITY wappalyzer.cat8 "Wikis">
|
||||
<!ENTITY wappalyzer.cat9 "Hosting panels">
|
||||
<!ENTITY wappalyzer.cat10 "Analytics">
|
||||
<!ENTITY wappalyzer.cat11 "Blogs">
|
||||
<!ENTITY wappalyzer.cat12 "JavaScript frameworks">
|
||||
<!ENTITY wappalyzer.cat13 "Issue trackers">
|
||||
<!ENTITY wappalyzer.cat14 "Video players">
|
||||
<!ENTITY wappalyzer.cat15 "Comment systems">
|
||||
<!ENTITY wappalyzer.cat16 "CAPTCHAs">
|
||||
<!ENTITY wappalyzer.cat17 "Font scripts">
|
||||
<!ENTITY wappalyzer.cat18 "Web frameworks">
|
||||
<!ENTITY wappalyzer.cat19 "Miscellaneous">
|
||||
<!ENTITY wappalyzer.cat20 "Editors">
|
||||
<!ENTITY wappalyzer.cat21 "LMS">
|
||||
<!ENTITY wappalyzer.cat22 "Web servers">
|
||||
<!ENTITY wappalyzer.cat23 "Cache tools">
|
||||
<!ENTITY wappalyzer.cat24 "Rich text editors">
|
||||
<!ENTITY wappalyzer.cat25 "Javascript Graphics">
|
||||
<!ENTITY wappalyzer.cat26 "Mobile Frameworks">
|
||||
<!ENTITY wappalyzer.cat27 "Programming Languages">
|
||||
<!ENTITY wappalyzer.cat28 "Operating Systems">
|
||||
<!ENTITY wappalyzer.cat29 "Search Engines">
|
||||
<!ENTITY wappalyzer.cat30 "Web Mail">
|
||||
<!ENTITY wappalyzer.cat31 "CDN">
|
||||
<!ENTITY wappalyzer.cat32 "Marketing Automation">
|
||||
<!ENTITY wappalyzer.cat33 "Web Server Extensions">
|
||||
<!ENTITY wappalyzer.cat34 "Databases">
|
||||
<!ENTITY wappalyzer.cat35 "Maps">
|
||||
<!ENTITY wappalyzer.cat36 "Advertising Networks">
|
||||
<!ENTITY wappalyzer.cat37 "Network Devices">
|
||||
<!ENTITY wappalyzer.cat38 "Media Servers">
|
||||
<!ENTITY wappalyzer.cat39 "Webcams">
|
||||
<!ENTITY wappalyzer.cat40 "Printers">
|
@ -1,44 +0,0 @@
|
||||
wappalyzer.name = Wappalyzer
|
||||
wappalyzer.noAppsDetected = No applications detected
|
||||
wappalyzer.addonBar = Wappalyzer has been placed in the add-on bar.\n\nTo show the add-on bar, close this window and press Ctrl+/.
|
||||
|
||||
wappalyzer.cat1 = CMS
|
||||
wappalyzer.cat2 = Message Board
|
||||
wappalyzer.cat3 = Database Manager
|
||||
wappalyzer.cat4 = Documentation Tool
|
||||
wappalyzer.cat5 = Widget
|
||||
wappalyzer.cat6 = eCommerce
|
||||
wappalyzer.cat7 = Photo Gallery
|
||||
wappalyzer.cat8 = Wiki
|
||||
wappalyzer.cat9 = Hosting Panel
|
||||
wappalyzer.cat10 = Analytics
|
||||
wappalyzer.cat11 = Blog
|
||||
wappalyzer.cat12 = JavaScript Framework
|
||||
wappalyzer.cat13 = Issue Tracker
|
||||
wappalyzer.cat14 = Video Player
|
||||
wappalyzer.cat15 = Comment System
|
||||
wappalyzer.cat16 = CAPTCHA
|
||||
wappalyzer.cat17 = Font Script
|
||||
wappalyzer.cat18 = Web Framework
|
||||
wappalyzer.cat19 = Miscellaneous
|
||||
wappalyzer.cat20 = Editor
|
||||
wappalyzer.cat21 = LMS
|
||||
wappalyzer.cat22 = Web Server
|
||||
wappalyzer.cat23 = Cache Tool
|
||||
wappalyzer.cat24 = Rich Text Editor
|
||||
wappalyzer.cat25 = Javascript Graphics
|
||||
wappalyzer.cat26 = Mobile Framework
|
||||
wappalyzer.cat27 = Programming Language
|
||||
wappalyzer.cat28 = Operating System
|
||||
wappalyzer.cat29 = Search Engine
|
||||
wappalyzer.cat30 = Web Mail
|
||||
wappalyzer.cat31 = CDN
|
||||
wappalyzer.cat32 = Marketing Automation
|
||||
wappalyzer.cat33 = Web Server Extension
|
||||
wappalyzer.cat34 = Database
|
||||
wappalyzer.cat35 = Map
|
||||
wappalyzer.cat36 = Advertising Network
|
||||
wappalyzer.cat37 = Network Device
|
||||
wappalyzer.cat38 = Media Server
|
||||
wappalyzer.cat39 = Webcam
|
||||
wappalyzer.cat40 = Printer
|
@ -1,60 +0,0 @@
|
||||
<!ENTITY wappalyzer.name "Wappalyzer">
|
||||
<!ENTITY wappalyzer.help "Wappalyzer - Click for more detail and settings">
|
||||
|
||||
<!ENTITY wappalyzer.showIcons "Show application icons">
|
||||
<!ENTITY wappalyzer.preferences "Options">
|
||||
<!ENTITY wappalyzer.addonBar "Place in addon-bar (press Ctrl+/ or Cmd+/ to toggle)">
|
||||
<!ENTITY wappalyzer.categories "Categories">
|
||||
<!ENTITY wappalyzer.performance "Performance">
|
||||
<!ENTITY wappalyzer.interface "Interface">
|
||||
<!ENTITY wappalyzer.tracking "Tracking">
|
||||
<!ENTITY wappalyzer.research "Anonymously send reports on detected applications to wappalyzer.com for research">
|
||||
<!ENTITY wappalyzer.analyzeHeaders "Analyze response headers">
|
||||
<!ENTITY wappalyzer.analyzeJavaScript "Analyze JavaScript">
|
||||
<!ENTITY wappalyzer.analyzeOnload "Analyze onLoad events">
|
||||
|
||||
<!ENTITY wappalyzer.feedback "Feedback">
|
||||
<!ENTITY wappalyzer.github "Github">
|
||||
<!ENTITY wappalyzer.twitter "Twitter">
|
||||
<!ENTITY wappalyzer.website "Go to wappalyzer.com">
|
||||
|
||||
<!ENTITY wappalyzer.cat1 "CMS">
|
||||
<!ENTITY wappalyzer.cat2 "Message boards">
|
||||
<!ENTITY wappalyzer.cat3 "Database managers">
|
||||
<!ENTITY wappalyzer.cat4 "Documentation tools">
|
||||
<!ENTITY wappalyzer.cat5 "Widgets">
|
||||
<!ENTITY wappalyzer.cat6 "eCommerce">
|
||||
<!ENTITY wappalyzer.cat7 "Photo galleries">
|
||||
<!ENTITY wappalyzer.cat8 "Wikis">
|
||||
<!ENTITY wappalyzer.cat9 "Hosting panels">
|
||||
<!ENTITY wappalyzer.cat10 "Analytics">
|
||||
<!ENTITY wappalyzer.cat11 "Blogs">
|
||||
<!ENTITY wappalyzer.cat12 "JavaScript frameworks">
|
||||
<!ENTITY wappalyzer.cat13 "Issue trackers">
|
||||
<!ENTITY wappalyzer.cat14 "Video players">
|
||||
<!ENTITY wappalyzer.cat15 "Comment systems">
|
||||
<!ENTITY wappalyzer.cat16 "CAPTCHAs">
|
||||
<!ENTITY wappalyzer.cat17 "Font scripts">
|
||||
<!ENTITY wappalyzer.cat18 "Web frameworks">
|
||||
<!ENTITY wappalyzer.cat19 "Miscellaneous">
|
||||
<!ENTITY wappalyzer.cat20 "Editors">
|
||||
<!ENTITY wappalyzer.cat21 "LMS">
|
||||
<!ENTITY wappalyzer.cat22 "Web servers">
|
||||
<!ENTITY wappalyzer.cat23 "Cache tools">
|
||||
<!ENTITY wappalyzer.cat24 "Rich text editors">
|
||||
<!ENTITY wappalyzer.cat25 "Javascript Graphics">
|
||||
<!ENTITY wappalyzer.cat26 "Mobile Frameworks">
|
||||
<!ENTITY wappalyzer.cat27 "Programming Languages">
|
||||
<!ENTITY wappalyzer.cat28 "Operating Systems">
|
||||
<!ENTITY wappalyzer.cat29 "Search Engines">
|
||||
<!ENTITY wappalyzer.cat30 "Web Mail">
|
||||
<!ENTITY wappalyzer.cat31 "CDN">
|
||||
<!ENTITY wappalyzer.cat32 "Marketing Automation">
|
||||
<!ENTITY wappalyzer.cat33 "Web Server Extensions">
|
||||
<!ENTITY wappalyzer.cat34 "Databases">
|
||||
<!ENTITY wappalyzer.cat35 "Maps">
|
||||
<!ENTITY wappalyzer.cat36 "Advertising Networks">
|
||||
<!ENTITY wappalyzer.cat37 "Network Devices">
|
||||
<!ENTITY wappalyzer.cat38 "Media Servers">
|
||||
<!ENTITY wappalyzer.cat39 "Webcams">
|
||||
<!ENTITY wappalyzer.cat40 "Printers">
|
@ -1,44 +0,0 @@
|
||||
wappalyzer.name = Wappalyzer
|
||||
wappalyzer.noAppsDetected = No applications detected
|
||||
wappalyzer.addonBar = Wappalyzer has been placed in the add-on bar.\n\nTo show the add-on bar, close this window and press Ctrl+/.
|
||||
|
||||
wappalyzer.cat1 = CMS
|
||||
wappalyzer.cat2 = Message Board
|
||||
wappalyzer.cat3 = Database Manager
|
||||
wappalyzer.cat4 = Documentation Tool
|
||||
wappalyzer.cat5 = Widget
|
||||
wappalyzer.cat6 = eCommerce
|
||||
wappalyzer.cat7 = Photo Gallery
|
||||
wappalyzer.cat8 = Wiki
|
||||
wappalyzer.cat9 = Hosting Panel
|
||||
wappalyzer.cat10 = Analytics
|
||||
wappalyzer.cat11 = Blog
|
||||
wappalyzer.cat12 = JavaScript Framework
|
||||
wappalyzer.cat13 = Issue Tracker
|
||||
wappalyzer.cat14 = Video Player
|
||||
wappalyzer.cat15 = Comment System
|
||||
wappalyzer.cat16 = CAPTCHA
|
||||
wappalyzer.cat17 = Font Script
|
||||
wappalyzer.cat18 = Web Framework
|
||||
wappalyzer.cat19 = Miscellaneous
|
||||
wappalyzer.cat20 = Editor
|
||||
wappalyzer.cat21 = LMS
|
||||
wappalyzer.cat22 = Web Server
|
||||
wappalyzer.cat23 = Cache Tool
|
||||
wappalyzer.cat24 = Rich Text Editor
|
||||
wappalyzer.cat25 = Javascript Graphics
|
||||
wappalyzer.cat26 = Mobile Framework
|
||||
wappalyzer.cat27 = Programming Language
|
||||
wappalyzer.cat28 = Operating System
|
||||
wappalyzer.cat29 = Search Engine
|
||||
wappalyzer.cat30 = Web Mail
|
||||
wappalyzer.cat31 = CDN
|
||||
wappalyzer.cat32 = Marketing Automation
|
||||
wappalyzer.cat33 = Web Server Extension
|
||||
wappalyzer.cat34 = Database
|
||||
wappalyzer.cat35 = Map
|
||||
wappalyzer.cat36 = Advertising Network
|
||||
wappalyzer.cat37 = Network Device
|
||||
wappalyzer.cat38 = Media Server
|
||||
wappalyzer.cat39 = Webcam
|
||||
wappalyzer.cat40 = Printer
|
@ -1,60 +0,0 @@
|
||||
<!ENTITY wappalyzer.name "Wappalyzer">
|
||||
<!ENTITY wappalyzer.help "Wappalyzer - Clic para mas detalles y configuración">
|
||||
|
||||
<!ENTITY wappalyzer.showIcons "Mostrar iconos de aplicaciones">
|
||||
<!ENTITY wappalyzer.preferences "Opciones">
|
||||
<!ENTITY wappalyzer.addonBar "Colocar en barra de complementos (pulsa Ctrl+/ o Cmd+/ para alternar)">
|
||||
<!ENTITY wappalyzer.categories "Categorías">
|
||||
<!ENTITY wappalyzer.performance "Rendimiento">
|
||||
<!ENTITY wappalyzer.interface "Interfaz">
|
||||
<!ENTITY wappalyzer.tracking "Seguimiento">
|
||||
<!ENTITY wappalyzer.research "Enviar informes anónimos sobre las aplicaciones detectadas a wappalyzer.com para análisis">
|
||||
<!ENTITY wappalyzer.analyzeHeaders "Analizar cabeceras de respuesta">
|
||||
<!ENTITY wappalyzer.analyzeJavaScript "Analizar JavaScript">
|
||||
<!ENTITY wappalyzer.analyzeOnload "Analizar eventos onLoad">
|
||||
|
||||
<!ENTITY wappalyzer.feedback "Opinión">
|
||||
<!ENTITY wappalyzer.github "Github">
|
||||
<!ENTITY wappalyzer.twitter "Twitter">
|
||||
<!ENTITY wappalyzer.website "Ir a wappalyzer.com">
|
||||
|
||||
<!ENTITY wappalyzer.cat1 "Gestores de Contenido">
|
||||
<!ENTITY wappalyzer.cat2 "Foros">
|
||||
<!ENTITY wappalyzer.cat3 "Gestores de Bases de Datos">
|
||||
<!ENTITY wappalyzer.cat4 "Herramientas de Documentación">
|
||||
<!ENTITY wappalyzer.cat5 "Widgets">
|
||||
<!ENTITY wappalyzer.cat6 "Tiendas Web">
|
||||
<!ENTITY wappalyzer.cat7 "Galerías fotográfica">
|
||||
<!ENTITY wappalyzer.cat8 "Wikis">
|
||||
<!ENTITY wappalyzer.cat9 "Paneles de Hosting">
|
||||
<!ENTITY wappalyzer.cat10 "Analítica">
|
||||
<!ENTITY wappalyzer.cat11 "Blogs">
|
||||
<!ENTITY wappalyzer.cat12 "Framework JavaScript">
|
||||
<!ENTITY wappalyzer.cat13 "Gestores de Incidencias">
|
||||
<!ENTITY wappalyzer.cat14 "Reproductores de Vídeo">
|
||||
<!ENTITY wappalyzer.cat15 "Sistemas de Comentarios">
|
||||
<!ENTITY wappalyzer.cat16 "CAPTCHAs">
|
||||
<!ENTITY wappalyzer.cat17 "Tipografías">
|
||||
<!ENTITY wappalyzer.cat18 "Framework Web">
|
||||
<!ENTITY wappalyzer.cat19 "Miscelánea">
|
||||
<!ENTITY wappalyzer.cat20 "Editores">
|
||||
<!ENTITY wappalyzer.cat21 "LMS">
|
||||
<!ENTITY wappalyzer.cat22 "Servidores Web">
|
||||
<!ENTITY wappalyzer.cat23 "Herramientas de Cache">
|
||||
<!ENTITY wappalyzer.cat24 "Editores de Texto Enriquecido">
|
||||
<!ENTITY wappalyzer.cat25 "Gráficos Javascript">
|
||||
<!ENTITY wappalyzer.cat26 "Framework Móvil">
|
||||
<!ENTITY wappalyzer.cat27 "Lenguajes de programación">
|
||||
<!ENTITY wappalyzer.cat28 "Sistemas Operativos">
|
||||
<!ENTITY wappalyzer.cat29 "Motor de Búsqueda">
|
||||
<!ENTITY wappalyzer.cat30 "Correos Web">
|
||||
<!ENTITY wappalyzer.cat31 "CDN">
|
||||
<!ENTITY wappalyzer.cat32 "Lenguajes de programación">
|
||||
<!ENTITY wappalyzer.cat33 "Extensiones de Servidor Web">
|
||||
<!ENTITY wappalyzer.cat34 "Bases de Datos">
|
||||
<!ENTITY wappalyzer.cat35 "Mapa">
|
||||
<!ENTITY wappalyzer.cat36 "Redes de Publicidad">
|
||||
<!ENTITY wappalyzer.cat37 "Dispositivos de Red">
|
||||
<!ENTITY wappalyzer.cat38 "Servidores de Contenido">
|
||||
<!ENTITY wappalyzer.cat39 "Cámaras Web">
|
||||
<!ENTITY wappalyzer.cat40 "Impresoras">
|
@ -1,44 +0,0 @@
|
||||
wappalyzer.name = Wappalyzer
|
||||
wappalyzer.noAppsDetected = Aplicaciones no detectadas
|
||||
wappalyzer.addonBar = Wappalyzer se ha colocado en la barra de complementos.\n\nPara mostrar la barra de complementos, cierra esta ventana y pulsa Ctrl+/.
|
||||
|
||||
wappalyzer.cat1 = Gestor de Contenido
|
||||
wappalyzer.cat2 = Foro
|
||||
wappalyzer.cat3 = estor de Bases de Datos
|
||||
wappalyzer.cat4 = Herramienta de Documentación
|
||||
wappalyzer.cat5 = Widget
|
||||
wappalyzer.cat6 = Tienda Web
|
||||
wappalyzer.cat7 = Galería fotográfica
|
||||
wappalyzer.cat8 = Wiki
|
||||
wappalyzer.cat9 = Panel de Hosting
|
||||
wappalyzer.cat10 = Analítica
|
||||
wappalyzer.cat11 = Blog
|
||||
wappalyzer.cat12 = Framework JavaScript
|
||||
wappalyzer.cat13 = Gestor de Incidencias
|
||||
wappalyzer.cat14 = Reproductor de Vídeo
|
||||
wappalyzer.cat15 = Sistema de Comentarios
|
||||
wappalyzer.cat16 = CAPTCHA
|
||||
wappalyzer.cat17 = Tipografía
|
||||
wappalyzer.cat18 = Framework Web
|
||||
wappalyzer.cat19 = Miscelánea
|
||||
wappalyzer.cat20 = Editor
|
||||
wappalyzer.cat21 = LMS
|
||||
wappalyzer.cat22 = Servidor Web
|
||||
wappalyzer.cat23 = Herramienta de Cache
|
||||
wappalyzer.cat24 = Editor de Texto Enriquecido
|
||||
wappalyzer.cat25 = Gráficos Javascript
|
||||
wappalyzer.cat26 = Framework Móvil
|
||||
wappalyzer.cat27 = Lenguaje de programación
|
||||
wappalyzer.cat28 = Sistema Operativo
|
||||
wappalyzer.cat29 = Motor de Búsqueda
|
||||
wappalyzer.cat30 = Correo Web
|
||||
wappalyzer.cat31 = CDN
|
||||
wappalyzer.cat32 = Automatización de Marketing
|
||||
wappalyzer.cat33 = Extensión de Servidor Web
|
||||
wappalyzer.cat34 = Base de Datos
|
||||
wappalyzer.cat35 = Mapa
|
||||
wappalyzer.cat36 = Red de Publicidad
|
||||
wappalyzer.cat37 = Dispositivo de Red
|
||||
wappalyzer.cat38 = Servidores de Contenido
|
||||
wappalyzer.cat39 = Webcam
|
||||
wappalyzer.cat40 = Impresora
|
@ -1,44 +0,0 @@
|
||||
wappalyzer.name = Wappalyzer
|
||||
wappalyzer.noAppsDetected = Pas d'applications détectées
|
||||
wappalyzer.addonBar = Wappalyzer a été placé dans la barre des modules.\n\n Pour voir la barre des modules pressez Ctrl+/ ou Cmd+/.
|
||||
|
||||
wappalyzer.cat1 = CMS
|
||||
wappalyzer.cat2 = Forum
|
||||
wappalyzer.cat3 = Gestionnaire de base de données
|
||||
wappalyzer.cat4 = Outil de documentation
|
||||
wappalyzer.cat5 = Widget
|
||||
wappalyzer.cat6 = Boutique en ligne
|
||||
wappalyzer.cat7 = Galerie photo
|
||||
wappalyzer.cat8 = Wiki
|
||||
wappalyzer.cat9 = Gestionnaires de serveur
|
||||
wappalyzer.cat10 = Outil de statistiques
|
||||
wappalyzer.cat11 = Blog
|
||||
wappalyzer.cat12 = Framework JavaScript
|
||||
wappalyzer.cat13 = Outils de suivi de problèmes
|
||||
wappalyzer.cat14 = Lecteur de vidéos
|
||||
wappalyzer.cat15 = Système de commentaires
|
||||
wappalyzer.cat16 = CAPTCHA
|
||||
wappalyzer.cat17 = Script de police
|
||||
wappalyzer.cat18 = Framework web
|
||||
wappalyzer.cat19 = Divers
|
||||
wappalyzer.cat20 = Editeur
|
||||
wappalyzer.cat21 = LMS
|
||||
wappalyzer.cat22 = Serveur web
|
||||
wappalyzer.cat23 = Outil de cache
|
||||
wappalyzer.cat24 = Editeur WYSIWYG
|
||||
wappalyzer.cat25 = Graphismes JavaScript
|
||||
wappalyzer.cat26 = Framework pour mobiles
|
||||
wappalyzer.cat27 = Language de programmation
|
||||
wappalyzer.cat28 = Système d'exploitation
|
||||
wappalyzer.cat29 = Moteur de recherche
|
||||
wappalyzer.cat30 = Web Mail
|
||||
wappalyzer.cat31 = CDN
|
||||
wappalyzer.cat32 = Logiciel de marketing
|
||||
wappalyzer.cat33 = Web Server Extension
|
||||
wappalyzer.cat34 = Database
|
||||
wappalyzer.cat35 = Map
|
||||
wappalyzer.cat36 = Advertizing Network
|
||||
wappalyzer.cat37 = Network Device
|
||||
wappalyzer.cat38 = Media Server
|
||||
wappalyzer.cat39 = Webcam
|
||||
wappalyzer.cat40 = Printer
|
@ -1,59 +0,0 @@
|
||||
<!ENTITY wappalyzer.name "Wappalyzer">
|
||||
<!ENTITY wappalyzer.help "Wappalyzer - Klik voor meer informatie">
|
||||
|
||||
<!ENTITY wappalyzer.showIcons "Iconen zichtbaar">
|
||||
<!ENTITY wappalyzer.preferences "Meer opties...">
|
||||
<!ENTITY wappalyzer.addonBar "Plaats in addon-bar (klik Ctrl+/ of Cmd+/)">
|
||||
<!ENTITY wappalyzer.categories "Beheer categorien">
|
||||
<!ENTITY wappalyzer.performance "Performance">
|
||||
<!ENTITY wappalyzer.interface "Interface">
|
||||
<!ENTITY wappalyzer.tracking "Tracking">
|
||||
<!ENTITY wappalyzer.research "Verzend anonieme informatie over applicaties naar wappalyzer.com voor onderzoek">
|
||||
<!ENTITY wappalyzer.analyzeHeaders "Analiseer response headers">
|
||||
<!ENTITY wappalyzer.analyzeJavaScript "Analiseer JavaScript">
|
||||
<!ENTITY wappalyzer.analyzeOnload "Analiseer onLoad events">
|
||||
|
||||
<!ENTITY wappalyzer.feedback "Feedback">
|
||||
<!ENTITY wappalyzer.github "Github">
|
||||
<!ENTITY wappalyzer.twitter "Twitter">
|
||||
<!ENTITY wappalyzer.website "Ga naar wappalyzer.com">
|
||||
|
||||
<!ENTITY wappalyzer.cat1 "CMS">
|
||||
<!ENTITY wappalyzer.cat2 "Forums">
|
||||
<!ENTITY wappalyzer.cat3 "Database Managers">
|
||||
<!ENTITY wappalyzer.cat4 "Documentatie Tools">
|
||||
<!ENTITY wappalyzer.cat5 "Widgets">
|
||||
<!ENTITY wappalyzer.cat6 "Web Winkels">
|
||||
<!ENTITY wappalyzer.cat7 "Photo Gallerijen">
|
||||
<!ENTITY wappalyzer.cat8 "Wikis">
|
||||
<!ENTITY wappalyzer.cat9 "Hosting Panelen">
|
||||
<!ENTITY wappalyzer.cat10 "Analytics">
|
||||
<!ENTITY wappalyzer.cat11 "Blogs">
|
||||
<!ENTITY wappalyzer.cat12 "JavaScript Frameworks">
|
||||
<!ENTITY wappalyzer.cat13 "Issue Trackers">
|
||||
<!ENTITY wappalyzer.cat14 "Video Spelers">
|
||||
<!ENTITY wappalyzer.cat15 "Comment Systemen">
|
||||
<!ENTITY wappalyzer.cat16 "CAPTCHAs">
|
||||
<!ENTITY wappalyzer.cat17 "Font Scripts">
|
||||
<!ENTITY wappalyzer.cat18 "Web Frameworks">
|
||||
<!ENTITY wappalyzer.cat19 "Overige">
|
||||
<!ENTITY wappalyzer.cat20 "Editors">
|
||||
<!ENTITY wappalyzer.cat21 "LMS">
|
||||
<!ENTITY wappalyzer.cat22 "Web Servers">
|
||||
<!ENTITY wappalyzer.cat23 "Cache Tools">
|
||||
<!ENTITY wappalyzer.cat24 "Rich Text Editors">
|
||||
<!ENTITY wappalyzer.cat25 "Javascript Graphics">
|
||||
<!ENTITY wappalyzer.cat26 "Mobiele Frameworks">
|
||||
<!ENTITY wappalyzer.cat27 "Programmeer Talen">
|
||||
<!ENTITY wappalyzer.cat28 "Operating Systems">
|
||||
<!ENTITY wappalyzer.cat30 "Web Mail">
|
||||
<!ENTITY wappalyzer.cat31 "CDN">
|
||||
<!ENTITY wappalyzer.cat32 "Marketing Automatisering">
|
||||
<!ENTITY wappalyzer.cat33 "Web Server Extenties">
|
||||
<!ENTITY wappalyzer.cat34 "Databases">
|
||||
<!ENTITY wappalyzer.cat35 "Landkaarten">
|
||||
<!ENTITY wappalyzer.cat36 "Advertentie Netwerken">
|
||||
<!ENTITY wappalyzer.cat37 "Network Apparaten">
|
||||
<!ENTITY wappalyzer.cat38 "Media Servers">
|
||||
<!ENTITY wappalyzer.cat39 "Webcams">
|
||||
<!ENTITY wappalyzer.cat40 "Printers">
|
@ -1,44 +0,0 @@
|
||||
wappalyzer.name = Wappalyzer
|
||||
wappalyzer.noAppsDetected = Geen applications gedetecteerd
|
||||
wappalyzer.addonBar = Wappalyzer is in de add-on balk geplaatst. Om de add-on te laten zien, sluit dit bericht en druk Ctrl+/.
|
||||
|
||||
wappalyzer.cat1 = CMS
|
||||
wappalyzer.cat2 = Forum
|
||||
wappalyzer.cat3 = Database Manager
|
||||
wappalyzer.cat4 = Documentatie Tool
|
||||
wappalyzer.cat5 = Widget
|
||||
wappalyzer.cat6 = Web Winkel
|
||||
wappalyzer.cat7 = Photo Gallerij
|
||||
wappalyzer.cat8 = Wiki
|
||||
wappalyzer.cat9 = Hosting Paneel
|
||||
wappalyzer.cat10 = Analytics
|
||||
wappalyzer.cat11 = Blog
|
||||
wappalyzer.cat12 = JavaScript Framework
|
||||
wappalyzer.cat13 = Issue Tracker
|
||||
wappalyzer.cat14 = Video Speler
|
||||
wappalyzer.cat15 = Comment Systeem
|
||||
wappalyzer.cat16 = CAPTCHA
|
||||
wappalyzer.cat17 = Font Script
|
||||
wappalyzer.cat18 = Web Framework
|
||||
wappalyzer.cat19 = Overige
|
||||
wappalyzer.cat20 = Editor
|
||||
wappalyzer.cat21 = LMS
|
||||
wappalyzer.cat22 = Web Server
|
||||
wappalyzer.cat23 = Cache Tool
|
||||
wappalyzer.cat24 = Rich Text Editor
|
||||
wappalyzer.cat25 = Javascript Graphics
|
||||
wappalyzer.cat26 = Mobiel Framework
|
||||
wappalyzer.cat27 = Programmeer Taal
|
||||
wappalyzer.cat28 = Operating System
|
||||
wappalyzer.cat29 = Zoek Machine
|
||||
wappalyzer.cat30 = Web Mail
|
||||
wappalyzer.cat31 = CDN
|
||||
wappalyzer.cat32 = Marketing Automatisering
|
||||
wappalyzer.cat33 = Web Server Extentie
|
||||
wappalyzer.cat34 = Database
|
||||
wappalyzer.cat35 = Landkaart
|
||||
wappalyzer.cat36 = Advertentie Netwerk
|
||||
wappalyzer.cat37 = Network Apparaat
|
||||
wappalyzer.cat38 = Media Server
|
||||
wappalyzer.cat39 = Webcam
|
||||
wappalyzer.cat40 = Printer
|
@ -1,12 +0,0 @@
|
||||
#wappalyzer-container {
|
||||
margin: 0 3px;
|
||||
}
|
||||
|
||||
#wappalyzer-container > image {
|
||||
height: 16px;
|
||||
margin-left: 3px;
|
||||
}
|
||||
|
||||
menuitem.wappalyzer-application {
|
||||
font-weight: bold;
|
||||
}
|
Before Width: | Height: | Size: 716 B |
Before Width: | Height: | Size: 281 B |
Before Width: | Height: | Size: 613 B |
Before Width: | Height: | Size: 9.5 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 634 B |
Before Width: | Height: | Size: 373 B |
@ -1,72 +0,0 @@
|
||||
(function() {
|
||||
'use strict';
|
||||
|
||||
var
|
||||
data = {},
|
||||
lastEnv = [],
|
||||
prefs = sendSyncMessage('wappalyzer', { action: 'get prefs' })[0]
|
||||
;
|
||||
|
||||
addEventListener('DOMContentLoaded', function() {
|
||||
removeEventListener('DOMContentLoaded', onLoad, false);
|
||||
|
||||
onLoad();
|
||||
}, false);
|
||||
|
||||
function onLoad() {
|
||||
if ( content.document.contentType != 'text/html' ) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ( prefs.analyzeJavaScript && prefs.analyzeOnLoad ) {
|
||||
content.document.documentElement.addEventListener('load', function() {
|
||||
var env = Object.keys(content.wrappedJSObject).slice(0, 500);
|
||||
|
||||
lastEnv = env;
|
||||
|
||||
// Only analyze new variables
|
||||
env = { env: env.filter(function(i) { return lastEnv.indexOf(i) === -1; }) };
|
||||
|
||||
if ( env.length ) {
|
||||
sendAsyncMessage('wappalyzer', {
|
||||
action: 'analyze',
|
||||
analyze: { env: env }
|
||||
});
|
||||
}
|
||||
|
||||
env = null;
|
||||
|
||||
removeEventListener('load', onLoad, true);
|
||||
}, true);
|
||||
}
|
||||
|
||||
// HTML
|
||||
var html = content.document.documentElement.outerHTML;
|
||||
|
||||
// Comments outside HTML
|
||||
//if ( content.document.lastChild.nodeType === 8 ) {
|
||||
//content.alert(content.document.lastChild.nodeValue);
|
||||
//}
|
||||
|
||||
if ( html.length > 50000 ) {
|
||||
html = html.substring(0, 25000) + html.substring(html.length - 25000, html.length);
|
||||
}
|
||||
|
||||
data = { html: html };
|
||||
|
||||
if ( prefs.analyzeJavaScript ) {
|
||||
data.env = Object.keys(content.wrappedJSObject).slice(0, 500);
|
||||
|
||||
lastEnv = data.env;
|
||||
}
|
||||
|
||||
sendAsyncMessage('wappalyzer', {
|
||||
action: 'analyze',
|
||||
hostname: content.location.hostname,
|
||||
url: content.location.href,
|
||||
analyze: data
|
||||
});
|
||||
|
||||
data = null;
|
||||
}
|
||||
})();
|
@ -1,123 +0,0 @@
|
||||
:: Copyright (c) 2012 q-- <https://github.com/q-->
|
||||
::
|
||||
:: Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
::
|
||||
:: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
::
|
||||
:: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
|
||||
|
||||
:: ln == mklink /h
|
||||
:: hard link folders (dir junction) = mklink /j dir1 dir2
|
||||
:: hard link files = mklink /h
|
||||
:: ln -f for folder: if exist FOLDER_TO_REPLACE_WITH_LINK rmdir /s FOLDER_TO_REPLACE_WITH_LINK&&mklink /j FOLDER_TO_REPLACE_WITH_LINK FOLDER_TO_LINK_TO
|
||||
:: ln -f for file: if exist FILE_TO_REPLACE_WITH_LINK del FILE_TO_REPLACE_WITH_LINK&&mklink /h FILE_TO_REPLACE_WITH_LINK FILE_TO_LINK_TO
|
||||
|
||||
|
||||
:: FIREFOX ADD-ON
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons drivers\firefox-xul\skin\images\icons
|
||||
if exist drivers\firefox-xul\skin\images\icons rmdir /q /s drivers\firefox-xul\skin\images\icons
|
||||
mklink /j drivers\firefox-xul\skin\images\icons share\images\icons\
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\firefox-xul\content
|
||||
if exist drivers\firefox-xul\content\apps.json del drivers\firefox-xul\content\apps.json
|
||||
mklink /h drivers\firefox-xul\content\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\firefox-xul\content\js
|
||||
if exist drivers\firefox-xul\content\js\wappalyzer.js del drivers\firefox-xul\content\js\wappalyzer.js
|
||||
mklink /h drivers\firefox-xul\content\js\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: FIREFOX SKD
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons drivers\firefox\images\icons
|
||||
if exist drivers\firefox\images\icons rmdir /q /s drivers\firefox\images\icons
|
||||
mklink /j drivers\firefox\images\icons share\images\icons
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\firefox\data
|
||||
if exist drivers\firefox\data\apps.json del drivers\firefox\data\apps.json
|
||||
mklink /h drivers\firefox\data\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\firefox\lib
|
||||
if exist drivers\firefox\lib\wappalyzer.js del drivers\firefox\lib\wappalyzer.js
|
||||
mklink /h drivers\firefox\lib\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: CHROME EXTENSION
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons drivers\chrome\images\icons
|
||||
if exist drivers\chrome\images\icons rmdir /q /s drivers\chrome\images\icons
|
||||
mklink /j drivers\chrome\images\icons share\images\icons
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\chrome
|
||||
if exist drivers\chrome\apps.json del drivers\chrome\apps.json
|
||||
mklink /h drivers\chrome\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\chrome\js
|
||||
if exist drivers\chrome\js\wappalyzer.js del drivers\chrome\js\wappalyzer.js
|
||||
mklink /h drivers\chrome\js\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: BOOKMARKLET
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons drivers\bookmarklet\images\icons
|
||||
if exist drivers\bookmarklet\images\icons rmdir /q /s drivers\bookmarklet\images\icons
|
||||
mklink /j drivers\bookmarklet\images\icons share\images\icons
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\bookmarklet\json
|
||||
if exist drivers\bookmarklet\json del drivers\bookmarklet\json
|
||||
mklink /h drivers\bookmarklet\json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\bookmarklet\js
|
||||
if exist drivers\bookmarklet\js\wappalyzer.js del drivers\bookmarklet\js\wappalyzer.js
|
||||
mklink /h drivers\bookmarklet\js\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: HTML DRIVER
|
||||
::
|
||||
::Sync icons folder
|
||||
::ln -f share\images\icons drivers\html\images\icons
|
||||
if exist drivers\html\images\icons rmdir /q /s drivers\html\images\icons
|
||||
mklink /j drivers\html\images\icons share\images\icons
|
||||
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\html
|
||||
if exist drivers\html\apps.json del drivers\html\apps.json
|
||||
mklink /h drivers\html\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\html\js
|
||||
if exist drivers\html\js\wappalyzer.js del drivers\html\js\wappalyzer.js
|
||||
mklink /h drivers\html\js\wappalyzer.js share\js\wappalyzer.js
|
||||
|
||||
|
||||
|
||||
:: PHP DRIVER
|
||||
::
|
||||
::Sync apps JSON
|
||||
::ln -f share\apps.json drivers\php
|
||||
if exist drivers\php\apps.json del drivers\php\apps.json
|
||||
mklink /h drivers\php\apps.json share\apps.json
|
||||
|
||||
::Sync Wappalyzer.js
|
||||
::ln -f share\js\wappalyzer.js drivers\php\js
|
||||
if exist drivers\php\js\wappalyzer.js del drivers\php\js\wappalyzer.js
|
||||
mklink /h drivers\php\js\wappalyzer.js share\js\wappalyzer.js
|
@ -1,27 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
ln -f share/images/icons/*.png drivers/firefox-xul/skin/images/icons
|
||||
ln -f share/apps.json drivers/firefox-xul/content
|
||||
ln -f share/js/wappalyzer.js drivers/firefox-xul/content/js
|
||||
|
||||
ln -f share/images/icons/*.png drivers/firefox/data/images/icons
|
||||
ln -f share/apps.json drivers/firefox/data
|
||||
ln -f share/js/wappalyzer.js drivers/firefox/lib
|
||||
|
||||
ln -f share/images/icons/*.png drivers/chrome/images/icons
|
||||
ln -f share/apps.json drivers/chrome
|
||||
ln -f share/js/wappalyzer.js drivers/chrome/js
|
||||
|
||||
ln -f share/images/icons/*.png drivers/bookmarklet/images/icons
|
||||
ln -f share/apps.json drivers/bookmarklet/json
|
||||
ln -f share/js/wappalyzer.js drivers/bookmarklet/js
|
||||
|
||||
ln -f share/images/icons/*.png drivers/html/images/icons
|
||||
ln -f share/apps.json drivers/html
|
||||
ln -f share/js/wappalyzer.js drivers/html/js
|
||||
|
||||
ln -f share/apps.json drivers/php
|
||||
ln -f share/js/wappalyzer.js drivers/php/js
|
||||
|
||||
ln -f share/apps.json drivers/python
|
||||
ln -f share/js/wappalyzer.js drivers/python/js
|
@ -1,61 +0,0 @@
|
||||
:: package.cmd
|
||||
:: Copyright (c) 2012-2014 q-- <https://github.com/q-->
|
||||
::
|
||||
:: Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
::
|
||||
:: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
::
|
||||
:: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
@echo off
|
||||
|
||||
::Links
|
||||
call links.cmd
|
||||
|
||||
::Remove old packages
|
||||
if exist wappalyzer-chrome.zip del wappalyzer-chrome.zip
|
||||
if exist wappalyzer-firefox.xpi del wappalyzer-firefox.xpi
|
||||
|
||||
::Check if where.exe is present
|
||||
where.exe /Q cmd.exe
|
||||
IF NOT %ERRORLEVEL%==0 GOTO noWhere
|
||||
|
||||
::Check for 7-Zip
|
||||
where.exe 7z.exe
|
||||
IF %ERRORLEVEL%==0 GOTO sevenZipIsInPath
|
||||
|
||||
::Ok, WHERE can't find 7-Zip. Check at the default install location
|
||||
IF EXIST "C:\Program Files\7-zip\7z.exe" (
|
||||
set zip="C:\Program Files\7-zip\7z.exe"
|
||||
GOTO Package
|
||||
) ELSE (
|
||||
echo.7-Zip was not found.
|
||||
echo.Please download 7-Zip from http://7-zip.org/ and add 7z.exe ^(the command-line edition^) to PATH.
|
||||
pause
|
||||
goto :end
|
||||
)
|
||||
|
||||
|
||||
::WHERE command isn't found. Try it anyway.
|
||||
::(WHERE is present by default in Vista and newer, older Windows versions require that you install it yourself.)
|
||||
:noWhere
|
||||
echo.WHERE.exe was not found on your system.
|
||||
echo.If the script fails, please download 7-Zip from http://7-zip.org/ and add 7z.exe (the command-line edition) to PATH.
|
||||
|
||||
|
||||
::7-Zip command line is found in PATH
|
||||
:sevenZipIsInPath
|
||||
set zip=7z.exe
|
||||
|
||||
|
||||
:Package
|
||||
::Pack Chrome extension
|
||||
cd drivers\chrome&&%zip% a -tzip -mx9 ..\..\wappalyzer-chrome.zip *
|
||||
cd..\..
|
||||
|
||||
::Pack Firefox extension
|
||||
::cd drivers\firefox&&%zip% a -tzip -mx9 ..\..\wappalyzer-firefox.xpi *
|
||||
::cd..\..
|
||||
|
||||
|
||||
:end
|
||||
@echo on
|
@ -1,10 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
path=`pwd`
|
||||
|
||||
./links.sh
|
||||
|
||||
rm -f wappalyzer-chrome.zip wappalyzer-firefox.xpi
|
||||
|
||||
cd $path/drivers/chrome && zip -r $path/wappalyzer-chrome.zip .
|
||||
#cd $path/drivers/firefox && zip -r $path/wappalyzer-firefox.xpi .
|
@ -0,0 +1,82 @@
|
||||
{
|
||||
"title": "Wappalyzer Schema",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"categories": {
|
||||
"type": "object",
|
||||
"required": true,
|
||||
"additionalProperties": false,
|
||||
"patternProperties": {
|
||||
"^[0-9]+$": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"apps": {
|
||||
"type": "object",
|
||||
"required": true,
|
||||
"additionalProperties": {
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"cats": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "number"
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"env": {
|
||||
"type": [ "string", "array" ],
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"headers": {
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"html": {
|
||||
"type": [ "string", "array" ],
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"excludes": {
|
||||
"type": [ "string", "array" ],
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"implies": {
|
||||
"type": [ "string", "array" ],
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"meta": {
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"script": {
|
||||
"type": [ "string", "array" ],
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"url": {
|
||||
"type": "string"
|
||||
},
|
||||
"website": {
|
||||
"type": "string",
|
||||
"required": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 594 B |
Before Width: | Height: | Size: 781 B |
Before Width: | Height: | Size: 587 B |
@ -0,0 +1,3 @@
|
||||
images/icons/*.png
|
||||
js/wappalyzer.js
|
||||
js/apps.js
|
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 3.9 KiB |
@ -0,0 +1,3 @@
|
||||
apps.json
|
||||
images/icons/*.png
|
||||
js/wappalyzer.js
|
@ -0,0 +1,58 @@
|
||||
{
|
||||
"github": { "message": "Fork-uiește Wappalyzer pe GitHub!" },
|
||||
"twitter": { "message": "Urmărește Wappalyzer pe Twitter" },
|
||||
"website": { "message": "Mergi la wappalyzer.com" },
|
||||
"options": { "message": "Opțiuni Wappalyzer" },
|
||||
"optionsSave": { "message": "Salvează opțiuni" },
|
||||
"optionsSaved": { "message": "Salvat" },
|
||||
"optionUpgradeMessage": { "message": "Anunță-mă dacă sunt actualizări" },
|
||||
"optionTracking": { "message": "Trimite rapoarte anonime despre aplicațiile detectate către wappalyzer.com pentru cercetare" },
|
||||
"nothingToDo": { "message": "Nimic de făcut pe pagina curentă." },
|
||||
"noAppsDetected": { "message": "Nici o aplicație detectată." },
|
||||
"categoryName1": { "message": "CMS" },
|
||||
"categoryName2": { "message": "Forum de discuții" },
|
||||
"categoryName3": { "message": "Manager baze de date" },
|
||||
"categoryName4": { "message": "Unealtă pentru documentare" },
|
||||
"categoryName5": { "message": "Widget" },
|
||||
"categoryName10": { "message": "Analiză trafic web" },
|
||||
"categoryName11": { "message": "Blog" },
|
||||
"categoryName12": { "message": "Framework JavaScript" },
|
||||
"categoryName13": { "message": "Tracker probleme" },
|
||||
"categoryName14": { "message": "Player Video" },
|
||||
"categoryName15": { "message": "Sistem de comentarii" },
|
||||
"categoryName16": { "message": "Verificare Captcha" },
|
||||
"categoryName17": { "message": "Script pentru fonturi" },
|
||||
"categoryName18": { "message": "Framework Web" },
|
||||
"categoryName19": { "message": "Divers" },
|
||||
"categoryName20": { "message": "Editor" },
|
||||
"categoryName21": { "message": "LMS" },
|
||||
"categoryName22": { "message": "Server Web" },
|
||||
"categoryName23": { "message": "Unealtă Cache" },
|
||||
"categoryName24": { "message": "Editor Texte Rich" },
|
||||
"categoryName25": { "message": "Grafică JavaScript" },
|
||||
"categoryName26": { "message": "Framework Mobile" },
|
||||
"categoryName27": { "message": "Limbaj de programare" },
|
||||
"categoryName28": { "message": "Sistem de operare" },
|
||||
"categoryName29": { "message": "Motor de căutare" },
|
||||
"categoryName30": { "message": "Poștă electronică" },
|
||||
"categoryName31": { "message": "CDN" },
|
||||
"categoryName32": { "message": "Automatizare marketing" },
|
||||
"categoryName33": { "message": "Extensie server web" },
|
||||
"categoryName34": { "message": "Bază de date" },
|
||||
"categoryName35": { "message": "Hartă" },
|
||||
"categoryName36": { "message": "Rețea de advertising" },
|
||||
"categoryName37": { "message": "Serviciu rețea" },
|
||||
"categoryName38": { "message": "Server Media" },
|
||||
"categoryName39": { "message": "Webcam" },
|
||||
"categoryName40": { "message": "Imprimantă" },
|
||||
"categoryName41": { "message": "Sistem de plată" },
|
||||
"categoryName42": { "message": "Manager cuvinte cheie" },
|
||||
"categoryName43": { "message": "Paywall" },
|
||||
"categoryName44": { "message": "Build/CI System" },
|
||||
"categoryName45": { "message": "SCADA System" },
|
||||
"categoryName46": { "message": "Remote Access" },
|
||||
"categoryName47": { "message": "Development Tool" },
|
||||
"categoryName48": { "message": "Network Storage" },
|
||||
"categoryName49": { "message": "Feed Readers" },
|
||||
"categoryName50": { "message": "Document Management Systems" }
|
||||
}
|
Before Width: | Height: | Size: 281 B After Width: | Height: | Size: 281 B |
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.5 KiB |
Before Width: | Height: | Size: 665 B After Width: | Height: | Size: 665 B |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 634 B After Width: | Height: | Size: 634 B |
Before Width: | Height: | Size: 373 B After Width: | Height: | Size: 373 B |
@ -0,0 +1,3 @@
|
||||
data/apps.json
|
||||
data/images/icons/*.png
|
||||
lib/wappalyzer.js
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 7.2 KiB After Width: | Height: | Size: 7.2 KiB |
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.5 KiB |