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

Merge branch 'develop' into develop-newgrid-row-panels

Torkel Ödegaard 8 лет назад
Родитель
Сommit
a3eaa7f178

+ 2 - 2
pkg/api/index.go

@@ -265,8 +265,8 @@ func setIndexViewData(c *middleware.Context) (*dtos.IndexViewData, error) {
 				Icon: "fa fa-fw fa-shield",
 				Url:  setting.AppSubUrl + "/admin",
 				Children: []*dtos.NavLink{
-					{Text: "Global Users", Id: "global-users", Url: setting.AppSubUrl + "/admin/users"},
-					{Text: "Global Orgs", Id: "global-orgs", Url: setting.AppSubUrl + "/admin/orgs"},
+					{Text: "Users", Id: "global-users", Url: setting.AppSubUrl + "/admin/users"},
+					{Text: "Orgs", Id: "global-orgs", Url: setting.AppSubUrl + "/admin/orgs"},
 					{Text: "Server Settings", Id: "server-settings", Url: setting.AppSubUrl + "/admin/settings"},
 					{Text: "Server Stats", Id: "server-stats", Url: setting.AppSubUrl + "/admin/stats"},
 					{Text: "Style Guide", Id: "styleguide", Url: setting.AppSubUrl + "/admin/styleguide"},

+ 0 - 5
public/app/core/components/navbar/navbar.html

@@ -2,11 +2,6 @@
   <div class="container">
     <div class="page-breadcrumb">
       <div class="page-breadcrumb__item dropdown" ng-repeat="item in ctrl.model.breadcrumbs">
-        <!-- <a class="pointer" ng&#45;href="{{::item.url}}" data&#45;toggle="dropdown" ng&#45;if="::item.children"> -->
-        <!--   {{::item.text}} -->
-        <!--   <i class="page&#45;breadcrumb__caret fa fa&#45;caret&#45;down"></i> -->
-        <!-- </a> -->
-
         <a class="pointer" ng-href="{{::item.url}}">
           {{::item.text}}
         </a>

+ 1 - 1
public/app/core/components/navbar/navbar.ts

@@ -47,7 +47,7 @@ export function pageH1() {
     <h1>
     <i class="{{::model.node.icon}}" ng-if="::model.node.icon"></i>
     <img ng-src="{{::model.node.img}}" ng-if="::model.node.img"></i>
-    {{::model.node.text}}
+    {{model.node.text}}
     </h1>
     `,
     scope: {

+ 33 - 32
public/app/features/admin/partials/configuration_home.html

@@ -1,34 +1,35 @@
 <div class="scroll-canvas">
-  <navbar model="ctrl.navModel"></navbar>
-	<div class="page-container">
-		<div class="page-header">
-      <page-h1 model="ctrl.navModel"></page-h1>
-		</div>
+  <div gemini-scrollbar>
+    <navbar model="ctrl.navModel"></navbar>
+    <div class="page-container">
+      <div class="page-header">
+        <page-h1 model="ctrl.navModel"></page-h1>
+      </div>
 
-		<section class="card-section card-list-layout-grid">
-			<ol class="card-list" >
-				<li class="card-item-wrapper" ng-repeat="navItem in ctrl.navModel.node.children">
-					<a class="card-item" ng-href="{{::navItem.url}}">
-						<div class="card-item-header">
-							<div class="card-item-type">
-							</div>
-						</div>
-						<div class="card-item-body">
-							<figure class="card-item-figure">
-								<i class="{{navItem.icon}}"></i>
-							</figure>
-							<div class="card-item-details">
-								<div class="card-item-name">
-									{{navItem.text}}
-								</div>
-								<div class="card-item-sub-name">
-									{{navItem.description}}
-								</div>
-							</div>
-						</div>
-					</a>
-				</li>
-			</ol>
-		</section>
-	</div>
-</div>
+      <section class="card-section card-list-layout-grid">
+        <ol class="card-list" >
+          <li class="card-item-wrapper" ng-repeat="navItem in ctrl.navModel.node.children">
+            <a class="card-item" ng-href="{{::navItem.url}}">
+              <div class="card-item-header">
+                <div class="card-item-type">
+                </div>
+              </div>
+              <div class="card-item-body">
+                <figure class="card-item-figure">
+                  <i class="{{navItem.icon}}"></i>
+                </figure>
+                <div class="card-item-details">
+                  <div class="card-item-name">
+                    {{navItem.text}}
+                  </div>
+                  <div class="card-item-sub-name">
+                    {{navItem.description}}
+                  </div>
+                </div>
+              </div>
+            </a>
+          </li>
+        </ol>
+      </section>
+    </div>
+  </div>

+ 0 - 1
public/app/features/alerting/partials/alert_howto.html

@@ -22,7 +22,6 @@
 			To persist your alert rule changes remember to save the dashboard.
 			<br>
 			<br>
-			<a href="{{appSubUrl}}" class="external-link" ng-click="dismiss()">Go to Home Dashboard</a>
 		</p>
 	</div>
 

+ 1 - 1
public/app/features/alerting/partials/alert_list.html

@@ -4,7 +4,7 @@
 	<div class="page-header">
     <page-h1 model="ctrl.navModel"></page-h1>
 
-    <a class="btn btn-inverse" ng-click="ctrl.openHowTo()">
+    <a class="btn btn-secondary" ng-click="ctrl.openHowTo()">
 			<i class="fa fa-info-circle"></i>
 			How to add an alert
 		</a>

+ 1 - 1
public/app/features/alerting/partials/notifications_list.html

@@ -4,7 +4,7 @@
 	<div class="page-header">
     <page-h1 model="ctrl.navModel"></page-h1>
 
-    <a href="alerting/notification/new" class="btn btn-success pull-right">
+    <a href="alerting/notification/new" class="btn btn-primary pull-right">
       <i class="fa fa-plus"></i>
       New Channel
     </a>

+ 2 - 4
public/app/features/org/org_users_ctrl.ts

@@ -44,11 +44,9 @@ export class OrgUsersCtrl {
   getAddUserBtnName(): string {
     if (this.externalUserMngLinkName) {
       return this.externalUserMngLinkName;
-    } else if (config.disableLoginForm) {
-      return "Add Users";
-    } else {
-      return "Add";
     }
+
+    return "Add Members";
   }
 
   get() {

+ 1 - 1
public/app/features/org/partials/orgApiKeys.html

@@ -9,7 +9,7 @@
 	<form name="addTokenForm" class="gf-form-group">
 		<div class="gf-form-inline">
 			<div class="gf-form max-width-21">
-				<span class="gf-form-label">Add a key</span>
+				<span class="gf-form-label">Key name</span>
 				<input type="text" class="gf-form-input" ng-model='token.name' placeholder="Name"></input>
 			</div>
 			<div class="gf-form">

+ 4 - 44
public/app/features/org/partials/orgDetails.html

@@ -12,55 +12,15 @@
 				<span class="gf-form-label">Organization name</span>
 				<input class="gf-form-input" type="text" required ng-model="org.name">
 			</div>
-			<div class="gf-form">
-				<button type="submit" class="btn gf-form-btn btn-success" ng-click="update()">Update</button>
-			</div>
 		</div>
+
+    <div class="gf-form-button-row">
+      <button type="submit" class="btn btn-success" ng-click="update()">Save</button>
+    </div>
 	</form>
 
 	<prefs-control mode="org"></prefs-control>
 
-	<h3 class="page-heading">Address</h3>
-
-	<form name="addressForm" class="gf-form-group">
-		<div class="gf-form-inline">
-			<div class="gf-form max-width-28">
-				<span class="gf-form-label width-7">Address1</span>
-				<input class="gf-form-input" type="text" ng-model="address.address1">
-			</div>
-			<div class="gf-form max-width-28">
-				<span class="gf-form-label width-7">Address2</span>
-				<input class="gf-form-input" type="text" ng-model="address.address2">
-			</div>
-		</div>
-
-		<div class="gf-form-inline">
-			<div class="gf-form max-width-28">
-				<span class="gf-form-label width-7">City</span>
-				<input class="gf-form-input" type="text" ng-model="address.city">
-			</div>
-			<div class="gf-form max-width-28">
-				<span class="gf-form-label width-7">Postal code</span>
-				<input class="gf-form-input" type="text" ng-model="address.zipCode">
-			</div>
-		</div>
-
-		<div class="gf-form-inline">
-			<div class="gf-form max-width-28">
-				<span class="gf-form-label width-7">State</span>
-				<input class="gf-form-input" type="text" ng-model="address.state">
-			</div>
-			<div class="gf-form max-width-28">
-				<span class="gf-form-label width-7">Country</span>
-				<input class="gf-form-input" type="text" ng-model="address.country">
-			</div>
-		</div>
-
-		<div class="gf-form-button-row">
-			<button type="submit" class="btn btn-success" ng-click="updateAddress()">Update</button>
-		</div>
-	</form>
-
 </div>
 
 

+ 3 - 3
public/app/features/org/partials/orgUsers.html

@@ -4,7 +4,7 @@
 	<div class="page-header">
 		<page-h1 model="ctrl.navModel"></page-h1>
 
-		<button class="btn btn-success" ng-click="ctrl.openAddUsersView()" ng-hide="ctrl.externalUserMngLinkUrl">
+		<button class="btn btn-primary" ng-click="ctrl.openAddUsersView()" ng-hide="ctrl.externalUserMngLinkUrl">
 			<i class="fa fa-plus"></i>
 			<span>{{ctrl.addUsersBtnName}}</span>
 		</button>
@@ -22,9 +22,9 @@
 						Users ({{ctrl.users.length}})
 					</a>
 				</li>
-				<li class="gf-tabs-item" ng-show="ctrl.pendingInvites.length">
+				<li class="gf-tabs-item">
 					<a class="gf-tabs-link" ng-click="ctrl.editor.index = 1" ng-class="{active: ctrl.editor.index === 1}">
-						Pending Invitations ({{ctrl.pendingInvites.length}})
+						Pending Invites ({{ctrl.pendingInvites.length}})
 					</a>
 				</li>
 			</ul>

+ 1 - 1
public/app/features/org/partials/profile.html

@@ -23,7 +23,7 @@
       <i ng-if="ctrl.readonlyLoginFields" class="fa fa-lock gf-form-icon--right-absolute" bs-tooltip="'Login Details Locked - managed in another system.'"></i>
     </div>
 		<div class="gf-form-button-row">
-			<button type="submit" class="btn btn-success" ng-click="ctrl.update()">Update</button>
+			<button type="submit" class="btn btn-success" ng-click="ctrl.update()">Save</button>
 		</div>
 	</form>
 

+ 1 - 1
public/app/features/org/prefs_control.ts

@@ -74,7 +74,7 @@ var template = `
   </div>
 
   <div class="gf-form-button-row">
-    <button type="submit" class="btn btn-success" ng-click="ctrl.updatePrefs()">Update</button>
+    <button type="submit" class="btn btn-success" ng-click="ctrl.updatePrefs()">Save</button>
   </div>
 </form>
 `;

+ 3 - 0
public/app/features/panel/partials/metrics_tab.html

@@ -47,4 +47,7 @@
   <plugin-component type="query-options-ctrl">
   </plugin-component>
 </rebuild-on-change>
+
+<div class="clearfix"></div>
+
 </div>

+ 1 - 1
public/app/features/playlist/partials/playlists.html

@@ -3,7 +3,7 @@
 <div class="page-container">
   <div class="page-header">
 		<page-h1 model="ctrl.navModel"></page-h1>
-    <a class="btn btn-success pull-right" href="playlists/create">
+    <a class="btn btn-primary pull-right" href="playlists/create">
       <i class="fa fa-plus"></i>
       New Playlist
     </a>

+ 1 - 2
public/app/features/plugins/partials/ds_edit.html

@@ -66,8 +66,7 @@
 					</div>
 
 					<div class="gf-form-button-row">
-						<button type="submit" class="btn btn-success" ng-show="ctrl.isNew" ng-click="ctrl.saveChanges()">Add</button>
-						<button type="submit" class="btn btn-success" ng-show="!ctrl.isNew" ng-click="ctrl.saveChanges()">Save &amp; Test</button>
+						<button type="submit" class="btn btn-success" ng-show="!ctrl.isNew" ng-click="ctrl.saveChanges()">Save</button>
 						<button type="submit" class="btn btn-danger" ng-show="!ctrl.isNew" ng-click="ctrl.delete()">
 							Delete
 						</button>

+ 1 - 1
public/app/features/plugins/partials/ds_list.html

@@ -5,7 +5,7 @@
       <div class="page-header">
         <page-h1 model="ctrl.navModel"></page-h1>
 
-        <a class="page-header__cta btn btn-success" href="datasources/new">
+        <a class="page-header__cta btn btn-primary" href="datasources/new">
           <i class="fa fa-plus"></i>
           Add data source
         </a>

+ 61 - 57
public/app/features/plugins/partials/plugin_list.html

@@ -1,64 +1,68 @@
-<navbar model="ctrl.navModel"></navbar>
+<div class="scroll-canvas">
+  <div gemini-scrollbar>
 
-<div class="page-container">
-  <div class="page-header">
-    <h1>
-			<i class="icon-gf icon-gf-apps"></i>
-			Plugins <span class="muted small">(currently installed)</span>
-		</h1>
+    <navbar model="ctrl.navModel"></navbar>
 
-		<div class="page-header-tabs">
-			<ul class="gf-tabs">
-				<li class="gf-tabs-item">
-					<a class="gf-tabs-link" href="plugins?type=panel" ng-class="{active: ctrl.tabIndex === 0}">
-						Panels
-					</a>
-				</li>
-				<li class="gf-tabs-item">
-					<a class="gf-tabs-link" href="plugins?type=datasource" ng-class="{active: ctrl.tabIndex === 1}">
-						Data sources
-					</a>
-				</li>
-				<li class="gf-tabs-item">
-					<a class="gf-tabs-link" href="plugins?type=app" ng-class="{active: ctrl.tabIndex === 2}">
-						Apps
-					</a>
-				</li>
-			</ul>
+    <div class="page-container">
+      <div class="page-header">
+        <h1>
+          <i class="icon-gf icon-gf-apps"></i>
+          Plugins <span class="muted small">(currently installed)</span>
+        </h1>
 
-      <a class="get-more-plugins-link" href="https://grafana.com/plugins?utm_source=grafana_plugin_list" target="_blank">
-        Find more <img src="public/img/icn-plugins-tiny.svg" />plugins on Grafana.com
-      </a>
-    </div>
-  </div>
+        <div class="page-header-tabs">
+          <ul class="gf-tabs">
+            <li class="gf-tabs-item">
+              <a class="gf-tabs-link" href="plugins?type=panel" ng-class="{active: ctrl.tabIndex === 0}">
+                Panels
+              </a>
+            </li>
+            <li class="gf-tabs-item">
+              <a class="gf-tabs-link" href="plugins?type=datasource" ng-class="{active: ctrl.tabIndex === 1}">
+                Data sources
+              </a>
+            </li>
+            <li class="gf-tabs-item">
+              <a class="gf-tabs-link" href="plugins?type=app" ng-class="{active: ctrl.tabIndex === 2}">
+                Apps
+              </a>
+            </li>
+          </ul>
 
-  <section class="card-section" layout-mode>
-    <layout-selector></layout-selector>
+          <a class="get-more-plugins-link" href="https://grafana.com/plugins?utm_source=grafana_plugin_list" target="_blank">
+            Find more <img src="public/img/icn-plugins-tiny.svg" />plugins on Grafana.com
+          </a>
+        </div>
+      </div>
 
-    <ol class="card-list" >
-      <li class="card-item-wrapper" ng-repeat="plugin in ctrl.plugins">
-        <a class="card-item" href="plugins/{{plugin.id}}/edit">
-          <div class="card-item-header">
-            <div class="card-item-type">
-              <i class="icon-gf icon-gf-{{plugin.type}}"></i>
-              {{plugin.type}}
-            </div>
-            <div class="card-item-notice" ng-show="plugin.hasUpdate">
-              <span bs-tooltip="plugin.latestVersion">Update available!</span>
-            </div>
-          </div>
-          <div class="card-item-body">
-            <figure class="card-item-figure">
-              <img ng-src="{{plugin.info.logos.small}}">
-            </figure>
-            <div class="card-item-details">
-              <div class="card-item-name">{{plugin.name}}</div>
-              <div class="card-item-sub-name">By {{plugin.info.author.name}}</div>
-            </div>
-          </div>
-        </a>
-      </li>
-    </ol>
-  </section>
+      <section class="card-section" layout-mode>
+        <layout-selector></layout-selector>
 
+        <ol class="card-list" >
+          <li class="card-item-wrapper" ng-repeat="plugin in ctrl.plugins">
+            <a class="card-item" href="plugins/{{plugin.id}}/edit">
+              <div class="card-item-header">
+                <div class="card-item-type">
+                  <i class="icon-gf icon-gf-{{plugin.type}}"></i>
+                  {{plugin.type}}
+                </div>
+                <div class="card-item-notice" ng-show="plugin.hasUpdate">
+                  <span bs-tooltip="plugin.latestVersion">Update available!</span>
+                </div>
+              </div>
+              <div class="card-item-body">
+                <figure class="card-item-figure">
+                  <img ng-src="{{plugin.info.logos.small}}">
+                </figure>
+                <div class="card-item-details">
+                  <div class="card-item-name">{{plugin.name}}</div>
+                  <div class="card-item-sub-name">By {{plugin.info.author.name}}</div>
+                </div>
+              </div>
+            </a>
+          </li>
+        </ol>
+      </section>
+    </div>
+  </div>
 </div>

+ 2 - 2
public/sass/_variables.dark.scss

@@ -133,8 +133,8 @@ $table-border:                $dark-3; // table and cell border
 // Buttons
 // -------------------------
 
-$btn-primary-bg:              $brand-primary;
-$btn-primary-bg-hl:           lighten($brand-primary, 8%);
+$btn-primary-bg:              #ff6600;
+$btn-primary-bg-hl:           #bc3e06;
 
 $btn-secondary-bg:            $blue-dark;
 $btn-secondary-bg-hl:     		lighten($blue-dark, 5%);

+ 2 - 2
public/sass/_variables.scss

@@ -208,7 +208,7 @@ $zindex-modal:             1050;
 $btn-padding-x:                  1rem !default;
 $btn-padding-y:                  .6rem !default;
 $btn-line-height:                1.25 !default;
-$btn-font-weight:                normal !default;
+$btn-font-weight:                500 !default;
 
 $btn-padding-x-sm:               .5rem !default;
 $btn-padding-y-sm:               .25rem !default;
@@ -216,7 +216,7 @@ $btn-padding-y-sm:               .25rem !default;
 $btn-padding-x-lg:               1.5rem !default;
 $btn-padding-y-lg:               .75rem !default;
 
-$btn-border-radius:              2px;
+$btn-border-radius:              3px;
 
 // sidemenu
 $side-menu-width:  60px;

+ 1 - 1
public/sass/components/_buttons.scss

@@ -14,7 +14,7 @@
   text-align: center;
   vertical-align: middle;
   cursor: pointer;
-  border: $input-btn-border-width solid transparent;
+  border: none;
 
   @include button-size($btn-padding-y, $btn-padding-x, $font-size-base, $btn-border-radius);
 

+ 0 - 2
public/sass/components/_gf-form.scss

@@ -239,8 +239,6 @@ $gf-form-margin: 1px;
   line-height: $input-line-height;
   font-size: $font-size-sm;
   box-shadow: none;
-  border: $input-btn-border-width solid transparent;
-  @include border-radius($label-border-radius-sm);
 
   flex-shrink: 0;
   flex-grow: 0;

+ 8 - 0
public/sass/layout/_page.scss

@@ -74,9 +74,17 @@
   a, button {
     float: right;
     margin-left: $spacer;
+
+    // better align icons
+    .fa {
+      position: relative;
+      top: 1px;
+    }
   }
 }
 
+
+
 .page-heading {
   font-size: 1.25rem;
   margin-top: 0;

+ 1 - 1
public/sass/mixins/_buttons.scss

@@ -1,7 +1,7 @@
 
 // Button backgrounds
 // ------------------
-@mixin buttonBackground($startColor, $endColor, $text-color: #fff, $textShadow: 0 -1px 0 rgba(0,0,0,.25)) {
+@mixin buttonBackground($startColor, $endColor, $text-color: #fff, $textShadow: 0px 1px 0 rgba(0,0,0,.5)) {
   // gradientBar will set the background to a pleasing blend of these, to support IE<=9
   @include gradientBar($startColor, $endColor, $text-color, $textShadow);