mirror of
https://github.com/kennethreitz-archive/gitx.git
synced 2026-06-05 23:40:18 +00:00
WebHistoryController: Only show Gravatar and Gist if they are enabled
This add an "enableFeature" JS function that checks if a given feature is enabled. If it is, the correct div is shown, otherwise it is hidden.
This commit is contained in:
committed by
Pieter de Bie
parent
eb971b3ca7
commit
0f8ac90743
@@ -9,6 +9,7 @@
|
||||
#import "PBWebController.h"
|
||||
#import "PBGitRepository.h"
|
||||
#import "PBGitXProtocol.h"
|
||||
#import "PBGitDefaults.h"
|
||||
|
||||
#include <SystemConfiguration/SCNetworkReachability.h>
|
||||
|
||||
@@ -110,6 +111,16 @@
|
||||
return flags > 0;
|
||||
}
|
||||
|
||||
- (BOOL) isFeatureEnabled:(NSString *)feature
|
||||
{
|
||||
if([feature isEqualToString:@"gravatar"])
|
||||
return [PBGitDefaults isGravatarEnabled];
|
||||
else if([feature isEqualToString:@"gist"])
|
||||
return [PBGitDefaults isGistEnabled];
|
||||
else
|
||||
return YES;
|
||||
}
|
||||
|
||||
#pragma mark Using async function from JS
|
||||
|
||||
- (void) runCommand:(WebScriptObject *)arguments inRepository:(PBGitRepository *)repo callBack:(WebScriptObject *)callBack
|
||||
|
||||
@@ -97,6 +97,11 @@ var setGravatar = function(email, image) {
|
||||
if (Controller && !Controller.isReachable_("www.gravatar.com"))
|
||||
return;
|
||||
|
||||
if(Controller && !Controller.isFeatureEnabled_("gravatar")) {
|
||||
image.src = "";
|
||||
return;
|
||||
}
|
||||
|
||||
if (!email) {
|
||||
image.src = "http://www.gravatar.com/avatar/?d=wavatar&s=60";
|
||||
return;
|
||||
@@ -188,6 +193,23 @@ var showImage = function(element, filename)
|
||||
return false;
|
||||
}
|
||||
|
||||
var enableFeature = function(feature, element)
|
||||
{
|
||||
if(!Controller || Controller.isFeatureEnabled_(feature)) {
|
||||
element.style.display = "";
|
||||
} else {
|
||||
element.style.display = "none";
|
||||
}
|
||||
}
|
||||
|
||||
var enableFeatures = function()
|
||||
{
|
||||
enableFeature("gist", $("gist"))
|
||||
if(commit)
|
||||
setGravatar(commit.author_email, $("gravatar"));
|
||||
enableFeature("gravatar", $("gravatar"))
|
||||
}
|
||||
|
||||
var loadExtendedCommit = function(commit)
|
||||
{
|
||||
if (commit.author_email)
|
||||
@@ -202,5 +224,5 @@ var loadExtendedCommit = function(commit)
|
||||
$("diff").innerHTML = "<a class='showdiff' href='' onclick='showDiff(); return false;'>This is a large commit. Click here or press 'v' to view.</a>";
|
||||
|
||||
hideNotification();
|
||||
setGravatar(commit.author_email, $("gravatar"));
|
||||
enableFeatures();
|
||||
}
|
||||
Reference in New Issue
Block a user