Merge pull request #1 from ElbertF/master

update
main
P THE AWESOME 10 years ago
commit 5d92533298

@ -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

12
.gitignore vendored

@ -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/

@ -17,6 +17,31 @@ Refer to the [wiki](https://github.com/ElbertF/Wappalyzer/wiki) for
*Licensed under the [GPL](https://github.com/ElbertF/Wappalyzer/blob/master/LICENSE).*
Donate Bitcoin: 16gb4uGDAjaeRJwKVmKr2EXa8x2fmvT8EQ - *Thanks!*
![QR Code](https://wappalyzer.com/sites/default/themes/wappalyzer/images/bitcoinqrcode.png)
## Getting Started
This section describes how to set up a development environment. Everything you
need is contained in a [Docker image](https://registry.hub.docker.com/u/wappalyzer/dev/)
which is managed by Vagrant.
Running this environment optional but recommended as it provides some helpful tools.
First, install [Docker](https://www.docker.com/) and [Vagrant](https://www.vagrantup.com/)
on your system.
Clone the Wappalyzer repository and open the newly created directory in a
terminal. Run `vagrant up` to start the environment.
Run `vagrant ssh` to access the environment and read usage instructions.
```shell
$ git clone https://github.com/ElbertF/Wappalyzer.git wappalyzer
$ cd wappalyzer
$ vagrant up
$ vagrant ssh
```
To stop the environment, run `vagrant halt`.
If a new Docker image becomes available, rebuild the environment with
`vagrant destroy -y && vagrant up`.

20
Vagrantfile vendored

@ -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

File diff suppressed because it is too large Load Diff

@ -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,60 +0,0 @@
<!ENTITY wappalyzer.name "Wappalyzer">
<!ENTITY wappalyzer.help "Wappalyzer - Cliquer pour plus de détails et options">
<!ENTITY wappalyzer.showIcons "Montrer les icônes des applications">
<!ENTITY wappalyzer.preferences "Plus d'options...">
<!ENTITY wappalyzer.addonBar "Placer dans la barre des modules (Ctrl+/)">
<!ENTITY wappalyzer.categories "Gérer les catégories">
<!ENTITY wappalyzer.performance "Performance">
<!ENTITY wappalyzer.interface "Interface">
<!ENTITY wappalyzer.tracking "Traçage">
<!ENTITY wappalyzer.research "Envoyer anonymement des rapports sur les applications détectées à wappalyzer.com pour la recherche">
<!ENTITY wappalyzer.analyzeHeaders "Analyser les headers">
<!ENTITY wappalyzer.analyzeJavaScript "Analyser le JavaScript">
<!ENTITY wappalyzer.analyzeOnload "Analyser les évènements au chargement">
<!ENTITY wappalyzer.feedback "Donner votre avis">
<!ENTITY wappalyzer.github "Github">
<!ENTITY wappalyzer.twitter "Twitter">
<!ENTITY wappalyzer.website "Aller à wappalyzer.com">
<!ENTITY wappalyzer.cat1 "CMS">
<!ENTITY wappalyzer.cat2 "Forums">
<!ENTITY wappalyzer.cat3 "Gestionnaires de base de données">
<!ENTITY wappalyzer.cat4 "Outils de documentation">
<!ENTITY wappalyzer.cat5 "Widgets">
<!ENTITY wappalyzer.cat6 "Boutiques en ligne">
<!ENTITY wappalyzer.cat7 "Galeries photo">
<!ENTITY wappalyzer.cat8 "Wikis">
<!ENTITY wappalyzer.cat9 "Gestionnaires de serveur">
<!ENTITY wappalyzer.cat10 "Outils de statistiques">
<!ENTITY wappalyzer.cat11 "Blogs">
<!ENTITY wappalyzer.cat12 "Frameworks JavaScript ">
<!ENTITY wappalyzer.cat13 "Outils de suivi de problèmes">
<!ENTITY wappalyzer.cat14 "Lecteurs de vidéos">
<!ENTITY wappalyzer.cat15 "Systèmes de commentaires">
<!ENTITY wappalyzer.cat16 "CAPTCHAs">
<!ENTITY wappalyzer.cat17 "Script de police">
<!ENTITY wappalyzer.cat18 "Frameworks web">
<!ENTITY wappalyzer.cat19 "Divers">
<!ENTITY wappalyzer.cat20 "Editeurs">
<!ENTITY wappalyzer.cat21 "LMS">
<!ENTITY wappalyzer.cat22 "Serveurs web">
<!ENTITY wappalyzer.cat23 "Outils de cache">
<!ENTITY wappalyzer.cat24 "Editeurs WYSIWYG">
<!ENTITY wappalyzer.cat25 "Graphismes JavaScript">
<!ENTITY wappalyzer.cat26 "Frameworks pour mobiles">
<!ENTITY wappalyzer.cat27 "Languages de programmation">
<!ENTITY wappalyzer.cat28 "Systèmes d'exploitation">
<!ENTITY wappalyzer.cat29 "Moteurs de recherche">
<!ENTITY wappalyzer.cat30 "Web Mail">
<!ENTITY wappalyzer.cat31 "CDN">
<!ENTITY wappalyzer.cat32 "Logiciel de marketing">
<!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 = 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;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 716 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 613 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 634 B

Binary file not shown.

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
}
}
}
}
}
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 594 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 781 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 587 B

