Userscript installation and updater
This commit is contained in:
@@ -7,7 +7,7 @@ Page.Userscript = new Class({
|
||||
|
||||
options: {
|
||||
'onOpened': function(){
|
||||
App.stopLoadTimer();
|
||||
App.fireEvent('unload');
|
||||
App.getBlock('header').hide();
|
||||
}
|
||||
},
|
||||
@@ -43,4 +43,71 @@ Page.Userscript = new Class({
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
var UserscriptSettingTab = new Class({
|
||||
|
||||
tab: '',
|
||||
content: '',
|
||||
|
||||
initialize: function(){
|
||||
var self = this;
|
||||
|
||||
App.addEvent('load', self.addSettings.bind(self))
|
||||
|
||||
},
|
||||
|
||||
addSettings: function(){
|
||||
var self = this;
|
||||
|
||||
self.settings = App.getPage('Settings')
|
||||
self.settings.addEvent('create', function(){
|
||||
var tab = self.settings.createTab('userscript', {
|
||||
'label': 'Userscript',
|
||||
'name': 'userscript'
|
||||
});
|
||||
|
||||
self.tab = tab.tab;
|
||||
self.content = tab.content;
|
||||
|
||||
self.createUserscript();
|
||||
|
||||
});
|
||||
|
||||
},
|
||||
|
||||
createUserscript: function(){
|
||||
var self = this;
|
||||
|
||||
|
||||
self.settings.createGroup({
|
||||
'label': 'Install the Userscript'
|
||||
}).inject(self.content).adopt(
|
||||
new Element('a', {
|
||||
'text': 'Install userscript',
|
||||
'href': Api.createUrl('userscript.get')+'?couchpotato.user.js',
|
||||
'normalhref': true
|
||||
})
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
window.addEvent('domready', function(){
|
||||
new UserscriptSettingTab();
|
||||
});
|
||||
|
||||
window.addEvent('load', function(){
|
||||
var your_version = $(document.body).get('data-userscript_version')
|
||||
latest_version = App.getOption('userscript_version')
|
||||
key = 'cp_version_check',
|
||||
checked_already = Cookie.read(key);
|
||||
|
||||
if(your_version < latest_version && checked_already < latest_version){
|
||||
if(confirm("Update to the latest Userscript?\nYour version: " + your_version + ', new version: ' + latest_version )){
|
||||
document.location = Api.getOption('url')+'userscript.get/?couchpotato.user.js';
|
||||
}
|
||||
Cookie.write(key, latest_version, {duration: 100});
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user