You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sirona.apache.org by ol...@apache.org on 2014/08/22 09:06:30 UTC
svn commit: r1619686 [1/3] - in /incubator/sirona/trunk/server/reporting:
reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/
reporting-ui/src/main/webapp/css/ reporting-ui/src/main/webapp/js/
reporting-ui/src/main/webapp/js/app/contr...
Author: olamy
Date: Fri Aug 22 07:06:30 2014
New Revision: 1619686
URL: http://svn.apache.org/r1619686
Log:
start structure for counters report
Added:
incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/
incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CounterInfo.java (with props)
incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CountersService.java (with props)
incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/KeyInfo.java (with props)
incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/css/ng-grid.2.0.12.css (with props)
incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/js/app/controllers/controllers-report.js (with props)
incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/js/ng-grid-2.0.12.debug.js (with props)
incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/partials/report.html (with props)
Added: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CounterInfo.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CounterInfo.java?rev=1619686&view=auto
==============================================================================
--- incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CounterInfo.java (added)
+++ incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CounterInfo.java Fri Aug 22 07:06:30 2014
@@ -0,0 +1,128 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sirona.reporting.web.counters;
+
+import org.apache.sirona.counters.Counter;
+
+/**
+ * @since 0.3
+ */
+public class CounterInfo
+{
+
+ private final KeyInfo keyInfo;
+
+ private final double hits;
+
+ private final double max;
+
+ private final double mean;
+
+ private final double min;
+
+ private final double standardDeviation;
+
+ private final double sum;
+
+ private final double variance;
+
+ private final double concurrency;
+
+ private final double maxConcurrency;
+
+ public CounterInfo( KeyInfo keyInfo, double hits, double max, double mean, double min, double standardDeviation,
+ double sum, double variance, double concurrency, double maxConcurrency )
+ {
+ this.keyInfo = keyInfo;
+ this.hits = hits;
+ this.max = max;
+ this.mean = mean;
+ this.min = min;
+ this.standardDeviation = standardDeviation;
+ this.sum = sum;
+ this.variance = variance;
+ this.concurrency = concurrency;
+ this.maxConcurrency = maxConcurrency;
+ }
+
+ public KeyInfo getKeyInfo()
+ {
+ return keyInfo;
+ }
+
+ public double getHits()
+ {
+ return hits;
+ }
+
+ public double getMax()
+ {
+ return max;
+ }
+
+ public double getMean()
+ {
+ return mean;
+ }
+
+ public double getMin()
+ {
+ return min;
+ }
+
+ public double getStandardDeviation()
+ {
+ return standardDeviation;
+ }
+
+ public double getSum()
+ {
+ return sum;
+ }
+
+ public double getVariance()
+ {
+ return variance;
+ }
+
+ public double getConcurrency()
+ {
+ return concurrency;
+ }
+
+ public double getMaxConcurrency()
+ {
+ return maxConcurrency;
+ }
+
+ @Override
+ public String toString()
+ {
+ return "CounterInfo{" +
+ "keyInfo=" + keyInfo +
+ ", hits=" + hits +
+ ", max=" + max +
+ ", mean=" + mean +
+ ", min=" + min +
+ ", standardDeviation=" + standardDeviation +
+ ", sum=" + sum +
+ ", variance=" + variance +
+ ", concurrency=" + concurrency +
+ ", maxConcurrency=" + maxConcurrency +
+ '}';
+ }
+}
Propchange: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CounterInfo.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CounterInfo.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CountersService.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CountersService.java?rev=1619686&view=auto
==============================================================================
--- incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CountersService.java (added)
+++ incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CountersService.java Fri Aug 22 07:06:30 2014
@@ -0,0 +1,84 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sirona.reporting.web.counters;
+
+import org.apache.sirona.Role;
+import org.apache.sirona.counters.Counter;
+import org.apache.sirona.counters.MetricData;
+import org.apache.sirona.counters.Unit;
+import org.apache.sirona.repositories.Repository;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * @since 0.3
+ */
+@Path( "/counters" )
+public class CountersService
+{
+
+ @GET
+ @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
+ public List<CounterInfo> all()
+ {
+ Collection<Counter> counters = Repository.INSTANCE.counters();
+
+ List<CounterInfo> out = new ArrayList<CounterInfo>( counters.size() );
+
+ for ( Counter counter : counters )
+ {
+ out.add( new CounterInfo( new KeyInfo( counter.getKey() ), MetricData.Hits.value( counter ),
+ MetricData.Max.value( counter ), //
+ MetricData.Mean.value( counter ), MetricData.Min.value( counter ), //
+ MetricData.StandardDeviation.value( counter ), MetricData.Sum.value( counter ), //
+ MetricData.Variance.value( counter ), MetricData.Concurrency.value( counter ), //
+ MetricData.MaxConcurrency.value( counter ) ) ); //
+ }
+
+ return out;
+
+ }
+
+
+ @GET
+ @Path( "/{name}/{unitName}" )
+ @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
+ public CounterInfo find( @PathParam( "name" ) String name, @PathParam( "unitName" ) String unit )
+ {
+ final Counter counter =
+ Repository.INSTANCE.getCounter( new Counter.Key( new Role( name, Unit.get( unit ) ), name ) );
+
+ return counter == null
+ ? null
+ : new CounterInfo( new KeyInfo( counter.getKey() ), MetricData.Hits.value( counter ),
+ MetricData.Max.value( counter ), //
+ MetricData.Mean.value( counter ), MetricData.Min.value( counter ), //
+ MetricData.StandardDeviation.value( counter ), MetricData.Sum.value( counter ), //
+ MetricData.Variance.value( counter ), MetricData.Concurrency.value( counter ), //
+ MetricData.MaxConcurrency.value( counter ) );
+
+ }
+
+
+}
Propchange: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CountersService.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/CountersService.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/KeyInfo.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/KeyInfo.java?rev=1619686&view=auto
==============================================================================
--- incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/KeyInfo.java (added)
+++ incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/KeyInfo.java Fri Aug 22 07:06:30 2014
@@ -0,0 +1,70 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.sirona.reporting.web.counters;
+
+import org.apache.sirona.counters.Counter;
+
+import java.io.Serializable;
+
+/**
+ * @since 0.3
+ */
+public class KeyInfo
+ implements Serializable
+{
+
+ private final String name;
+
+ private final String roleName;
+
+ private final String unitName;
+
+ public KeyInfo( Counter.Key key )
+ {
+ this.name = key.getName();
+
+ this.roleName = key.getRole().getName();
+
+ this.unitName = key.getRole().getUnit().getName();
+ }
+
+ public String getName()
+ {
+ return name;
+ }
+
+ public String getRoleName()
+ {
+ return roleName;
+ }
+
+ public String getUnitName()
+ {
+ return unitName;
+ }
+
+ @Override
+ public String toString()
+ {
+ return "KeyInfo{" +
+ "name='" + name + '\'' +
+ ", roleName='" + roleName + '\'' +
+ ", unitName='" + unitName + '\'' +
+ '}';
+ }
+}
Propchange: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/KeyInfo.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/sirona/trunk/server/reporting/reporting-api/src/main/java/org/apache/sirona/reporting/web/counters/KeyInfo.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/css/ng-grid.2.0.12.css
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/css/ng-grid.2.0.12.css?rev=1619686&view=auto
==============================================================================
--- incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/css/ng-grid.2.0.12.css (added)
+++ incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/css/ng-grid.2.0.12.css Fri Aug 22 07:06:30 2014
@@ -0,0 +1,447 @@
+.ngGrid {
+ background-color: #fdfdfd;
+}
+.ngGrid input[type="checkbox"] {
+ margin: 0;
+ padding: 0;
+}
+.ngGrid input {
+ vertical-align: top;
+}
+.ngGrid.unselectable {
+ -moz-user-select: none;
+ -khtml-user-select: none;
+ -webkit-user-select: none;
+ -o-user-select: none;
+ user-select: none;
+}
+.ngViewport {
+ overflow: auto;
+ min-height: 20px;
+}
+.ngViewport:focus {
+ outline: none;
+}
+.ngCanvas {
+ position: relative;
+}
+.ngVerticalBar {
+ position: absolute;
+ right: 0;
+ width: 0;
+}
+.ngVerticalBarVisible {
+ width: 1px;
+ background-color: #d4d4d4;
+}
+#testDataLength {
+ position: absolute;
+ top: 0;
+ right: 0;
+ z-index: -100000;
+}
+.ngHeaderContainer {
+ position: relative;
+ overflow: hidden;
+ font-weight: bold;
+ background-color: inherit;
+}
+.ngHeaderCell {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ background-color: inherit;
+}
+.ngHeaderCell.pinned {
+ z-index: 1;
+}
+.ngHeaderSortColumn {
+ position: absolute;
+ overflow: hidden;
+}
+.ngTopPanel {
+ position: relative;
+ z-index: 1;
+ background-color: #eaeaea;
+ border-bottom: 1px solid #d4d4d4;
+}
+.ngSortButtonDown {
+ position: absolute;
+ top: 3px;
+ left: 0;
+ right: 0;
+ margin-left: auto;
+ margin-right: auto;
+ border-color: gray transparent;
+ border-style: solid;
+ border-width: 0 5px 5px 5px;
+ height: 0;
+ width: 0;
+}
+.ngNoSort {
+ cursor: default;
+}
+.ngHeaderButton {
+ position: absolute;
+ right: 2px;
+ top: 8px;
+ -moz-border-radius: 50%;
+ -webkit-border-radius: 50%;
+ border-radius: 50%;
+ width: 14px;
+ height: 14px;
+ z-index: 1;
+ background-color: #9fbbb4;
+ cursor: pointer;
+}
+.ngSortButtonUp {
+ position: absolute;
+ top: 3px;
+ left: 0;
+ right: 0;
+ margin-left: auto;
+ margin-right: auto;
+ border-color: gray transparent;
+ border-style: solid;
+ border-width: 5px 5px 0 5px;
+ height: 0;
+ width: 0;
+}
+.ngHeaderScroller {
+ position: absolute;
+ background-color: inherit;
+}
+.ngSortPriority {
+ position: absolute;
+ top: -5px;
+ left: 1px;
+ font-size: 6pt;
+ font-weight: bold;
+}
+.ngHeaderGrip {
+ cursor: col-resize;
+ width: 10px;
+ right: -5px;
+ top: 0;
+ height: 100%;
+ position: absolute;
+ background-color: transparent;
+}
+.ngHeaderText {
+ padding: 5px;
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ white-space: nowrap;
+ -ms-text-overflow: ellipsis;
+ -o-text-overflow: ellipsis;
+ text-overflow: ellipsis;
+ overflow: hidden;
+}
+.ngHeaderButtonArrow {
+ position: absolute;
+ top: 4px;
+ left: 3px;
+ width: 0;
+ height: 0;
+ border-style: solid;
+ border-width: 6.5px 4.5px 0 4.5px;
+ border-color: #4d4d4d transparent transparent transparent;
+}
+.ngPinnedIcon {
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAmElEQVQoU33PQapBURjA8UtkwJuaWYGSgfQWYBMvczPmTCzAAGVuaA228BZhRCkDGSmE31FucuRfvzq3vr5zT/JSjSU7DsypEPXDkDVn2hSIytJhw4kWGaLCxgHh2gt/RBuLzNhz5caWPjnSqqw4EraFfwznf8qklWjwy4IRTerkiQoPGtPl40OehcEJvcfXl8LglLfBJLkDcMgbgHlHhK8AAAAASUVORK5CYII=);
+ background-repeat: no-repeat;
+ position: absolute;
+ right: 5px;
+ top: 5px;
+ height: 10px;
+ width: 10px;
+}
+.ngUnPinnedIcon {
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAlElEQVQoU33PPQrCQBRF4fFnI2KfZVi5ARvdgo1l6mwmkCJVOgluwd5OwUoDtnoOxAei8cLXTN7cvEl/skCNDCMPfsUPO5zQwOHIDEvYtMURHe6wOVLgigvOePRyeDkyR4ln7wZ//7XfFBu8B23+aDJjrHGAwza7hjtHJvDmHg7b7Bru7AMjK7Rw2ObBVHDY5oGk9AKQNB2zy8MBTgAAAABJRU5ErkJggg==);
+ background-repeat: no-repeat;
+ position: absolute;
+ height: 10px;
+ width: 10px;
+ right: 5px;
+ top: 5px;
+}
+.ngColMenu {
+ right: 2px;
+ padding: 5px;
+ top: 25px;
+ -moz-border-radius: 3px;
+ -webkit-border-radius: 3px;
+ border-radius: 3px;
+ background-color: #bdd0cb;
+ position: absolute;
+ border: 2px solid #d4d4d4;
+ z-index: 1;
+}
+.ngColListCheckbox {
+ position: relative;
+ right: 3px;
+ top: 4px;
+}
+.ngColList {
+ list-style-type: none;
+ margin-top: 2px;
+ margin-left: 8px;
+}
+.ngColListItem {
+ white-space: nowrap;
+}
+.ngMenuText {
+ position: relative;
+ top: 2px;
+ left: 2px;
+}
+.ngGroupPanel {
+ background-color: #eaeaea;
+ overflow: hidden;
+ border-bottom: 1px solid #d4d4d4;
+}
+.ngGroupPanelDescription {
+ margin-top: 5px;
+ margin-left: 5px;
+}
+.ngGroupList {
+ list-style-type: none;
+ margin: 0;
+ padding: 0;
+}
+.ngAggHeader {
+ position: absolute;
+ border: none;
+}
+.ngGroupElement {
+ float: left;
+ height: 100%;
+ width: 100%;
+}
+.ngGroupIcon {
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAANCAYAAACZ3F9/AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAEFJREFUKFNjoAhISkr+h2J5JDZODNXGwGBsbPwfhIGAA8bGh6HaGBiAGhxAGJmND4M1gQCSM0adCsVQbcPcqQwMALWDGyDvWPefAAAAAElFTkSuQmCC);
+ background-repeat: no-repeat;
+ height: 15px;
+ width: 15px;
+ position: absolute;
+ right: -2px;
+ top: 2px;
+}
+.ngGroupedByIcon {
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAANCAYAAACZ3F9/AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAElJREFUKFNjoAhISkr+R8LyaHwMDNXGwGBsbPwfhoGAA5mPDUO1oWpE52PDYE0gALTFAYbR+dgwWBMIoPlh1I9ADNU2NPzIwAAAFQYI9E4OLvEAAAAASUVORK5CYII=);
+ background-repeat: no-repeat;
+ height: 15px;
+ width: 15px;
+ position: absolute;
+ right: -2px;
+ top: 2px;
+}
+.ngGroupName {
+ background-color: #fdfdfd;
+ border: 1px solid #d4d4d4;
+ padding: 3px 10px;
+ float: left;
+ margin-left: 0;
+ margin-top: 2px;
+ -moz-border-radius: 3px;
+ -webkit-border-radius: 3px;
+ border-radius: 3px;
+ font-weight: bold;
+}
+.ngGroupArrow {
+ width: 0;
+ height: 0;
+ border-top: 6px solid transparent;
+ border-bottom: 6px solid transparent;
+ border-left: 6px solid black;
+ margin-top: 10px;
+ margin-left: 5px;
+ margin-right: 5px;
+ float: right;
+}
+.ngGroupingNumber {
+ position: absolute;
+ right: -10px;
+ top: -2px;
+}
+.ngAggArrowCollapsed {
+ position: absolute;
+ left: 8px;
+ bottom: 10px;
+ width: 0;
+ height: 0;
+ border-style: solid;
+ border-width: 5px 0 5px 8.7px;
+ border-color: transparent transparent transparent #000000;
+}
+.ngGroupItem {
+ float: left;
+}
+.ngGroupItem:first-child {
+ margin-left: 2px;
+}
+.ngRemoveGroup {
+ width: 5px;
+ -moz-opacity: 0.4;
+ opacity: 0.4;
+ margin-top: -1px;
+ margin-left: 5px;
+}
+.ngRemoveGroup:hover {
+ color: black;
+ text-decoration: none;
+ cursor: pointer;
+ -moz-opacity: 0.7;
+ opacity: 0.7;
+}
+.ngAggArrowExpanded {
+ position: absolute;
+ left: 8px;
+ bottom: 10px;
+ width: 0;
+ height: 0;
+ border-style: solid;
+ border-width: 0 0 9px 9px;
+ border-color: transparent transparent #000000 transparent;
+}
+.ngAggregate {
+ position: absolute;
+ background-color: #c9dde1;
+ border-bottom: 1px solid beige;
+ overflow: hidden;
+ top: 0;
+ bottom: 0;
+ right: -1px;
+ left: 0;
+}
+.ngAggregateText {
+ position: absolute;
+ left: 27px;
+ top: 5px;
+ line-height: 20px;
+ white-space: nowrap;
+}
+.ngRow {
+ position: absolute;
+ border-bottom: 1px solid #d4d4d4;
+}
+.ngRow.odd {
+ background-color: #fdfdfd;
+}
+.ngRow.even {
+ background-color: #f3f3f3;
+}
+.ngRow.selected {
+ background-color: #c9dde1;
+}
+.ngCell {
+ overflow: hidden;
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ background-color: inherit;
+}
+.ngCell.pinned {
+ z-index: 1;
+}
+.ngCellText {
+ padding: 5px;
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ white-space: nowrap;
+ -ms-text-overflow: ellipsis;
+ -o-text-overflow: ellipsis;
+ text-overflow: ellipsis;
+ overflow: hidden;
+}
+.ngSelectionCell {
+ margin-top: 9px;
+ margin-left: 6px;
+}
+.ngSelectionHeader {
+ position: absolute;
+ top: 11px;
+ left: 6px;
+}
+.ngCellElement:focus {
+ outline: 0;
+ background-color: #b3c4c7;
+}
+.ngRow.canSelect {
+ cursor: pointer;
+}
+.ngSelectionCheckbox {
+ margin-top: 9px;
+ margin-left: 6px;
+}
+.ngFooterPanel {
+ background-color: #eaeaea;
+ padding: 0;
+ border-top: 1px solid #d4d4d4;
+ position: relative;
+}
+.nglabel {
+ display: block;
+ float: left;
+ font-weight: bold;
+ padding-right: 5px;
+}
+.ngTotalSelectContainer {
+ float: left;
+ margin: 5px;
+ margin-top: 7px;
+}
+.ngFooterSelectedItems {
+ padding: 2px;
+}
+.ngFooterTotalItems.ngnoMultiSelect {
+ padding: 0 !important;
+}
+.ngGridMaxPagesNumber {
+ vertical-align: middle;
+}
+.ngPagerFirstBar {
+ width: 10px;
+ border-left: 2px solid #4d4d4d;
+ margin-top: -6px;
+ height: 12px;
+ margin-left: -3px;
+}
+.ngPagerButton {
+ height: 25px;
+ min-width: 26px;
+}
+.ngPagerFirstTriangle {
+ width: 0;
+ height: 0;
+ border-style: solid;
+ border-width: 5px 8.7px 5px 0;
+ border-color: transparent #4d4d4d transparent transparent;
+ margin-left: 2px;
+}
+.ngPagerNextTriangle {
+ margin-left: 1px;
+}
+.ngPagerPrevTriangle {
+ margin-left: 0;
+}
+.ngPagerLastTriangle {
+ width: 0;
+ height: 0;
+ border-style: solid;
+ border-width: 5px 0 5px 8.7px;
+ border-color: transparent transparent transparent #4d4d4d;
+ margin-left: -1px;
+}
+.ngPagerLastBar {
+ width: 10px;
+ border-left: 2px solid #4d4d4d;
+ margin-top: -6px;
+ height: 12px;
+ margin-left: 1px;
+}
+.ngFooterTotalItems {
+ padding: 2px;
+}
Propchange: incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/css/ng-grid.2.0.12.css
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/css/ng-grid.2.0.12.css
------------------------------------------------------------------------------
svn:executable = *
Propchange: incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/css/ng-grid.2.0.12.css
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/js/app/controllers/controllers-report.js
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/js/app/controllers/controllers-report.js?rev=1619686&view=auto
==============================================================================
--- incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/js/app/controllers/controllers-report.js (added)
+++ incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/js/app/controllers/controllers-report.js Fri Aug 22 07:06:30 2014
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+'use strict';
+
+/* Controllers */
+define(['jquery','angular','bootstrap','services','ui-bootstrap','nggrid'], function (){
+
+ var dayDuration = 24 * 3600 * 1000;
+
+
+ var reportControllers = angular.module('countersControllers', ['sironaJvmServices','ui.bootstrap','ui.bootstrap.datetimepicker']);
+
+ reportControllers.controller( 'countersHomeCtrl', ['$scope','$routeParams','counters',
+ function ( $scope,$routeParams,counters){
+
+ $scope.data={};
+
+ console.log("countersHomeCtrl");
+
+ counters.query().$promise.then(function(result){
+ $scope.data.counters=result;
+
+ });
+
+ }]);
+
+});
+
+
+
+
+
Propchange: incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/js/app/controllers/controllers-report.js
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/sirona/trunk/server/reporting/reporting-ui/src/main/webapp/js/app/controllers/controllers-report.js
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision