/* * myqna - tektek.org GaiaOnline Toolbar * * Copyright (c) 2007 tektek Foundation * GaiaOnline content (c) Copyright 2003-2007 Gaia Interactive */ /*--------------- INIT FUNCTIONS ----*/ var myqnaPrefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService).getBranch("myqna."); try{ var searchquotes = myqnaPrefs.getCharPref("searchquotes"); }catch (e){ myqnaPrefs.setCharPref("searchquotes", "Y"); } try{myqnaPrefs.getIntPref("autoformat_messages");}catch(e){myqnaPrefs.setIntPref("autoformat_messages", 0);} try{myqnaPrefs.getIntPref("autoformat_guilds");}catch(e){myqnaPrefs.setIntPref("autoformat_guilds", 0);} try{myqnaPrefs.getIntPref("autoformat_pms");}catch(e){myqnaPrefs.setIntPref("autoformat_pms", 0);} try{myqnaPrefs.getIntPref("autoformat_comments");}catch(e){myqnaPrefs.setIntPref("autoformat_comments", 0);} try{myqnaPrefs.getIntPref("Formatstyle");}catch(e){myqnaPrefs.setIntPref("Formatstyle", 0);} try{myqnaPrefs.getIntPref("Format2style");}catch(e){myqnaPrefs.setIntPref("Format2style", 0);} try{myqnaPrefs.getIntPref("Format3style");}catch(e){myqnaPrefs.setIntPref("Format3style", 0);} try{myqnaPrefs.getIntPref("gaiaForgetMail");}catch(Exception){myqnaPrefs.setIntPref("gaiaForgetMail", 0);} try{myqnaPrefs.getIntPref("gaiaForgetComments");}catch(Exception){myqnaPrefs.setIntPref("gaiaForgetComments", 0);} try{myqnaPrefs.getIntPref("gaiaForgetJournals");}catch(Exception){myqnaPrefs.setIntPref("gaiaForgetJournals", 0);} try{myqnaPrefs.getIntPref("gaiaForgetSubscriptions");}catch(Exception){myqnaPrefs.setIntPref("gaiaForgetSubscriptions", 1);} try{ myqnaPrefs.getCharPref("Formatbegin"); myqnaPrefs.getCharPref("Formatend"); } catch(Exception){ myqnaPrefs.setCharPref("Formatbegin", "[color=red]Text to go before each message\n"); myqnaPrefs.setCharPref("Formatend", "Text at the end of each message[/color]\n"); } try{ myqnaPrefs.getCharPref("Format2begin"); myqnaPrefs.getCharPref("Format2end"); } catch(Exception){ myqnaPrefs.setCharPref("Format2begin", "[b]"); myqnaPrefs.setCharPref("Format2end", "[/b]\n"); } try{ myqnaPrefs.getCharPref("Format3begin"); myqnaPrefs.getCharPref("Format3end"); } catch(Exception){ myqnaPrefs.setCharPref("Format3begin", "[size=9]\n"); myqnaPrefs.setCharPref("Format3end", "[/size]"); } try{ myqnaPrefs.getCharPref("MyLinksList"); } catch(Exception){ myqnaPrefs.setCharPref("MyLinksList", ""); } try{ var searchquotes = myqnaPrefs.getIntPref("rightclick_menu"); }catch (e){ myqnaPrefs.setIntPref("rightclick_menu", 0); } function toolbarLoad() { var myqnaPrefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService).getBranch("myqna."); var toolbar = document.getElementById("myqnaXULToolbar"); if(myqnaPrefs.prefHasUserValue("display_self")) { if (myqnaPrefs.getBoolPref("display_self")) toolbar.setAttribute("collapsed", false); else toolbar.setAttribute("collapsed", true); } else { myqnaPrefs.setBoolPref("display_self", true); toolbar.setAttribute("collapsed", false); } try { if (myqnaPrefs.getCharPref("MyLinksList")) if (myqnaPrefs.getCharPref("MyLinksList").length > 5) { document.getElementById("myqna_tmenu_mylinks").setAttribute("hidden", "false"); } } catch(e){} } function toolbarUnload() { var myqnaPrefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService).getBranch("myqna."); var toolbar = document.getElementById("myqnaXULToolbar"); if(toolbar.collapsed) myqnaPrefs.setBoolPref("display_self", false); else myqnaPrefs.setBoolPref("display_self", true); } // dear lord... // to-do: clean function myqnaFetch(x) { try { var myqnaQuery = new XMLHttpRequest(); myqnaQuery.addr = x+''; myqnaQuery.open('get', x+'', true); myqnaQuery.onreadystatechange = function() { if (myqnaQuery.readyState == 4) { if (myqnaQuery.status == 200) { var myqnaPrefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService).getBranch("myqna."); var data = myqnaQuery.responseText; if (data.indexOf('') == -1) { if (myqnaQuery.addr == addressMail && data.indexOf('') > 0) { try{myqnaPrefs.getCharPref("gaiaFetchMail");}catch(Exception){myqnaPrefs.setCharPref("gaiaFetchMail", "");} data = data.substr(data.indexOf('') + 26, 30); data = data.substr(0, data.indexOf('<')); data = escape(data); if (myqnaPrefs.getCharPref("gaiaFetchMail") != '' && myqnaPrefs.getCharPref("gaiaFetchMail") != data) { document.getElementById("myqna_tmenu_mygaia").style.listStyleImage = "url(chrome://myqna/skin/newpm.png)"; document.getElementById("myqna_tmenu_mygaia_mail").style.listStyleImage = "url(chrome://myqna/skin/newpm.png)"; document.getElementById('myqna_tmenu_mygaia_mail').label = 'Mail (new)'; } myqnaPrefs.setCharPref("gaiaFetchMail", data); } if (myqnaQuery.addr == addressComments && data.indexOf('

