aboutsummaryrefslogtreecommitdiff
path: root/js/popup.js
blob: 6658fc00bc9b3754f985b9c347819ff26a8c7536 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
angular.module('popupApp', []).controller('PopupCtrl', ['$scope', function($s) {

	var storage = chrome.storage.local; //TODO: Change to sync when Firefox supports it...
	
	storage.get({disabled:false}, function(obj) {
		$s.disabled = obj.disabled;
		$s.$apply();
	});

	$s.toggleDisabled = function() {
		storage.get({disabled:false}, function(obj) {
			storage.set({disabled:!obj.disabled});
		  	$s.disabled = !obj.disabled;
		  	$s.$apply();
		});
    };
    

	storage.get({logging:false}, function(obj) {
		$s.logging = obj.logging;
		$s.$apply();
	});

    $s.toggleLogging = function() {
		storage.get({logging:false}, function(obj) {
			storage.set({logging:!obj.logging});
		  	$s.logging = !obj.logging;
		  	$s.$apply();
		});
	};

	$s.openRedirectorSettings = function() {

		//switch to open one if we have it to minimize conflicts
		var url = chrome.extension.getURL('redirector.html');
		
		//FIREFOXBUG: Firefox chokes on url:url filter if the url is a moz-extension:// url
		//so we don't use that, do it the more manual way instead.
		chrome.tabs.query({currentWindow:true}, function(tabs) {
			for (var i=0; i < tabs.length; i++) {
				if (tabs[i].url == url) {
					chrome.tabs.update(tabs[i].id, {active:true}, function(tab) {
						close();
					});
					return;
				}
			}

			chrome.tabs.create({url:url, active:true});
		});
		return;
	};
}]);