diff --git a/share/js/apps.js b/share/js/apps.js
index 372e174bd..d2c0d88a7 100644
--- a/share/js/apps.js
+++ b/share/js/apps.js
@@ -36,46 +36,46 @@
};
w.apps = {
- '1und1': { cats: [ 6 ], url: /\/shop\/catalog\/browse\?sessid\=/ },
- '1C-Bitrix': { cats: [ 1 ], html: /]+components\/bitrix/i, script: /1c\-bitrix/i },
+ '1und1': { cats: [ 6 ], url: /\/shop\/catalog\/browse\?sessid\=/, implies: [ 'PHP' ] },
+ '1C-Bitrix': { cats: [ 1 ], headers: { 'X-Powered-CMS': /Bitrix Site Manager/, 'Set-Cookie': /BITRIX_/i}, html: /]+components\/bitrix|(src|href)=("|')\/bitrix\/(js|templates)/i, script: /1c\-bitrix/i, implies: [ 'PHP' ] },
'2z Project': { cats: [ 1 ], meta: { 'generator': /2z project/i } },
'AddThis': { cats: [ 5 ], script: /addthis\.com\/js/, env: /^addthis$/ },
'Adobe GoLive': { cats: [ 20 ], meta: { 'generator': /Adobe GoLive/i } },
- 'Advanced Web Stats': { cats: [ 10 ], html: /aws.src = [^<]+caphyon\-analytics/i },
- 'Ametys': { cats: [ 1 ], meta: { 'generator': /(Ametys|Anyware Technologies)/i }, script: /STools.js/ },
- 'Amiro.CMS': { cats: [ 1 ], meta: { 'generator': /Amiro/i } },
+ 'Advanced Web Stats': { cats: [ 10 ], html: /aws.src = [^<]+caphyon\-analytics/i, implies: [ 'Java' ] },
+ 'Ametys': { cats: [ 1 ], meta: { 'generator': /(Ametys|Anyware Technologies)/i }, script: /STools.js/, implies: [ 'Java' ] },
+ 'Amiro.CMS': { cats: [ 1 ], meta: { 'generator': /Amiro/i }, html: /system_js\.php(\?|\-)script=/, implies: [ 'PHP' ] },
'AOLserver': { cats: [ 22 ], headers: { 'Server': /AOLserver/i } },
'Apache': { cats: [ 22 ], headers: { 'Server': /(Apache($|[^-])|HTTPD)/i } },
'Apache Tomcat': { cats: [ 22 ], headers: { 'Server': /Apache-Coyote/i } },
'Apache Traffic Server': { cats: [ 22 ], headers: { 'Server': /YTS/i } },
'Arc Forum': { cats: [ 2 ], html: /ping\.src = node\.href;/ },
'ATG Web Commerce': { cats: [ 6 ], headers: { 'X-ATG-Version': /ATG/i }, html: /<[^>]+_DARGS/ },
- 'Atlassian Confluence': { cats: [ 8 ], html: /Powered by ]+banshee-php\.org/i },
- 'Backbone.js': { cats: [ 12 ], script: /backbone.*\.js/, env: /^Backbone$/ },
- 'BIGACE': { cats: [ 1 ], meta: { 'generator': /BIGACE/ }, html: /Powered by ]+BIGACE|/ },
- 'CakePHP': { cats: [ 18 ], headers: { 'set-cookie': /cakephp=/ }, meta: { 'application-name': /CakePHP/ } },
- 'Cargo': { cats: [ 1 ], script: /\/cargo\./i, html: /]+Cargo feed/ },
+ 'CakePHP': { cats: [ 18 ], headers: { 'Set-Cookie': /cakephp=/i }, meta: { 'application-name': /CakePHP/i }, implies: [ 'PHP' ] },
+ 'Cargo': { cats: [ 1 ], meta: {'cargo_title': /.*/ }, script: /\/cargo\./i, html: /]+Cargo feed/, implies: [ 'PHP' ] },
'CentOS': { cats: [ 28 ], headers: { 'Server': /CentOS/i, 'X-Powered-By': /CentOS/i } },
- 'Chameleon': { cats: [ 1 ], meta: { 'generator': /chameleon\-cms/i } },
- 'chartbeat': { cats: [ 10 ], html: /function loadChartbeat\(\) {/i },
- 'Chamilo': { cats: [ 21 ], meta: { 'generator': /Chamilo/i }, headers: { 'X-Powered-By': /Chamilo/ } },
+ 'Chameleon': { cats: [ 1 ], meta: { 'generator': /chameleon\-cms/i }, implies: [ 'Apache', 'PHP' ] },
+ 'Chartbeat': { cats: [ 10 ], html: /function loadChartbeat\(\) {/i },
+ 'Chamilo': { cats: [ 21 ], meta: { 'generator': /Chamilo/i }, headers: { 'X-Powered-By': /Chamilo/i }, implies: [ 'PHP' ] },
'Cherokee': { cats: [ 22 ], headers: { 'Server': /Cherokee/i } },
- 'CKEditor': { cats: [ 24 ], env: /^CKEDITOR$/ },
- 'ClickHeat': { cats: [ 10 ], script: /clickheat.*\.js/i, env: /^clickHeatBrowser$/ },
+ 'CKEditor': { cats: [ 24 ], env: /^CKEDITOR$/i, implies: [ 'PHP' ] },
+ 'ClickHeat': { cats: [ 10 ], script: /clickheat.*\.js/i, env: /^clickHeatBrowser$/, implies: [ 'PHP' ] },
'ClickTale': { cats: [ 10 ], html: /if\(typeof ClickTale(Tag)*==("|')function("|')\)/, env: /^ClickTale/i },
'Clicky': { cats: [ 10 ], script: /static\.getclicky\.com/, env: /^clicky$/ },
- 'CMS Made Simple': { cats: [ 1 ], meta: { 'generator': /CMS Made Simple/i } },
+ 'CMS Made Simple': { cats: [ 1 ], meta: { 'generator': /CMS Made Simple/i }, implies: [ 'PHP' ] },
'CO2Stats': { cats: [ 10 ], html: /src=("|')http:\/\/www\.co2stats\.com\/propres\.php/ },
'CodeIgniter': { cats: [ 18 ], headers: { 'Set-Cookie': /(exp_last_activity|exp_tracker|ci_session)/ }, implies: [ 'PHP' ] },
'Commerce Server': { cats: [ 6 ], headers: { 'COMMERCE-SERVER-SOFTWARE': /.+/ } },
@@ -88,12 +88,12 @@
'Cosmoshop': { cats: [ 6 ], script: /cosmoshop_functions\.js/ },
'Cotonti': { cats: [ 1 ], meta: { 'generator': /Cotonti/i } },
'CouchDB': { cats: [ 22 ], headers: { 'Server': /CouchDB/i } },
- 'cPanel': { cats: [ 9 ], html: /