Просмотр исходного кода

* Share button shown to all users, with a tooltip for non-admin; remove its id.

Paulo Reis 8 лет назад
Родитель
Сommit
fc7b5bdd63

+ 9 - 5
services/web/app/views/project/editor/header.pug

@@ -99,11 +99,15 @@ header.toolbar.toolbar-header.toolbar-with-labels(
 			i.review-icon
 			i.review-icon
 			p.toolbar-label
 			p.toolbar-label
 				| #{translate("review")}
 				| #{translate("review")}
-		a.btn.btn-full-height#shareButton(
-			href,
-			ng-if="permissions.admin",
-			ng-click="openShareProjectModal();",
-			ng-controller="ShareController",
+
+		a.btn.btn-full-height(
+			href
+			ng-class="{ 'btn-full-height-disabled' : !permissions.admin }"
+			ng-click="openShareProjectModal(permissions.admin);"
+			ng-controller="ShareController"
+			tooltip-enable="!permissions.admin"
+			tooltip="Only the project owner can use the Share menu at the moment, but we're working on making it accessible to collaborators, too."
+			tooltip-placement="bottom"
 		)
 		)
 			i.fa.fa-fw.fa-group
 			i.fa.fa-fw.fa-group
 			p.toolbar-label #{translate("share")}
 			p.toolbar-label #{translate("share")}

+ 4 - 1
services/web/public/coffee/ide/share/controllers/ShareController.coffee

@@ -3,7 +3,10 @@ define [
 ], (App) ->
 ], (App) ->
 	App.controller "ShareController", ["$scope", "$modal", "ide", "projectInvites", "projectMembers", "event_tracking",
 	App.controller "ShareController", ["$scope", "$modal", "ide", "projectInvites", "projectMembers", "event_tracking",
 	($scope, $modal, ide, projectInvites, projectMembers, event_tracking) ->
 	($scope, $modal, ide, projectInvites, projectMembers, event_tracking) ->
-			$scope.openShareProjectModal = () ->
+			$scope.openShareProjectModal = (isAdmin) ->
+				if !isAdmin
+					return
+					
 				event_tracking.sendMBOnce "ide-open-share-modal-once"
 				event_tracking.sendMBOnce "ide-open-share-modal-once"
 
 
 				$modal.open(
 				$modal.open(

+ 11 - 0
services/web/public/stylesheets/app/editor/toolbar.less

@@ -72,6 +72,17 @@
 			background-color: @toolbar-btn-active-bg-color;
 			background-color: @toolbar-btn-active-bg-color;
 			box-shadow: @toolbar-btn-active-shadow;
 			box-shadow: @toolbar-btn-active-shadow;
 		}
 		}
+		&.btn-full-height-disabled {
+			opacity: 0.65;
+			&:hover,
+			&.active,
+			&:active {
+				text-shadow: none;
+				background-color: transparent;
+				color: @toolbar-btn-color;
+				box-shadow: none;
+			}
+		}
 		.label {
 		.label {
 			top: 4px;
 			top: 4px;
 			right: 4px;
 			right: 4px;