') > 0) { try{myqnaPrefs.getCharPref("gaiaFetchComments");}catch(Exception){myqnaPrefs.setCharPref("gaiaFetchComments", "");} data = data.substr(data.indexOf('

') + 16, 30); data = data.substr(0, data.indexOf('<')); data = escape(data); if (myqnaPrefs.getCharPref("gaiaFetchComments") != '' && myqnaPrefs.getCharPref("gaiaFetchComments") != data) { document.getElementById("myqna_tmenu_mygaia").style.listStyleImage = "url(chrome://myqna/skin/new.png)"; document.getElementById("myqna_tmenu_mygaia_comments").style.listStyleImage = "url(chrome://myqna/skin/new.png)"; document.getElementById('myqna_tmenu_mygaia_comments').label = 'Profile Comments (new)'; } myqnaPrefs.setCharPref("gaiaFetchComments", data); } if (myqnaQuery.addr == addressJournals && data.indexOf('') > 0) { try{myqnaPrefs.getCharPref("gaiaFetchJournals");}catch(Exception){myqnaPrefs.setCharPref("gaiaFetchJournals", "");} data = data.substr(data.indexOf('') + 26, 40); data = data.substr(0, data.indexOf('<')); data = escape(data); if (myqnaPrefs.getCharPref("gaiaFetchJournals") != '' && myqnaPrefs.getCharPref("gaiaFetchJournals") != data) { document.getElementById("myqna_tmenu_mygaia").style.listStyleImage = "url(chrome://myqna/skin/new.png)"; document.getElementById("myqna_tmenu_mygaia_journals").style.listStyleImage = "url(chrome://myqna/skin/new.png)"; document.getElementById('myqna_tmenu_mygaia_journals').label = 'Subscribed Journals (new)'; } myqnaPrefs.setCharPref("gaiaFetchJournals", data); } if (myqnaQuery.addr == addressSubscriptions && data.indexOf('btn-unsubscribe') > 0) { try{myqnaPrefs.getCharPref("gaiaFetchSubscriptions");}catch(Exception){myqnaPrefs.setCharPref("gaiaFetchSubscriptions", "");} var fulldata = data.substr(data.indexOf('btn-unsubscribe')); fulldata = fulldata.substr(fulldata.indexOf('')); data = data.substr(data.indexOf('') + 24); data = data.substr(0, data.indexOf('<')); data = trim(data); data = escape(data); if (fulldata.indexOf(' 0) { var menu = document.getElementById("myqna-forum-subscriptions"); for (var i = menu.childNodes.length - 1; i >= 0; i--) { menu.removeChild(menu.childNodes.item(i)); } var subthreads = new Array(); subthreads = fulldata.split(' 10) subthreads.length = 10; for (var i = 0; i < subthreads.length; i++) { var subthread_title = subthreads[i].substr(subthreads[i].indexOf('title="') + 7) subthread_title = subthread_title.substr(0, subthread_title.indexOf('"')); subthread_title = unescape(subthread_title); subthread_title = subthread_title.replace(''', "'"); if (subthread_title.length > 25) subthread_title = subthread_title.substr(0, 25) + '...'; var subthread_date = subthreads[i].substr(subthreads[i].indexOf('') + 25); subthread_date = subthread_date.substr(1, subthread_date.indexOf('<') - 1); subthread_date = trim(subthread_date); var subthread_by = subthreads[i].substr(subthreads[i].lastIndexOf('