diff --git a/content/reddit/redditSiteInfo.xml b/content/reddit/redditSiteInfo.xml index a510137..6e1479e 100644 --- a/content/reddit/redditSiteInfo.xml +++ b/content/reddit/redditSiteInfo.xml @@ -23,12 +23,12 @@ ? - + &linkKarma.label; ... - + &commentKarma.label; ... @@ -59,24 +59,30 @@ this.site.API.auth.getAuthInfo(function(authInfo) { self.setAttribute("isloggedin", authInfo.isLoggedIn); - setLabel("labelUsername", authInfo.username); - }).perform(); - - var messageCount = this.site.newMessages.length; - setLabel("labelMailCount", messageCount); - var imageMailIcon = document.getAnonymousElementByAttribute(this, "anonid", "imageMailIcon"); - if (messageCount > 0) { - imageMailIcon.src = "chrome://socialite/content/reddit/mail.png"; - } else { - imageMailIcon.src = "chrome://socialite/content/reddit/mailgray.png"; - } - - this.site.cached.myuserinfo( - function success(r, json) { - setLabel("labelLinkKarma", json.data.link_karma); - setLabel("labelCommentKarma", json.data.comment_karma); + if (authInfo.isLoggedIn) { + setLabel("labelUsername", authInfo.username); + + var messageCount = self.site.newMessages.length; + setLabel("labelMailCount", messageCount); + var imageMailIcon = document.getAnonymousElementByAttribute(self, "anonid", "imageMailIcon"); + if (messageCount > 0) { + imageMailIcon.src = "chrome://socialite/content/reddit/mail.png"; + } else { + imageMailIcon.src = "chrome://socialite/content/reddit/mailgray.png"; + } + + self.site.cached.myuserinfo( + function success(r, json) { + setLabel("labelLinkKarma", json.data.link_karma); + setLabel("labelCommentKarma", json.data.comment_karma); + self.setAttribute("showkarma", true); + }, + function failure() { + self.setAttribute("showkarma", false); + } + ).perform(); } - ).perform(); + }).perform(); diff --git a/modules/reddit/authentication.jsm b/modules/reddit/authentication.jsm index 053d47b..36281ed 100644 --- a/modules/reddit/authentication.jsm +++ b/modules/reddit/authentication.jsm @@ -101,7 +101,7 @@ function extractAuthInfo(document) { username: extractUsername(document), modhash: extractModHash(document) }; - authInfo.isLoggedIn = (authInfo.username != false) && (authInfo.modhash != ""); + authInfo.isLoggedIn = (authInfo.username != false) && (authInfo.username != null) && (authInfo.modhash != ""); return authInfo; } diff --git a/skin/reddit.css b/skin/reddit.css index c081856..0546ccb 100644 --- a/skin/reddit.css +++ b/skin/reddit.css @@ -23,4 +23,12 @@ .reddit-subreddit:hover { text-decoration: underline; +} + +.reddit-site-info .socialite-site-info-username { + margin-right: 1em !important; +} + +.reddit-site-info[showkarma="false"] .reddit-karma-info { + display:none; } \ No newline at end of file