File diff suppressed because it is too large Load Diff

@ -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

@ -10,17 +10,14 @@
<style type="text/css">
body {
color: #333;
color: #000;
font-family: Verdana, Arial, sans-serif;
font-size: 14px;
}
#bookmarklet {
background: #f8f8f8;
border: 1px solid #ccc;
border-radius: 2px;
color: #333;
font-weight: bold;
border: 1px solid #333;
color: #000;
display: inline-block;
padding: 10px 25px;
text-decoration: none;
@ -36,18 +33,15 @@
<a id="bookmarklet" href="javascript: void(0);">Wappalyzer</a>
</p>
<p>
<em>Note: this is a beta version and may stop working at some point. Check back here for a new version if this happens.</em>
</p>
<div id="bookmarklet-code" style="display: none">
(function() {
var
d = document,
e = d.getElementById('wappalyzer-container')
;
e = d.getElementById('wappalyzer-container');
if ( e !== null ) { d.body.removeChild(e); }
if ( e !== null ) {
d.body.removeChild(e);
}
var
u = 'https://wappalyzer.com/bookmarklet/',
@ -55,8 +49,7 @@
c = d.createElement('div'),
p = d.createElement('div'),
l = d.createElement('link'),
s = d.createElement('script')
;
s = d.createElement('script');
c.setAttribute('id', 'wappalyzer-container');

@ -12,6 +12,7 @@
container = d.getElementById('wappalyzer-container'),
domain = window.top.location.host,
url = window.top.location.href,
hasOwn = Object.prototype.hasOwnProperty,
categoryNames = {
1: 'CMS',
2: 'Message Board',
@ -41,7 +42,7 @@
26: 'Mobile Framework',
27: 'Programming Language',
28: 'Operating System',
29: 'Search Engine'
29: 'Search Engine',
30: 'Web Mail',
31: 'CDN',
32: 'Marketing Automation',
@ -139,6 +140,9 @@
if ( w.detected[url] != null && Object.keys(w.detected[url]).length ) {
for ( app in w.detected[url] ) {
if(!hasOwn.call(w.detected[url], app)) {
continue;
}
html +=
'<div class="wappalyzer-app' + ( first ? ' wappalyzer-first' : '' ) + '">' +
'<a target="_blank" class="wappalyzer-application" href="' + w.config.websiteURL + 'applications/' + app.toLowerCase().replace(/ /g, '-').replace(/[^a-z0-9-]/g, '') + '">' +
@ -149,6 +153,9 @@
;
for ( i in w.apps[app].cats ) {
if(!hasOwn.call(w.apps[app].cats, i)) {
continue;
}
category = w.apps[app].cats[i];
html += '<a target="_blank" class="wappalyzer-category" href="' + w.config.websiteURL + 'categories/' + w.categories[category] + '">' + categoryNames[category] + '</a>';

@ -0,0 +1,3 @@
apps.json
images/icons/*.png
js/wappalyzer.js

@ -41,9 +41,18 @@
"categoryName34": { "message": "Database" },
"categoryName35": { "message": "Map" },
"categoryName36": { "message": "Advertising Network" },
"categoryName37": { "message": "Network Sevice" },
"categoryName37": { "message": "Network Service" },
"categoryName38": { "message": "Media Server" },
"categoryName39": { "message": "Webcam" },
"categoryName40": { "message": "Printer" },
"categoryName41": { "message": "Payment Processor" }
"categoryName41": { "message": "Payment Processor" },
"categoryName42": { "message": "Tag Manager" },
"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" }
}

@ -49,5 +49,14 @@
"categoryName38": { "message": "Media Server" },
"categoryName39": { "message": "Webcam" },
"categoryName40": { "message": "Printer" },
"categoryName41": { "message": "Payment Processor" }
"categoryName41": { "message": "Payment Processor" },
"categoryName42": { "message": "Tag Manager" },
"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" }
}

@ -21,7 +21,7 @@
"categoryName10": { "message": "Outil de statistiques" },
"categoryName11": { "message": "Blog" },
"categoryName12": { "message": "Framework JavaScript" },
"categoryName13": { "message": "Outils de suivi de problèmes" },
"categoryName13": { "message": "Outil de suivi de problèmes" },
"categoryName14": { "message": "Lecteur de vidéos" },
"categoryName15": { "message": "Système de commentaires" },
"categoryName16": { "message": "Captcha" },
@ -41,13 +41,22 @@
"categoryName30": { "message": "Web Mail" },
"categoryName31": { "message": "CDN" },
"categoryName32": { "message": "Logiciel de marketing" },
"categoryName33": { "message": "Web Server Extension" },
"categoryName34": { "message": "Database" },
"categoryName35": { "message": "Map" },
"categoryName36": { "message": "Advertzing Network" },
"categoryName37": { "message": "Network Sevice" },
"categoryName38": { "message": "Media Server" },
"categoryName33": { "message": "Extension de serveur web" },
"categoryName34": { "message": "Base de données" },
"categoryName35": { "message": "Carte" },
"categoryName36": { "message": "Réseau publicitaire" },
"categoryName37": { "message": "Périphérique réseau" },
"categoryName38": { "message": "Serveur multimédia" },
"categoryName39": { "message": "Webcam" },
"categoryName40": { "message": "Printer" },
"categoryName41": { "message": "Payment Processor" }
"categoryName40": { "message": "Imprimante" },
"categoryName41": { "message": "Service de paiement" },
"categoryName42": { "message": "Tag Manager" },
"categoryName43": { "message": "Paywall" },
"categoryName44": { "message": "Système CI" },
"categoryName45": { "message": "Système SCADA" },
"categoryName46": { "message": "Accès à distance" },
"categoryName47": { "message": "Outil de développement" },
"categoryName48": { "message": "Stockage réseau" },
"categoryName49": { "message": "Lecteur RSS" },
"categoryName50": { "message": "Système de gestion de documents" }
}

@ -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" }
}

@ -0,0 +1,58 @@
{
"categoryName1" : { "message" : "CMS" },
"categoryName2" : { "message" : "Форум" },
"categoryName3" : { "message" : "Менеджер БД" },
"categoryName4" : { "message" : "Документация" },
"categoryName5" : { "message" : "Виджет" },
"categoryName10" : { "message" : "Аналитика" },
"categoryName11" : { "message" : "Блог" },
"categoryName12" : { "message" : "JS фреймворк" },
"categoryName13" : { "message" : "Баг трекер" },
"categoryName14" : { "message" : "Видео плеер" },
"categoryName15" : { "message" : "Система комментариев" },
"categoryName16" : { "message" : "Капча" },
"categoryName17" : { "message" : "Шрифт" },
"categoryName18" : { "message" : "Веб фреймворк" },
"categoryName19" : { "message" : "Прочее" },
"categoryName20" : { "message" : "HTML редактор" },
"categoryName21" : { "message" : "LMS" },
"categoryName22" : { "message" : "Веб сервер" },
"categoryName23" : { "message" : "Кеширование" },
"categoryName24" : { "message" : "WYSIWYG редактор" },
"categoryName25" : { "message" : "JS графика" },
"categoryName26" : { "message" : "Мобильный фреймворк" },
"categoryName27" : { "message" : "Язык программирования" },
"categoryName28" : { "message" : "Операционная система" },
"categoryName29" : { "message" : "Поисковый движок" },
"categoryName30" : { "message" : "Веб почта" },
"categoryName31" : { "message" : "CDN" },
"categoryName32" : { "message" : "Управление маркетингом" },
"categoryName33" : { "message" : "Расширение Веб сервера" },
"categoryName34" : { "message" : "База данных" },
"categoryName35" : { "message" : "Карта" },
"categoryName36" : { "message" : "Рекламная сеть" },
"categoryName37" : { "message" : "Сетевая служба" },
"categoryName38" : { "message" : "Медиа сервер" },
"categoryName39" : { "message" : "Вебкамера" },
"categoryName40" : { "message" : "Принтер" },
"categoryName41" : { "message" : "Провайдер платежей" },
"categoryName42" : { "message" : "Менеджер тэгов" },
"categoryName43" : { "message" : "Paywall" },
"categoryName44" : { "message" : "Система непрерывной интеграции" },
"categoryName45" : { "message" : "Система SCADA" },
"categoryName46" : { "message" : "Удаленное управление" },
"categoryName47" : { "message" : "Утилита для разработчиков" },
"categoryName48" : { "message" : "Сетевое хранилище" },
"categoryName49" : { "message" : "Граббер контента" },
"categoryName50" : { "message" : "Управление документами" },
"github" : { "message" : "Форкнуть на GitHub!" },
"noAppsDetected" : { "message" : "Нет данных о сайте" },
"nothingToDo" : { "message" : "Тут нечего искать" },
"optionTracking" : { "message" : "Анонимно отправлять статистику распознанных данных на сервер (для улучшения расширения)" },
"optionUpgradeMessage" : { "message" : "Оповещать меня о новых обновлениях" },
"options" : { "message" : "Настройки Wappalyzer" },
"optionsSave" : { "message" : "Сохранить" },
"optionsSaved" : { "message" : "Успешно сохранено!" },
"twitter" : { "message" : "Следите за новостями в Твиттере" },
"website" : { "message" : "Перейти на Wappalyzer.com" }
}

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

@ -26,7 +26,7 @@
init: function() {
w.log('init');
chrome.browserAction.setBadgeBackgroundColor({ color: [255, 102, 0, 255] });
//chrome.browserAction.setBadgeBackgroundColor({ color: [255, 102, 0, 255] });
// Load apps.json
var xhr = new XMLHttpRequest();
@ -189,7 +189,8 @@
for ( appName in w.detected[url] ) {
w.apps[appName].cats.forEach(function(cat) {
if ( cat == match && !found ) {
chrome.browserAction.setIcon({ tabId: tab.id, path: 'images/icons/' + appName + '.png' });
//chrome.browserAction.setIcon({ tabId: tab.id, path: 'images/icons/' + appName + '.png' });
chrome.pageAction.setIcon({ tabId: tab.id, path: 'images/icons/' + appName + '.png' });
found = true;
}
@ -197,7 +198,8 @@
}
});
chrome.browserAction.setBadgeText({ tabId: tab.id, text: count });
//chrome.browserAction.setBadgeText({ tabId: tab.id, text: count });
chrome.pageAction.show(tab.id);
};
},
@ -266,6 +268,8 @@
39, // Webcam
40, // Printer
36, // Advertising Network
42, // Tag Managers
43, // Paywalls
19 // Miscellaneous
]
};

@ -1,7 +1,7 @@
{ "name": "Wappalyzer",
"homepage_url": "https://wappalyzer.com?pk_campaign=chrome&pk_kwd=context",
"description": "Identifies software on the web",
"version": "2.32",
"version": "2.35",
"default_locale": "en",
"manifest_version": 2,
"icons": {
@ -9,7 +9,7 @@
"32": "images/icon_32.png",
"128": "images/icon_128.png"
},
"browser_action": {
"page_action": {
"default_icon": "images/icon_32.png",
"default_title": "Wappalyzer - click for details",
"default_popup": "popup.html"

@ -15,7 +15,7 @@
<div id="detected-apps"></div>
<div id="footer">
<a href="javascript: void(0);" id="options">Options</a>
<a href="javascript: void(0);" data-i18n="options" id="options">Options</a>
</div>
</body>
</html>

@ -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

@ -2,11 +2,13 @@
var lastEnv = [];
try {
if ( document && document.documentElement && document.contentType === 'text/html' ) {
if ( document && document.contentType === 'text/html' ) {
var
html = document.documentElement.outerHTML
html = new XMLSerializer().serializeToString(document)
env = [];
self.port.emit('log', html);
self.port.emit('log', 'init');
if ( html.length > 50000 ) {

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

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save