Author: shijh
Date: Mon Jan 2 13:44:06 2017 New Revision: 1776930 URL: http://svn.apache.org/viewvc?rev=1776930&view=rev Log: Implemented: Update Apache Solr/Lucene to release 6.2.1 (OFBIZ-8316) Upgraded Apache Solr/Lucene from 5.3.1 to 6.2.1. Thanks: Michael Brohl and Cao PengAn for the contribution. Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/collections.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/dashboard.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/schema.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/stream.css ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/ ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/app.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/ ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/analysis.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/cloud.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/collection-overview.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/collections.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/core-overview.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/cores.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/dataimport.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/documents.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/files.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/index.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/java-properties.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/logging.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/plugins.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/query.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/replication.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/schema.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/segments.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/stream.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/controllers/threads.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/angular/services.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/lib/jquery-1.7.2.min.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/ ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular-chosen.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular-cookies.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular-cookies.min.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular-resource.min.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular-route.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular-route.min.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular-sanitize.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular-sanitize.min.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/angular.min.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/chosen.jquery.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/chosen.jquery.min.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/d3.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/highlight.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/jquery-2.1.3.min.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/jquery.jstree.js ofbiz/trunk/specialpurpose/solr/webapp/solr/libs/ngtimeago.js ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/ ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/analysis.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/cloud.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/collection_overview.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/collections.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/core_overview.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/cores.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/dataimport.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/documents.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/files.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/index.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/java-properties.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/logging-levels.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/logging.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/plugins.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/query.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/replication.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/schema.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/segments.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/stream.html ofbiz/trunk/specialpurpose/solr/webapp/solr/partials/threads.html Modified: ofbiz/trunk/specialpurpose/lucene/build.gradle ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/ProductDocument.java ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/SearchWorker.java ofbiz/trunk/specialpurpose/solr/build.gradle ofbiz/trunk/specialpurpose/solr/src/main/java/org/apache/ofbiz/solr/webapp/OFBizSolrContextFilter.java ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/cloud.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/common.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/index.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/menu.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/segments.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/chosen.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/common.css ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/segments.css ofbiz/trunk/specialpurpose/solr/webapp/solr/js/lib/ZeroClipboard.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/lib/jquery.blockUI.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/lib/jquery.form.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/lib/jquery.jstree.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/require.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/scripts/app.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/scripts/cloud.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/scripts/cores.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/scripts/files.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/scripts/replication.js ofbiz/trunk/specialpurpose/solr/webapp/solr/js/scripts/segments.js ofbiz/trunk/specialpurpose/solr/webapp/solr/tpl/segments.html Modified: ofbiz/trunk/specialpurpose/lucene/build.gradle URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/lucene/build.gradle?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/lucene/build.gradle (original) +++ ofbiz/trunk/specialpurpose/lucene/build.gradle Mon Jan 2 13:44:06 2017 @@ -17,7 +17,7 @@ * under the License. */ dependencies { - pluginLibsCompile 'org.apache.lucene:lucene-core:5.3.1' - pluginLibsCompile 'org.apache.lucene:lucene-queryparser:5.3.1' - pluginLibsCompile 'org.apache.lucene:lucene-analyzers-common:5.3.1' + pluginLibsCompile 'org.apache.lucene:lucene-core:6.2.1' + pluginLibsCompile 'org.apache.lucene:lucene-queryparser:6.2.1' + pluginLibsCompile 'org.apache.lucene:lucene-analyzers-common:6.2.1' } \ No newline at end of file Modified: ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/ProductDocument.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/ProductDocument.java?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/ProductDocument.java (original) +++ ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/ProductDocument.java Mon Jan 2 13:44:06 2017 @@ -32,11 +32,12 @@ import org.apache.ofbiz.entity.condition import org.apache.ofbiz.entity.util.EntityQuery; import org.apache.ofbiz.entity.util.EntityUtil; import org.apache.ofbiz.entity.util.EntityUtilProperties; - import org.apache.lucene.document.Document; -import org.apache.lucene.document.DoubleField; +//import org.apache.lucene.document.DoubleField; +import org.apache.lucene.document.DoublePoint; import org.apache.lucene.document.Field; -import org.apache.lucene.document.LongField; +//import org.apache.lucene.document.LongField; +import org.apache.lucene.document.LongPoint; import org.apache.lucene.document.StringField; import org.apache.lucene.document.TextField; import org.apache.lucene.index.Term; @@ -88,9 +89,11 @@ public class ProductDocument implements this.addTextFieldByWeight(doc, "description", product.getString("description"), "index.weight.Product.description", 0, false, "fullText", delegator); this.addTextFieldByWeight(doc, "longDescription", product.getString("longDescription"), "index.weight.Product.longDescription", 0, false, "fullText", delegator); //doc.add(new StringField("introductionDate", checkValue(product.getString("introductionDate")), Store.NO)); - doc.add(new LongField("introductionDate", quantizeTimestampToDays(product.getTimestamp("introductionDate")), Field.Store.NO)); +// doc.add(new LongField("introductionDate", quantizeTimestampToDays(product.getTimestamp("introductionDate")), Field.Store.NO)); + doc.add(new LongPoint("introductionDate", quantizeTimestampToDays(product.getTimestamp("introductionDate")))); nextReIndex = this.checkSetNextReIndex(product.getTimestamp("introductionDate"), nextReIndex); - doc.add(new LongField("salesDiscontinuationDate", quantizeTimestampToDays(product.getTimestamp("salesDiscontinuationDate")), Field.Store.NO)); +// doc.add(new LongField("salesDiscontinuationDate", quantizeTimestampToDays(product.getTimestamp("salesDiscontinuationDate")), Field.Store.NO)); + doc.add(new LongPoint("salesDiscontinuationDate", quantizeTimestampToDays(product.getTimestamp("salesDiscontinuationDate")))); nextReIndex = this.checkSetNextReIndex(product.getTimestamp("salesDiscontinuationDate"), nextReIndex); doc.add(new StringField("isVariant", product.get("isVariant") != null && product.getBoolean("isVariant") ? "true" : "false", Field.Store.NO)); @@ -247,7 +250,8 @@ public class ProductDocument implements fieldNameSb.append('_'); fieldNameSb.append(productPrice.getString("productStoreGroupId")); fieldNameSb.append("_price"); - doc.add(new DoubleField(fieldNameSb.toString(), productPrice.getDouble("price"), Field.Store.NO)); +// doc.add(new DoubleField(fieldNameSb.toString(), productPrice.getDouble("price"), Field.Store.NO)); + doc.add(new DoublePoint(fieldNameSb.toString(), productPrice.getDouble("price"))); } // Index ProductSuppliers Modified: ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/SearchWorker.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/SearchWorker.java?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/SearchWorker.java (original) +++ ofbiz/trunk/specialpurpose/lucene/src/main/java/org/apache/ofbiz/content/search/SearchWorker.java Mon Jan 2 13:44:06 2017 @@ -41,7 +41,7 @@ public final class SearchWorker { public static final String module = SearchWorker.class.getName(); - private static final Version LUCENE_VERSION = Version.LUCENE_5_3_1; + private static final Version LUCENE_VERSION = Version.LUCENE_6_2_1; private SearchWorker() {} Modified: ofbiz/trunk/specialpurpose/solr/build.gradle URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/build.gradle?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/build.gradle (original) +++ ofbiz/trunk/specialpurpose/solr/build.gradle Mon Jan 2 13:44:06 2017 @@ -17,5 +17,5 @@ * under the License. */ dependencies { - pluginLibsCompile 'org.apache.solr:solr-core:5.3.1' + pluginLibsCompile 'org.apache.solr:solr-core:6.2.1' } \ No newline at end of file Modified: ofbiz/trunk/specialpurpose/solr/src/main/java/org/apache/ofbiz/solr/webapp/OFBizSolrContextFilter.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/src/main/java/org/apache/ofbiz/solr/webapp/OFBizSolrContextFilter.java?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/src/main/java/org/apache/ofbiz/solr/webapp/OFBizSolrContextFilter.java (original) +++ ofbiz/trunk/specialpurpose/solr/src/main/java/org/apache/ofbiz/solr/webapp/OFBizSolrContextFilter.java Mon Jan 2 13:44:06 2017 @@ -20,10 +20,13 @@ package org.apache.ofbiz.solr.webapp; import java.io.IOException; import java.io.OutputStream; +import java.nio.file.Path; +import java.nio.file.Paths; import java.util.HashMap; import java.util.Locale; import java.util.Map; import java.util.Properties; + import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; @@ -157,12 +160,14 @@ public class OFBizSolrContextFilter exte * Override this to change CoreContainer initialization * @return a CoreContainer to hold this server's cores */ - protected CoreContainer createCoreContainer(String solrHome, Properties extraProperties) { + protected CoreContainer createCoreContainer(Path solrHome, Properties extraProperties) { NodeConfig nodeConfig = null; try { nodeConfig = loadNodeConfig(solrHome, extraProperties); } catch (SolrException e) { - nodeConfig = loadNodeConfig("specialpurpose/solr/home", extraProperties); +// nodeConfig = loadNodeConfig("specialpurpose/solr/home", extraProperties); + Path path = Paths.get("specialpurpose/solr/home"); + nodeConfig = loadNodeConfig(path, extraProperties); } cores = new CoreContainer(nodeConfig, extraProperties, true); cores.load(); Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml Mon Jan 2 13:44:06 2017 @@ -46,7 +46,7 @@ <filter-class>org.apache.ofbiz.webapp.control.ControlFilter</filter-class> <init-param> <param-name>allowedPaths</param-name> - <param-value>/control:/error:/css:/img:/js:/tpl:/favicon.ico:/admin:/admin.html:/#:/schema:/config:/:/solrdefault</param-value> + <param-value>/control:/error:/css:/img:/js:/tpl:/favicon.ico:/admin:/admin.html:/#:/schema:/config:/:/solrdefault:/libs:/partials:/info:/logging:/level:/solr:/~logging:</param-value> </init-param> <init-param> <param-name>redirectPath</param-name> Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html Mon Jan 2 13:44:06 2017 @@ -1,6 +1,5 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> -<html> - +<html ng-app="solrAdminApp"> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with @@ -19,50 +18,74 @@ limitations under the License. --> <head> - <title>Solr Admin</title> - + <link rel="icon" type="image/x-icon" href="img/favicon.ico?_=${version}"> <link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/common.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/analysis.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/cloud.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/cores.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/dashboard.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/dataimport.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/files.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/index.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/common.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/analysis.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/cloud.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/cores.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/collections.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/dashboard.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/dataimport.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/files.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/index.css?_=${version}"> <link rel="stylesheet" type="text/css" href="css/styles/java-properties.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/logging.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/menu.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/plugins.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/documents.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/query.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/replication.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/schema-browser.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/threads.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/styles/segments.css?_=${version}"> - <link rel="stylesheet" type="text/css" href="css/chosen.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/logging.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/menu.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/plugins.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/documents.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/query.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/stream.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/replication.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/schema.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/segments.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/threads.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/angular/chosen.css?_=${version}"> <meta http-equiv="x-ua-compatible" content="IE=9"> - - <script type="text/javascript"> - - var app_config = {}; - - app_config.solr_path = '${contextPath}'; - app_config.core_admin_path = '${adminPath}'; - - </script> - + <script src="libs/jquery-2.1.3.min.js"></script> + <script src="libs/chosen.jquery.js"></script> + <script src="libs/jquery.jstree.js"></script> + <script src="libs/angular.js"></script> + <script src="libs/angular-chosen.js"></script> + <script src="libs/angular-resource.min.js"></script> + <script src="libs/angular-route.min.js"></script> + <script src="libs/angular-cookies.min.js"></script> + <script src="libs/ngtimeago.js"></script> + <script src="libs/highlight.js"></script> + <script src="libs/d3.js"></script> + <script src="js/angular/app.js"></script> + <script src="js/angular/services.js"></script> + <script src="js/angular/controllers/index.js"></script> + <script src="js/angular/controllers/logging.js"></script> + <script src="js/angular/controllers/cloud.js"></script> + <script src="js/angular/controllers/collections.js"></script> + <script src="js/angular/controllers/cores.js"></script> + <script src="js/angular/controllers/threads.js"></script> + <script src="js/angular/controllers/java-properties.js"></script> + <script src="js/angular/controllers/core-overview.js"></script> + <script src="js/angular/controllers/collection-overview.js"></script> + <script src="js/angular/controllers/analysis.js"></script> + <script src="js/angular/controllers/dataimport.js"></script> + <script src="js/angular/controllers/documents.js"></script> + <script src="js/angular/controllers/files.js"></script> + <script src="js/angular/controllers/query.js"></script> + <script src="js/angular/controllers/stream.js"></script> + <script src="js/angular/controllers/plugins.js"></script> + <script src="js/angular/controllers/replication.js"></script> + <script src="js/angular/controllers/schema.js"></script> + <script src="js/angular/controllers/segments.js"></script> + </head> -<body> - - <div id="wrapper"> - +<body ng-controller="MainController"> + + <div id="wrapper" scrollable-when-small> + <div id="header"> - + <a href="./" id="solr"><span>Apache SOLR</span></a> <p id="environment"> </p> @@ -70,95 +93,151 @@ limitations under the License. </div> <div id="main" class="clearfix"> - - <div id="init-failures"> + + <div class="header-message" id="init-failures" ng-show="showInitFailures"> <h2>SolrCore Initialization Failures</h2> - <ul></ul> + <ul> + <li ng-repeat="(core,error) in initFailures"><strong>{{core}}:</strong> {{error}}</li> + </ul> <p>Please check your logs for more information</p> - + + </div> + + <div id="loading" class="loader universal-loader" loading-status-message> </div> + + <div id="connection-box" connection-message> + <div id="connection-status-modal"> + </div> + + <div class="connection-status header-message"> + <h2>Connection to Solr lost</h2> + <p>Please check the Solr instance.</p> + </div> + <div class="connection-status header-message" id="connection-status-recovered" ng-show="connectionRecovered"> + <h2>Connection recovered...</h2> + <p>Continuing to load data...</p> + </div> + </div> + <div id="http-exception" class="header-message" ng-repeat="(url, exception) in exceptions"> + <div class="exception">{{exception.msg}}</div> + </div> + + <div class="other-ui-link"> + Use <a class="ul" href="/solr/old.html">original UI</a><a target="_blank" href="http://wiki.apache.org/solr/AngularUI"> <span class="help"></span></a> </div> <div id="content-wrapper"> - <div id="content"> - - - + <div ng-view id="content"> + </div> </div> - + <div id="menu-wrapper"> <div> - + <ul id="menu"> - <li id="index" class="global"><p><a href="#/">Dashboard</a></p></li> + <li id="index" class="global" ng-class="{active:page=='index'}"><p><a href="#/">Dashboard</a></p></li> - <li id="logging" class="global"><p><a href="#/~logging">Logging</a></p> - <ul> - <li class="level"><a href="#/~logging/level">Level</a></li> + <li id="logging" class="global" ng-class="{active:page=='logging'}"><p><a href="#/~logging">Logging</a></p> + <ul ng-show="showingLogging"> + <li class="level" ng-class="{active:page=='logging-levels'}"><a href="#/~logging/level">Level</a></li> </ul> </li> - <li id="cloud" class="global optional"><p><a href="#/~cloud">Cloud</a></p> - <ul> - <li class="tree"><a href="#/~cloud?view=tree">Tree</a></li> - <li class="graph"><a href="#/~cloud">Graph</a></li> - <li class="rgraph"><a href="#/~cloud?view=rgraph">Graph (Radial)</a></li> - <li class="dump"><a href="#/~cloud">Dump</a></li> + <li id="cloud" class="global optional" ng-show="isCloudEnabled" ng-class="{active:showingCloud}"><p><a href="#/~cloud">Cloud</a></p> + <ul ng-show="showingCloud"> + <li class="tree" ng-class="{active:page=='cloud-tree'}"><a href="#/~cloud?view=tree">Tree</a></li> + <li class="graph" ng-class="{active:page=='cloud-graph'}"><a href="#/~cloud">Graph</a></li> + <li class="rgraph" ng-class="{active:page=='cloud-rgraph'}"><a href="#/~cloud?view=rgraph">Graph (Radial)</a></li> + <li class="dump" ng-class="{active:page=='cloud-dump'}"><a ng-click="dumpCloud()">Dump</a></li> </ul> </li> - <li id="cores" class="global"><p><a href="#/~cores">Core Admin</a></p></li> + <li ng-show="isCloudEnabled" id="collections" class="global" ng-class="{active:page=='collections'}"><p><a href="#/~collections">Collections</a></p></li> + <li ng-hide="isCloudEnabled" id="cores" class="global" ng-class="{active:page=='cores'}"><p><a href="#/~cores">Core Admin</a></p></li> + + <li id="java-properties" class="global" ng-class="{active:page=='java-props'}"><p><a href="#/~java-properties">Java Properties</a></li> - <li id="java-properties" class="global"><p><a href="#/~java-properties">Java Properties</a></li> + <li id="threads" class="global" ng-class="{active:page=='threads'}"><p><a href="#/~threads">Thread Dump</a></p></li> - <li id="threads" class="global"><p><a href="#/~threads">Thread Dump</a></p></li> - </ul> + <div id="collection-selector" ng-show="isCloudEnabled"> + <div id="has-collections" ng-show="collections.length!=0"> + <select data-placeholder="Collection Selector" + ng-model="currentCollection" + chosen + ng-change="showCollection(currentCollection)" + ng-options="collection.name for collection in collections"></select> + </div> + <p id="has-no-collections" ng-show="collections.length==0"><a href="#/~collections"> + No collections available + <span>Go and create one</span> + </a></p> + </div> + <div id="collection-menu" class="sub-menu" ng-show="currentCollection"> + <ul> + <li class="overview" ng-class="{active:page=='collection-overview'}"><a href="#/{{currentCollection.name}}/collection-overview"><span>Overview</span></a></li> + <li class="analysis" ng-class="{active:page=='analysis'}"><a href="#/{{currentCollection.name}}/analysis"><span>Analysis</span></a></li> + <li class="dataimport" ng-class="{active:page=='dataimport'}"><a href="#/{{currentCollection.name}}/dataimport"><span>Dataimport</span></a></li> + <li class="documents" ng-class="{active:page=='documents'}"><a href="#/{{currentCollection.name}}/documents"><span>Documents</span></a></li> + <li class="files" ng-class="{active:page=='files'}"><a href="#/{{currentCollection.name}}/files"><span>Files</span></a></li> + <li class="query" ng-class="{active:page=='query'}"><a href="#/{{currentCollection.name}}/query"><span>Query</span></a></li> + <li class="stream" ng-class="{active:page=='stream'}"><a href="#/{{currentCollection.name}}/stream"><span>Stream</span></a></li> + <li class="schema" ng-class="{active:page=='schema'}"><a href="#/{{currentCollection.name}}/schema"><span>Schema</span></a></li> + </ul> + </div> <div id="core-selector"> - <div id="has-cores"> - <select data-placeholder="Core Selector"></select> + <div id="has-cores" ng-show="cores.length!=0"> + <select data-placeholder="Core Selector" + ng-model="currentCore" + chosen + ng-change="showCore(currentCore)" + ng-options="core.name for core in cores"></select> </div> - <p id="has-no-cores"><a href="#/~cores"> + <p id="has-no-cores" ng-show="cores.length==0"><a href="#/~cores"> No cores available <span>Go and create one</span> </a></p> </div> - <div id="core-menu"> - <ul></ul> + <div id="core-menu" class="sub-menu" ng-show="currentCore"> + <ul> + <li class="overview" ng-class="{active:page=='overview'}"><a href="#/{{currentCore.name}}"><span>Overview</span></a></li> + <li ng-hide="isCloudEnabled" class="analysis" ng-class="{active:page=='analysis'}"><a href="#/{{currentCore.name}}/analysis"><span>Analysis</span></a></li> + <li ng-hide="isCloudEnabled" class="dataimport" ng-class="{active:page=='dataimport'}"><a href="#/{{currentCore.name}}/dataimport"><span>Dataimport</span></a></li> + <li ng-hide="isCloudEnabled" class="documents" ng-class="{active:page=='documents'}"><a href="#/{{currentCore.name}}/documents"><span>Documents</span></a></li> + <li ng-hide="isCloudEnabled" class="files" ng-class="{active:page=='files'}"><a href="#/{{currentCore.name}}/files"><span>Files</span></a></li> + <li class="ping" ng-class="{active:page=='ping'}"><a ng-click="ping()"><span>Ping</span><small class="qtime" ng-show="showPing"> (<span>{{pingMS}}ms</span>)</small></a></li> + <li class="plugins" ng-class="{active:page=='plugins'}"><a href="#/{{currentCore.name}}/plugins"><span>Plugins / Stats</span></a></li> + <li ng-hide="isCloudEnabled" class="query" ng-class="{active:page=='query'}"><a href="#/{{currentCore.name}}/query"><span>Query</span></a></li> + <li ng-hide="isCloudEnabled" class="replication" ng-class="{active:page=='replication'}"><a href="#/{{currentCore.name}}/replication"><span>Replication</span></a></li> + <li ng-hide="isCloudEnabled" class="schema" ng-class="{active:page=='schema'}"><a href="#/{{currentCore.name}}/schema"><span>Schema</span></a></li> + <li class="segments" ng-class="{active:page=='segments'}"><a href="#/{{currentCore.name}}/segments"><span>Segments info</span></a></li> + </ul> </div> - + </div> </div> - + <div id="meta"> - + <ul> - + <li class="documentation"><a href="http://lucene.apache.org/solr/"><span>Documentation</span></a></li> <li class="issues"><a href="http://issues.apache.org/jira/browse/SOLR"><span>Issue Tracker</span></a></li> - <li class="irc"><a href="https://wiki.apache.org/solr/IRCChannels"><span>IRC Channel</span></a></li> - <li class="mailinglist"><a href="http://lucene.apache.org/solr/resources.html#community"><span>Community forum</span></a></li> + <li class="irc"><a href="http://webchat.freenode.net/?channels=#solr"><span>IRC Channel</span></a></li> + <li class="mailinglist"><a href="http://wiki.apache.org/solr/UsingMailingLists"><span>Community forum</span></a></li> <li class="wiki-query-syntax"><a href="https://cwiki.apache.org/confluence/display/solr/Query+Syntax+and+Parsing"><span>Solr Query Syntax</span></a></li> - + </ul> - - </div> - - </div> - - </div> - <div id="connection_status"> + </div> - <span>Connection lost …</span> + </div> </div> - - <script type="text/javascript"> var require = { urlArgs: '_=${version}' }; </script> - <script src="js/require.js?_=${version}" data-main="js/main"></script> </body> </html> Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/cloud.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/cloud.css?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/cloud.css (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/cloud.css Mon Jan 2 13:44:06 2017 @@ -184,6 +184,20 @@ limitations under the License. background-image: url( ../../img/ico/cross-1.png ); } +#content #cloud #file-content #toggle.plus +{ + font-style: italic; + padding-left: 17px; + background-image: url( ../../img/ico/toggle-small-expand.png ); +} + +#content #cloud #file-content #toggle.minus +{ + font-style: italic; + padding-left: 17px; + background-image: url( ../../img/ico/toggle-small.png ); +} + #content #cloud #file-content #data { border-top: 1px solid #c0c0c0; Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/collections.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/collections.css?rev=1776930&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/collections.css (added) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/collections.css Mon Jan 2 13:44:06 2017 @@ -0,0 +1,353 @@ +/* + +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. + +*/ + +#content #collections +{ + position: relative; +} + +#content #collections #ui-block +{ + background-color: #fff; + height: 200px; + position: absolute; + left: -5px; + top: 35px; + width: 500px; +} + +#content #collections #frame +{ + float: right; + width: 86%; +} + +#content #collections #navigation +{ + padding-top: 50px; + width: 12%; +} + +#content #collections #navigation a +{ + padding-left: 5px; +} + +#content #collections #frame .actions +{ + margin-bottom: 20px; + min-height: 30px; +} + +#content #collections .actions div.action +{ + width: 320px; +} + +#content #collections .actions div.action .cloud +{ +} + +#content #collections .actions form .directory-note +{ + background-image: url( ../../img/ico/information-white.png ); + background-position: 22% 1px; + color: #c0c0c0; +} + +#content #collections .actions form .error +{ + background-image: url( ../../img/ico/cross-button.png ); + background-position: 22% 1px; + color: #c00; + font-weight: bold; +} + +#content #collections .actions form p +{ + padding-bottom: 8px; +} + +#content #collections .actions form label +{ + float: left; + padding-top: 3px; + padding-bottom: 3px; + text-align: right; + width: 25%; +} + +#content #collections .actions form input, +#content #collections .actions form select, +#content #collections .actions form .chosen-container +#content #collections .actions form .buttons, +#content #collections .actions form .note span +{ + float: right; + width: 71%; +} + +#content #collections .actions form .note span +{ + padding-left: 3px; + padding-right: 3px; +} + +#content #collections .actions form .buttons +{ + padding-top: 10px; +} + +#content #collections .actions form button.submit +{ + margin-right: 20px; +} + +#content #collections .actions form button.submit span +{ + background-image: url( ../../img/ico/tick.png ); +} + +#content #collections .actions form button.reset span +{ + background-image: url( ../../img/ico/cross.png ); +} + +#content #collections .actions #add +{ + left: 0; + position: absolute; +} + +#content #collections .actions #add span +{ + background-image: url( ../../img/ico/plus-button.png ); +} + +#content #collections .actions #delete +{ + margin-right: 20px; +} + +#content #collections .actions #delete span +{ + background-image: url( ../../img/ico/cross.png ); +} + +#content #collections .actions #reload span +{ + background-image: url( ../../img/ico/arrow-circle.png ); +} + +#content #collections .actions #rename span +{ + background-image: url( ../../img/ico/ui-text-field-select.png ); +} + +#content #collections .actions #create-alias span +{ + background-image: url( ../../img/ico/arrow-switch.png ); +} + +#content #collections .actions #delete-alias span +{ + background-image: url( ../../img/ico/cross-button.png ); +} + +#content #collections .actions #optimize span +{ + background-image: url( ../../img/ico/hammer-screwdriver.png ); +} + +#content #collections .actions div.action +{ + background-color: #fff; + border: 1px solid #f0f0f0; + box-shadow: 5px 5px 10px #c0c0c0; + -moz-box-shadow: 5px 5px 10px #c0c0c0; + -webkit-box-shadow: 5px 5px 10px #c0c0c0; + position: absolute; + left: 50px; + top: 40px; + padding: 10px; +} + +#content #collections .actions #add-replica span +{ + background-image: url( ../../img/ico/plus-button.png ); +} + +#content #collections div.action.add-replica { + border: 1px solid #f0f0f0; + width: 400px; + margin-right: 0px; + padding: 10px; + float: right; +} + +#content #collections div.action.add-replica p { + padding-bottom: 8px; +} + +#content #collections div.action.add-replica .buttons { + float: right; +} + +#content #collections div.action.add-replica .buttons .submit span { + background-image: url( ../../img/ico/tick.png ); + background-position: 0% 50%; +} + +#content #collections div.action.add-replica .buttons .reset span { + background-image: url( ../../img/ico/cross.png ); + background-position: 0% 50%; +} + +#content #collections #data #collection-data h2 { background-image: url( ../../img/ico/box.png ); } +#content #collections #data #shard-data h2 { background-image: url( ../../img/ico/sitemap.png ); } +#content #collections #data #shard-data .replica h2 { background-image: url( ../../img/ico/node-slave.png ); } + +#content #collections #data #index-data +{ + margin-top: 10px; +} + +#content #collections #data li +{ + padding-bottom: 3px; + padding-top: 3px; +} + +#content #collections #data li.odd +{ + background-color: #f8f8f8; +} + +#content #collections #data li dt +{ + float: left; + width: 50%; +} + +#content #collections #data li dd +{ + float: right; + width: 50%; +} + +#content #collections #data li dd.ico +{ + background-image: url( ../../img/ico/slash.png ); + height: 20px; +} + +#content #collections #data li dd.ico.ico-1 +{ + background-image: url( ../../img/ico/tick.png ); +} + +#content #collections #data li dd.ico span +{ +} + +#content #collections #add_advanced { + background-image: url( ../../img/ico/chevron-small-expand.png ); + background-position: 100% 50%; + cursor: pointer; + padding-right: 21px; +} + +#content #collections #add_advanced.open { + background-image: url( ../../img/ico/chevron-small.png ); +} + +#content #collections .shard { + margin-left: 40px; +} + +#content #collections .replica { + margin-left: 40px; +} + +#content #collections .shard h2 span.openReplica { + background-image: url( ../../img/ico/chevron-small-expand.png ); + background-position: 100% 50%; + cursor: pointer; + padding-right: 21px; +} + +#content #collections .shard h2 span.openReplica .open { + background-image: url( ../../img/ico/chevron-small.png ); +} + +#content #collections .replica h2 span { + background-image: url( ../../img/ico/chevron-small-expand.png ); + background-position: 100% 50%; + cursor: pointer; + padding-right: 21px; +} + +#content #collections .replica h2 span.rem { + background-image: url( ../../img/ico/cross.png ); + background-position: 100% 50%; + cursor: pointer; + padding-right: 21px; + right:10px; +} + +#content #collections .replica h2 span .open { + background-image: url( ../../img/ico/chevron-small.png ); +} + +#content #collections #add-replica { + float: right; +} + +#content #collections .add select { + width: 100%; +} + +#content #collections .chosen-container ul { + width: 100%; + padding: 5px; +} + +#content #collections .delete-replica span +{ + background-image: url( ../../img/ico/cross.png ); +} +#content #collections .delete-replica button.submit span +{ + background-image: url( ../../img/ico/tick.png ); +} + +#content #collections #node-name .chosen-container +{ + width: 100% !important; +} + +#content #collections #collection-data { + float: left; + width: 35%; +} + +#content #collections #shard-data { + float: left; + width: 65%; +} Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/common.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/common.css?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/common.css (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/common.css Mon Jan 2 13:44:06 2017 @@ -352,6 +352,18 @@ ul display: none; } +.exception +{ + background-color: #f00; + background-image: url( ../../img/ico/construction.png ); + background-position: 10px 50%; + color: #fff; + font-weight: bold; + margin-bottom: 20px; + padding: 10px; + padding-left: 35px; +} + #content-wrapper { margin-left: 150px; @@ -722,3 +734,35 @@ pre.syntax .tex .formula -webkit-box-shadow: 1px 1px 0 #d8d8d8; color: #333; } + +.exception .show-exception { + margin-top: 4px; + display: block; + position: absolute; + right: 10px; + top: 7px; + color: #fff; +} + +#exception .show-exception a:hover { + color: #333; +} + +.other-ui-link { + margin: 0px; + position: absolute; + right: 0px; + top: -20px; +} + +.other-ui-link span, +.new-ui-warning span.help { + background-image: url( ../../img/ico/information-white.png ); + right: 0px; + padding-left: 16px; +} + +.other-ui-link a.ul { + text-decoration: underline; +} + Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/dashboard.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/dashboard.css?rev=1776930&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/dashboard.css (added) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/dashboard.css Mon Jan 2 13:44:06 2017 @@ -0,0 +1,185 @@ +/* + +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. + +*/ + +#content #dashboard .block +{ + background-image: none; + width: 49%; +} + +#content #dashboard .fieldlist +{ + float: left; +} + +#content #dashboard .fieldlist dt, +#content #dashboard .fieldlist dd +{ + display: block; + float: left; +} + +#content #dashboard .fieldlist dt +{ + clear: left; + margin-right: 2%; + text-align: right; + width: 23%; +} + +#content #dashboard .fieldlist dd +{ + width: 74%; +} + +#content #dashboard .fieldlist .index_optimized +{ + margin-top: 10px; +} + +#content #dashboard .fieldlist .ico +{ + background-image: url( ../../img/ico/slash.png ); + height: 20px; +} + +#content #dashboard .fieldlist .ico.ico-1 +{ + background-image: url( ../../img/ico/tick.png ); +} + +#content #dashboard .fieldlist .ico span +{ + display: none; +} + +#content #dashboard #statistics .index_optimized.value a +{ + display: none; +} + +#content #dashboard #statistics .index_optimized.value.ico-0 a +{ + background-color: #f0f0f0; + background-image: url( ../../img/ico/hammer-screwdriver.png ); + background-position: 5px 50%; + border: 1px solid #c0c0c0; + display: block; + float: left; + margin-left: 50px; + padding: 1px 5px; + padding-left: 26px; +} + +#content #dashboard #statistics .index_has-deletions +{ + display: none; +} + +#content #dashboard #statistics .index_has-deletions.value.ico-0 +{ + background-image: url( ../../img/ico/tick-red.png ); +} + +#content #dashboard #replication +{ + float: left; +} + +#content #dashboard #replication .is-replicating +{ + background-position: 99% 50%; + display: block; +} + +#content #dashboard #replication #details table thead td span +{ + display: none; +} + +#content #dashboard #instance +{ + float: right; +} + +#content #dashboard #instance .dir_impl +{ + margin-top: 10px; +} + +#content #dashboard #admin-extra +{ + float: left; +} + +#content #dashboard #healthcheck +{ + float: right; +} + +#content #dashboard #healthcheck .ico +{ + background-image: url( ../../img/ico/slash.png ); + height: 20px; + padding-left: 20px; + width: 60%; +} + +#content #dashboard #healthcheck .ico.ico-1 +{ + background-image: url( ../../img/ico/tick.png ); +} + +#content #dashboard #system h2 { background-image: url( ../../img/ico/server.png ); } +#content #dashboard #statistics h2 { background-image: url( ../../img/ico/chart.png ); } +#content #dashboard #replication h2 { background-image: url( ../../img/ico/node.png ); } +#content #dashboard #replication.master h2 { background-image: url( ../../img/ico/node-master.png ); } +#content #dashboard #replication.slave h2 { background-image: url( ../../img/ico/node-slave.png ); } +#content #dashboard #instance h2 { background-image: url( ../../img/ico/server.png ); } +#content #dashboard #admin-extra h2 { background-image: url( ../../img/ico/plus-button.png ); } +#content #dashboard #collection h2 { background-image: url( ../../img/ico/book-open-text.png ); } +#content #dashboard #shards h2 { background-image: url( ../../img/ico/documents-stack.png ); } + +#content #dashboard #shards { margin-left: 20px;} + +#dashboard #shards .shard h3.shard-title { + display: block; + background-color: #c8c8c8; + font-weight: bold; + padding: 3px; + padding-left: 30px; + margin-left: 20px; + margin-top: 20px; + background-image: url( ../../img/ico/document-text.png ); + background-position-x: 10px; + background-position-y: 3px; +} + +#dashboard #shards .shard .shard-detail { + margin-bottom: 25px; + margin-top: 7px; +} + +#dashboard #shards .shard .replica { + background-color: #e4e4e4; +} + +#dashboard #shards .shard .replica.odd { + background-color: #fff; +} Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/index.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/index.css?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/index.css (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/index.css Mon Jan 2 13:44:06 2017 @@ -110,6 +110,17 @@ limitations under the License. width: 40%; } +#content #index .data +{ + padding-bottom: 12px; + overflow: hidden; +} + +#content #index .data:hover +{ + overflow-x: auto; +} + #content #index .data li { padding-top: 3px; @@ -127,7 +138,6 @@ limitations under the License. { float: right; text-overflow: ellipsis; - overflow: hidden; white-space: nowrap; width: 80% } Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/menu.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/menu.css?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/menu.css (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/menu.css Mon Jan 2 13:44:06 2017 @@ -43,29 +43,33 @@ limitations under the License. text-overflow: ellipsis; } -#core-selector +#core-selector,#collection-selector { margin-top: 20px; padding-right: 10px; } -#core-selector a +#core-selector a, +#collection-selector a { padding: 0; padding-left: 8px; } -#core-selector select +#core-selector select, +#collection-selector select { width: 100%; } -#core-selector #has-no-cores a +#core-selector #has-no-cores a, +#collection-selector #has-no-collections a { background-image: url( ../../img/ico/database--plus.png ); } -#core-selector #has-no-cores span +#core-selector #has-no-cores span, +#collection-selector #has-no-collections span { color: #c0c0c0; display: block; @@ -172,34 +176,34 @@ limitations under the License. { } -#core-menu p +.sub-menu p { border-top: 1px solid #f0f0f0; } -#core-menu li:first-child p +.sub-menu li:first-child p { border-top: 0; } -#core-menu p a +.sub-menu p a { background-image: url( ../../img/ico/status-offline.png ); } -#core-menu .active p a +.sub-menu .active p a { background-image: url( ../../img/ico/box.png ); } -#core-menu ul, +.sub-menu ul, #menu ul { padding-top: 5px; padding-bottom: 10px; } -#core-menu .active ul, +.sub-menu .active ul, #menu .active ul { display: block; @@ -211,6 +215,7 @@ limitations under the License. } #core-menu ul li a, +#collection-menu ul li a, #menu ul li a { background-position: 7px 50%; @@ -220,20 +225,20 @@ limitations under the License. padding-left: 26px; } -#core-menu ul li:last-child a, +.sub-menu ul li:last-child a, #menu ul li:last-child a { border-bottom: 0; } -#core-menu ul li a:hover, +.sub-menu ul li a:hover, #menu ul li a:hover { background-color: #f0f0f0; color: #333; } -#core-menu ul li.active a, +.sub-menu ul li.active a, #menu ul li.active a { background-color: #d0d0d0; @@ -250,6 +255,7 @@ limitations under the License. #menu #threads.global p a { background-image: url( ../../img/ico/ui-accordion.png ); } +#menu #collections.global p a { background-image: url( ../../img/ico/documents-stack.png ); } #menu #cores.global p a { background-image: url( ../../img/ico/databases.png ); } #menu #cloud.global p a { background-image: url( ../../img/ico/network-cloud.png ); } @@ -258,7 +264,7 @@ limitations under the License. #menu #cloud.global .rgraph a { background-image: url( ../../img/ico/asterisk.png ); } #menu #cloud.global .dump a { background-image: url( ../../img/ico/download-cloud.png ); } -#core-menu .ping.error a +.sub-menu .ping.error a { background-color: #ffcccc; @@ -267,19 +273,20 @@ limitations under the License. cursor: help; } -#core-menu .overview a { background-image: url( ../../img/ico/home.png ); } -#core-menu .query a { background-image: url( ../../img/ico/magnifier.png ); } -#core-menu .analysis a { background-image: url( ../../img/ico/funnel.png ); } -#core-menu .documents a { background-image: url( ../../img/ico/documents-stack.png ); } -#core-menu .files a { background-image: url( ../../img/ico/folder.png ); } -#core-menu .schema-browser a { background-image: url( ../../img/ico/book-open-text.png ); } -#core-menu .replication a { background-image: url( ../../img/ico/node.png ); } -#core-menu .distribution a { background-image: url( ../../img/ico/node-select.png ); } -#core-menu .ping a { background-image: url( ../../img/ico/system-monitor.png ); } -#core-menu .logging a { background-image: url( ../../img/ico/inbox-document-text.png ); } -#core-menu .plugins a { background-image: url( ../../img/ico/block.png ); } -#core-menu .dataimport a { background-image: url( ../../img/ico/document-import.png ); } -#core-menu .segments a { background-image: url( ../../img/ico/construction.png ); } +.sub-menu .overview a { background-image: url( ../../img/ico/home.png ); } +.sub-menu .query a { background-image: url( ../../img/ico/magnifier.png ); } +.sub-menu .stream a { background-image: url( ../../img/ico/node.png ); } +.sub-menu .analysis a { background-image: url( ../../img/ico/funnel.png ); } +.sub-menu .documents a { background-image: url( ../../img/ico/documents-stack.png ); } +.sub-menu .files a { background-image: url( ../../img/ico/folder.png ); } +.sub-menu .schema a { background-image: url( ../../img/ico/book-open-text.png ); } +.sub-menu .replication a { background-image: url( ../../img/ico/node.png ); } +.sub-menu .distribution a { background-image: url( ../../img/ico/node-select.png ); } +.sub-menu .ping a { background-image: url( ../../img/ico/system-monitor.png ); } +.sub-menu .logging a { background-image: url( ../../img/ico/inbox-document-text.png ); } +.sub-menu .plugins a { background-image: url( ../../img/ico/block.png ); } +.sub-menu .dataimport a { background-image: url( ../../img/ico/document-import.png ); } +.sub-menu .segments a { background-image: url( ../../img/ico/construction.png ); } #content #navigation Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/schema.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/schema.css?rev=1776930&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/schema.css (added) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/schema.css Mon Jan 2 13:44:06 2017 @@ -0,0 +1,704 @@ +/* + +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. + +*/ + +#content #schema .loader +{ + background-position: 0 50%; + padding-left: 21px; +} + +#content #schema.loaded +{ + background-image: url( ../../img/div.gif ); + background-position: 21% 0; + background-repeat: repeat-y; +} + +#content #schema #data +{ + float: right; + width: 78%; +} + +#content #schema #related +{ + float: left; + width: 20%; +} + +#content #schema #related select +{ + width: 100%; +} + +#content #schema #related select optgroup +{ + font-style: normal; + padding: 5px; +} + +#content #schema #related select option +{ + padding-left: 10px; +} + +#content #schema #related #f-df-t +{ + border-bottom: 1px solid #f0f0f0; + padding-bottom: 15px; +} + +#content #schema #related .ukf-dsf dt +{ +} + +#content #schema #related dl +{ + margin-top: 15px; +} + +#content #schema #related dl dt, +#content #schema #related dl dd a +{ + color: #c0c0c0; +} + +#content #schema #related dl dt +{ + font-weight: bold; + margin-top: 5px; +} + +#content #schema #related dl dd a +{ + display: block; + padding-left: 10px; +} + +#content #schema #related dl dd a:hover +{ + background-color: #f8f8f8; +} + +#content #schema #related .field .field, +#content #schema #related .field .field a, +#content #schema #related .dynamic-field .dynamic-field, +#content #schema #related .dynamic-field .dynamic-field a, +#content #schema #related .type .type, +#content #schema #related .type .type a, +#content #schema #related .active, +#content #schema #related .active a +{ + color: #333; +} + +#content #schema #related .copyfield, +#content #schema #related .copyfield a +{ + color: #666; +} + +#content #schema #data +{ +} + +#content #schema #data #index dt +{ + float: left; + margin-right: 5px; + width: 150px; +} + +#content #schema #data #field .field-options +{ + margin-bottom: 10px; +} + +#content #schema #data #field .field-options .head h2 +{ + padding-left: 5px; +} + +#content #schema #data #field .partial +{ +} + +#content #schema #data #field .partial p +{ + background-image: url( ../../img/ico/exclamation-button.png ); + background-position: 0 50%; + padding-left: 21px; +} + +#content #schema #data #field .field-options .options dt, +#content #schema #data #field .field-options .options dd +{ + float: left; +} + +#content #schema #data #field .field-options .options dt +{ + clear: left; + margin-right: 5px; + width: 100px; +} + +#content #schema #data #field .field-options .flags +{ + margin-top: 10px; + margin-bottom: 20px; +} + +#content #schema #data #field .field-options .flags thead td +{ + color: #c0c0c0; + padding-right: 5px; + width: 100px; +} + +#content #schema #data #field .field-options .flags tbody td, +#content #schema #data #field .field-options .flags th +{ + padding: 2px 5px; +} + +#content #schema #data #field .field-options .flags thead td, +#content #schema #data #field .field-options .flags tbody th +{ + padding-left: 0; +} + +#content #schema #data #field .field-options .flags thead th, +#content #schema #data #field .field-options .flags tbody td +{ + border-left: 1px solid #f0f0f0; +} + +#content #schema #data #field .field-options .flags tbody th, +#content #schema #data #field .field-options .flags tbody td +{ + border-top: 1px solid #f0f0f0; +} + +#content #schema #data #field .field-options .flags tbody .check +{ + background-color: #fafdfa; + background-image: url( ../../img/ico/tick.png ); + background-position: 50% 50%; + text-align: center; +} + +#content #schema #data #field .field-options .flags tbody .check span +{ +} + +#content #schema #data #field .field-options .flags tbody .text +{ + color: #c0c0c0; +} + +#content #schema #data #field .field-options .analyzer, +#content #schema #data #field .field-options .analyzer li, +#content #schema #data #field .field-options .analyzer ul, +#content #schema #data #field .field-options .analyzer ul li +{ +} + +#content #schema #data #field .field-options .analyzer p, +#content #schema #data #field .field-options .analyzer dl +{ + float: left; +} + +#content #schema #data #field .field-options .analyzer p +{ + margin-right: 5px; + text-align: right; + width: 125px; + white-space: pre; +} + +#content #schema #data #field .field-options .analyzer p a +{ + cursor: auto; +} + +#content #schema #data #field .field-options .analyzer p a.analysis +{ + cursor: pointer; + display: block; +} + +#content #schema #data #field .field-options .analyzer p a.analysis span +{ + background-image: url( ../../img/ico/question-white.png ); + background-position: 0 50%; + padding-left: 21px; +} + +#content #schema #data #field .field-options .analyzer p a.analysis:hover span +{ + background-image: url( ../../img/ico/question.png ); + color: #008; +} + +#content #schema #data #field .field-options .analyzer a +{ + cursor: auto; +} + +#content #schema #data #field .field-options .analyzer .toggle +{ + background-image: url( ../../img/ico/chevron-small-expand.png ); + background-position: 100% 50%; + cursor: pointer; + display: block; + padding-right: 21px; +} + +#content #schema #data #field .field-options .analyzer .open .toggle +{ + background-image: url( ../../img/ico/chevron-small.png ); +} + +#content #schema #data #field .field-options .analyzer li +{ + border-top: 1px solid #f0f0f0; + margin-top: 10px; + padding-top: 10px; +} + +#content #schema #data #field .field-options .analyzer ul +{ + clear: left; + margin-left: 55px; + padding-top: 5px; +} + +#content #schema #data #field .field-options .analyzer .open ul +{ + display: block; +} + +#content #schema #data #field .field-options .analyzer ul li +{ + border-top: 1px solid #f8f8f8; + margin-top: 5px; + padding-top: 5px; +} + +#content #schema #data #field .field-options .analyzer ul p +{ + color: #999; + margin-right: 5px; + text-align: right; + width: 70px; +} + +#content #schema #data #field .field-options .analyzer ul dd +{ + margin-left: 20px; +} + +#content #schema #data #field .field-options .analyzer ul dd +{ + background-image: url( ../../img/ico/document-list.png ); + background-position: 0 50%; + color: #c0c0c0; + padding-left: 21px; +} + +#content #schema #data #field .field-options .analyzer ul dd.ico-0 +{ + background-image: url( ../../img/ico/slash.png ); +} + +#content #schema #data #field .field-options .analyzer ul dd.ico-1 +{ + background-image: url( ../../img/ico/tick.png ); +} + +#content #schema #data #field .head +{ + margin-bottom: 5px; +} + +#content #schema #data #field .terminfo-holder +{ + border-top: 1px solid #c0c0c0; + padding-top: 10px; +} + +#content #schema #data #field .terminfo-holder .trigger +{ + float: left; + width: 140px; +} + +#content #schema #data #field .terminfo-holder .trigger button span +{ + background-image: url( ../../img/ico/information.png ); +} + +#content #schema #data #field .terminfo-holder .status +{ + border-left: 1px solid #f0f0f0; + float: left; + padding-left: 20px; + padding-right: 20px; +} + +#content #schema #data #field .terminfo-holder.disabled .trigger button span +{ + background-image: url( ../../img/ico/prohibition.png ); +} + +#content #schema #data #field .terminfo-holder.disabled .status +{ + display: block; +} + +#content #schema #data #field .terminfo-holder .trigger .autoload +{ +} + +#content #schema #data #field .terminfo-holder.loaded .trigger .autoload +{ + background-image: url( ../../img/ico/ui-check-box-uncheck.png ); + background-position: 0 50%; + color: #c0c0c0; + display: block; + margin-top: 10px; + padding-left: 21px; +} + +#content #schema #data #field .terminfo-holder .trigger .autoload:hover +{ + color: #008; +} + +#content #schema #data #field .terminfo-holder .trigger .autoload.on +{ + background-image: url( ../../img/ico/ui-check-box.png ); + color: #333; +} + +#content #schema #data #field .topterms-holder, +#content #schema #data #field .histogram-holder +{ + border-left: 1px solid #f0f0f0; + float: left; + padding-left: 20px; + padding-right: 20px; +} + +#content #schema #data #field .topterms-holder .head input +{ + height: 18px; + line-height: 16px; + text-align: right; + width: 30px; +} + +#content #schema #data #field .topterms-holder .head .max-holder +{ + color: #c0c0c0; +} + +#content #schema #data #field .topterms-holder .head .max-holder:hover .max +{ + color: #008; +} + +#content #schema #data #field .topterms-holder .head #query_link +{ + background-image: url( ../../img/ico/question-white.png ); + background-position: 0 50%; + color: #c0c0c0; + padding-left: 21px; + margin-left: 5px; +} + +#content #schema #data #field .topterms-holder .head #query_link:hover +{ + background-image: url( ../../img/ico/question.png ); +} + + +#content #schema #data #field .topterms-holder .head #query_link span +{ + visibility: hidden; +} + +#content #schema #data #field .topterms-holder .head #query_link:hover span +{ + visibility: visible; +} + +#content #schema .topterms-holder li +{ + border-top: 1px solid #999; + margin-bottom: 5px; +} + +/* possible overwrite with inline style */ +#content #schema .topterms-holder li p +{ + background-color: #999; + color: #fff; + float: left; +} + +#content #schema .topterms-holder li p span +{ + display: block; + padding-right: 2px; + text-align: right; +} + +/* possible overwrite with inline style */ +#content #schema .topterms-holder li ul +{ + margin-left: 30px; +} + +#content #schema .topterms-holder li li +{ + border-top: 0; + margin-bottom: 0; + white-space: nowrap; +} + +#content #schema .topterms-holder li li.odd +{ + background-color: #f0f0f0; +} + +#content #schema .topterms-holder li li a +{ + display: block; + padding-left: 2px; + padding-right: 2px; +} + +#content #schema .topterms-holder li li a:hover +{ + background-color: #c0c0c0; +} + +#content #schema #data #field .histogram-holder ul +{ + margin-left: 25px; +} + +#content #schema #data #field .histogram-holder li +{ + margin-bottom: 2px; + position: relative; + width: 150px; +} + +#content #schema #data #field .histogram-holder li.odd +{ + background-color: #f0f0f0; +} + +#content #schema #data #field .histogram-holder li dl, +#content #schema #data #field .histogram-holder li dt +{ + padding-top: 1px; + padding-bottom: 1px; +} + +#content #schema #data #field .histogram-holder li dl +{ + background-color: #c0c0c0; + min-width: 1px; +} + +#content #schema #data #field .histogram-holder li dt +{ + color: #a0a0a0; + position: absolute; + overflow: hidden; + left: -25px; + top: 0px; +} + +#content #schema #data #field .histogram-holder li dt span +{ + display: block; + padding-right: 4px; + text-align: right; +} + +#content #schema #data #field .histogram-holder li dd +{ + clear: left; + float: left; + margin-left: 2px; + white-space: nowrap; +} + +#content #schema #data #field .histogram-holder li:hover dl +{ + background-color: #b0b0b0; +} + +#content #schema #data #field .histogram-holder li:hover dt +{ + color: #333; +} + +#content #schema #actions { + margin-bottom: 20px; + min-height: 30px; +} + +#content #schema .actions #addField span { background-image: url( ../../img/ico/document-list.png ); } +#content #schema .actions #addDynamicField span { background-image: url( ../../img/ico/documents-stack.png ); } +#content #schema .actions #addCopyField span { background-image: url( ../../img/ico/document-import.png ); } + +#content #schema .actions div.action +{ + width: 320px; + background-color: #fff; + border: 1px solid #f0f0f0; + box-shadow: 5px 5px 10px #c0c0c0; + -moz-box-shadow: 5px 5px 10px #c0c0c0; + -webkit-box-shadow: 5px 5px 10px #c0c0c0; + position: absolute; + left: 160px; + top: 50px; + padding: 10px; + z-index: 2; +} + +#content #schema .actions p +{ + padding-bottom: 8px; +} + +#content #schema .actions label +{ + float: left; + padding-top: 3px; + padding-bottom: 3px; + text-align: right; + width: 25%; +} + +#content #schema .actions input, +#content #schema .actions select, +#content #schema .actions .buttons, +#content #schema .actions .note span +{ + float: right; + width: 71%; +} + +#content #schema .actions label.checkbox { + margin-left: 27%; + text-align: left; + width: 73%; + padding: 0px; + margin-top: 0px; +} +#content #schema .actions .checkbox input { + float: none; + width: auto; +} + +#content #schema .add_showhide { + background-image: url( ../../img/ico/chevron-small-expand.png ); + background-position: 100% 50%; + cursor: pointer; + padding-right: 21px; +} + +#content #schema .add_showhide.open { + background-image: url( ../../img/ico/chevron-small.png ); +} + +#content #schema label +{ + cursor: pointer; + display: block; + margin-top: 5px; + width: 100%; +} + +#content #schema .checkbox +{ + margin-bottom: 0; + width: auto; +} + +#content #schema .chosen-container { + margin-left: 6px; + width: 100%; +} +#content #schema .chosen-drop input, +#content #schema .chosen-results { + width: 100% !important; +} + +#content #schema button span +{ + background-image: url( ../../img/ico/cross.png ); +} +#content #schema button.submit span +{ + background-image: url( ../../img/ico/tick.png ); +} + +#content #schema .error +{ + background-image: url( ../../img/ico/cross-button.png ); + background-position: 22% 1px; + color: #c00; + font-weight: bold; + margin-bottom: 10px; +} + +#content #schema #actions .error span +{ + float: right; + width: 71%; + padding-left: 3px; + padding-right: 3px; +} + +#content #schema .delete-field button span { + background-image: url( ../../img/ico/cross.png ); +} + +#content #schema span.rem { + background-image: url( ../../img/ico/cross.png ); + background-position: 100% 50%; + cursor: pointer; + padding-right: 21px; + right:10px; + float:right; +} + +#content #schema .copyfield .updatable a { + float:left; + width:80%; +} Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/segments.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/segments.css?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/segments.css (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/segments.css Mon Jan 2 13:44:06 2017 @@ -52,7 +52,7 @@ limitations under the License. #content #segments #result #response { - margin-left: 25px; + margin-left: 25px; } #content #segments .segments-holder ul { @@ -65,7 +65,7 @@ limitations under the License. } #content #segments .segments-holder li .tooltip { - display: none; + display: none; background: #C8C8C8; position: absolute; z-index: 1000; @@ -79,13 +79,13 @@ limitations under the License. } #content #segments .segments-holder li .tooltip .label { - float: left; - width: 20%; - opacity: 1; + float: left; + width: 20%; + opacity: 1; } #content #segments .segments-holder li:hover .tooltip { - display:block; + display:block; } #content #segments .segments-holder li dl, @@ -122,26 +122,26 @@ limitations under the License. } #content #segments .segments-holder li dd div.live { - background-color: #DDDDDD; - float: left; + background-color: #DDDDDD; + float: left; } #content #segments .segments-holder li dd div.start { - float: left; - width: 20%; + float: left; + width: 20%; } #content #segments .segments-holder li dd div.end { - text-align: right; + text-align: right; } .merge-candidate { - background-color: #FFC9F9 !important; + background-color: #FFC9F9 !important; } #content #segments .segments-holder li dd div.w5 { - width: 20%; - float: left; + width: 20%; + float: left; } #content #segments #auto-refresh { Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/stream.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/stream.css?rev=1776930&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/stream.css (added) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/stream.css Mon Jan 2 13:44:06 2017 @@ -0,0 +1,233 @@ +/* + +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. + +*/ + +#content #stream +{ +} + +#content #stream #form +{ + float: top; +} + +#content #stream #form label +{ + cursor: pointer; + display: inline; + margin-top: 5px; +} + +#content #stream #form input, +#content #stream #form select, +#content #stream #form textarea +{ + margin-bottom: 2px; + width: 100%; +} + +#content #stream #form textarea +{ + height: 125px; +} + +#content #stream #form #start +{ + float: left; + width: 45%; +} + +#content #stream #form #rows +{ + float: right; + width: 45%; +} + +#content #stream #form input[type=checkbox] +{ + margin-bottom: 0; + margin-left: 5px; + margin-right: 0px; + width: 10px; + height: 10px; + display: inline; +} + +#content #stream #form fieldset +{ + border: 1px solid #fff; + border-top: 1px solid #c0c0c0; + margin-bottom: 5px; +} + +#content #stream #form fieldset.common +{ + margin-top: 10px; +} + +#content #stream #form fieldset legend +{ + display: block; + margin-left: 10px; + padding: 0px 5px; +} + +#content #stream #form fieldset legend label +{ + margin-top: 0; +} + +#content #stream #form button +{ + margin-right: 10px; +} + +#content #stream #form fieldset .fieldset +{ + border-bottom: 1px solid #f0f0f0; + margin-bottom: 5px; + padding-bottom: 10px; +} + +#content #stream #result +{ + float: bottom; +} + +#content #stream #result #response +{ +} + +/************************/ + +#content #stream #result #explanation +{ + border-top: 1px solid #f0f0f0; + border-bottom: 1px solid #f0f0f0; + border-left: 1px solid #f0f0f0; + border-right: 1px solid #f0f0f0; +} + +#content #stream #result #explanation .loader +{ + background-position: 0 50%; + padding-left: 21px; +} + +#content #stream #result #explanation #error +{ + background-color: #f00; + background-image: url( ../../img/ico/construction.png ); + background-position: 10px 12px; + color: #fff; + font-weight: bold; + margin-bottom: 20px; + padding: 10px; + padding-left: 35px; +} + +#content #stream #result #explanation #error .msg +{ + font-style: italic; + font-weight: normal; + margin-top: 10px; +} + +#content #stream #result #explanation .content +{ + padding-left: 0; + padding-right: 0; +} + +#content #stream #result #explanation .content.show +{ + background-image: url( ../../img/div.gif ); + background-repeat: repeat-y; + background-position: 31% 0; +} + +#content #stream #result #explanation #legend +{ + border: 1px solid #f0f0f0; + padding: 10px; + /*position: absolute; + right: 0; + bottom: 0;*/ +} + +#content #stream #result #explanation #legend li +{ + padding-left: 15px; + position: relative; + -webkit-box-sizing: border-box; +} + +#content #stream #result #explanation #legend li svg +{ + position: absolute; + left: 0; + top: 2px; +} + +#content #stream #result #explanation #explanation-content +{ + min-height: 50px; + width: 100% +} + +#content #stream #result #explanation #explanation-content .node circle +{ + color: #c48f00; + stroke: #c48f00; + fill: #c48f00; +} + +#content #stream #result #explanation #explanation-content .link +{ + fill: none; + stroke: #e0e0e0; + stroke-width: 1.5px; +} + +#content #stream #result #explanation #legend .datastore circle, +#content #stream #result #explanation #explanation-content .node.datastore circle +{ + stroke: #3800c4; + fill: #3800c4; +} + +#content #stream #result #explanation #legend .stream-source circle, +#content #stream #result #explanation #explanation-content .node.stream-source circle +{ + stroke: #21a9ec; + fill: #21a9ec; +} + +#content #stream #result #explanation #legend .stream-decorator circle, +#content #stream #result #explanation #explanation-content .node.stream-decorator circle +{ + stroke: #cb21ec; + fill: #cb21ec; +} + +#content #stream #result #explanation #legend .graph-source circle, +#content #stream #result #explanation #explanation-content .node.graph-source circle +{ + stroke: #21eca9; + fill: #21eca9; +} Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/chosen.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/chosen.css?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/chosen.css (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/chosen.css Mon Jan 2 13:44:06 2017 @@ -81,7 +81,7 @@ THE SOFTWARE. text-decoration: none; } .chzn-container-single .chzn-default { - color: #999; + color: #999; } .chzn-container-single .chzn-single span { margin-right: 26px; Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/common.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/common.css?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/common.css (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/common.css Mon Jan 2 13:44:06 2017 @@ -699,3 +699,33 @@ pre.syntax .tex .formula -webkit-box-shadow: 1px 1px 0 #d8d8d8; color: #333; } + +.other-ui-link { + margin: 0px; + position: absolute; + right: 0px; + top: -20px; +} + +.other-ui-link span.help { + background-image: url( ../../img/ico/information-white.png ); + right: 0px; + padding-left: 16px; +} +.other-ui-link a.ul { + text-decoration: underline; +} + +.old-ui-warning { + position: absolute; + right: 0px; + top: -20px; + align: center; + color: red; + font-weight: bold; +} +.old-ui-warning a.ul { + color: red; + font-weight: bold; + text-decoration: underline; +} Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/segments.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/segments.css?rev=1776930&r1=1776929&r2=1776930&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/segments.css (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/styles/segments.css Mon Jan 2 13:44:06 2017 @@ -52,7 +52,7 @@ limitations under the License. #content #segments #result #response { - margin-left: 25px; + margin-left: 25px; } #content #segments .segments-holder ul { @@ -65,7 +65,7 @@ limitations under the License. } #content #segments .segments-holder li .toolitp { - display: none; + display: none; background: #C8C8C8; position: absolute; z-index: 1000; @@ -79,13 +79,13 @@ limitations under the License. } #content #segments .segments-holder li .toolitp .label { - float: left; - width: 20%; - opacity: 1; + float: left; + width: 20%; + opacity: 1; } #content #segments .segments-holder li:hover .toolitp { - display:block; + display:block; } #content #segments .segments-holder li dl, @@ -122,24 +122,24 @@ limitations under the License. } #content #segments .segments-holder li dd div.live { - background-color: #DDDDDD; - float: left; + background-color: #DDDDDD; + float: left; } #content #segments .segments-holder li dd div.start { - float: left; - width: 20%; + float: left; + width: 20%; } #content #segments .segments-holder li dd div.end { - text-align: right; + text-align: right; } .merge-candidate { - background-color: #FFC9F9 !important; + background-color: #FFC9F9 !important; } #content #segments .segments-holder li dd div.w5 { - width: 20%; - float: left; + width: 20%; + float: left; } |
Free forum by Nabble | Edit this page |