forked from Archives/Athou_commafeed
js dependencies update
This commit is contained in:
@@ -3,22 +3,24 @@
|
||||
|
||||
<group name="lib">
|
||||
<js minimize="false">/vendor/jquery/*.js</js>
|
||||
<js minimize="false">/vendor/select2/*.js</js>
|
||||
<js minimize="false">/vendor/lodash/*.js</js>
|
||||
<js minimize="false">/vendor/jqueryui/*.js</js>
|
||||
<js minimize="false">/vendor/jquery-mousewheel/*.js</js>
|
||||
<js minimize="false">/vendor/bootstrap/*.js</js>
|
||||
<js minimize="false">/vendor/angularjs/*.js</js>
|
||||
<js minimize="false">/vendor/angularui/*.js</js>
|
||||
<js minimize="false">/vendor/angularui-bootstrap/*.js</js>
|
||||
<js minimize="false">/vendor/angularui-state/*.js</js>
|
||||
<js minimize="false">/vendor/ui-utils/*.js</js>
|
||||
<js minimize="false">/vendor/ui-select2/*.js</js>
|
||||
<js minimize="false">/vendor/ui-bootstrap/*.js</js>
|
||||
<js minimize="false">/vendor/ui-state/*.js</js>
|
||||
<js minimize="false">/vendor/mousetrap/*.js</js>
|
||||
<js minimize="false">/vendor/nggrid/*.js</js>
|
||||
<js minimize="false">/vendor/nginfinitescroll/*.js</js>
|
||||
<js minimize="false">/vendor/spinjs/*.js</js>
|
||||
<js minimize="false">/vendor/momentjs/*.js</js>
|
||||
|
||||
<css minimize="false">/vendor/select2/*.css</css>
|
||||
<css minimize="false">/vendor/bootstrap/*.css</css>
|
||||
<css minimize="false">/vendor/angularui/*.css</css>
|
||||
<css minimize="false">/vendor/fontawesome/css/*.css</css>
|
||||
<css minimize="false">/vendor/zocial/*.css</css>
|
||||
<css minimize="false">/vendor/nggrid/*.css</css>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var app = angular.module('commafeed', ['ui', 'ui.bootstrap', 'ui.state', 'commafeed.directives', 'commafeed.controllers',
|
||||
var app = angular.module('commafeed', ['ui.utils', 'ui.bootstrap', 'ui.state', 'ui.select2', 'commafeed.directives', 'commafeed.controllers',
|
||||
'commafeed.services', 'commafeed.filters', 'ngSanitize', 'infinite-scroll', 'ngGrid']);
|
||||
|
||||
app.config(['$routeProvider', '$stateProvider', '$urlRouterProvider', '$httpProvider', '$compileProvider',
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<li>
|
||||
<div class="pointer tree-item" ui-if="showLabel" ng-class="getClass(level - 1)" droppable="node">
|
||||
<div class="pointer tree-item" ng-if="showLabel" ng-class="getClass(level - 1)" droppable="node">
|
||||
<div class="dropdown pull-right">
|
||||
<div class="pull-right" ng-click="showCategoryDetails(node)">
|
||||
<i class="icon-wrench config pointer"></i>
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
<div ng-controller="FooterController">
|
||||
<iframe ui-if="subToMeUrl" style="display:none;" ng-src='https://www.subtome.com/register-no-ui.html?name={{subToMeName}}&url={{subToMeUrl}}'></iframe>
|
||||
<iframe ng-if="subToMeUrl" style="display:none;" ng-src='https://www.subtome.com/register-no-ui.html?name={{subToMeName}}&url={{subToMeUrl}}'></iframe>
|
||||
</div>
|
||||
@@ -16,7 +16,7 @@
|
||||
<input type="button" class="btn" ng-click="autoMerge()" value="Auto merge selected" />
|
||||
</div>
|
||||
|
||||
<table class="table table-condensed table-hover" ui-if="counts">
|
||||
<table class="table table-condensed table-hover" ng-if="counts">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
@@ -33,7 +33,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div ui-if="current">
|
||||
<div ng-if="current">
|
||||
<div>
|
||||
Merge
|
||||
<select ng-model="mergeData.feedIds" size="30" multiple="multiple" class="input-block-level"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<h3>${details.category_details}</h3>
|
||||
</div>
|
||||
<form name="form" class="form-horizontal" ng-submit="save()">
|
||||
<div class="control-group" ng-class="{error : !form.name.$valid}" ui-if="!isMeta()">
|
||||
<div class="control-group" ng-class="{error : !form.name.$valid}" ng-if="!isMeta()">
|
||||
<label class="control-label">${details.name}</label>
|
||||
<div class="controls">
|
||||
<input type="text" name="name" ng-model="category.name" class="input-block-level" required></input>
|
||||
@@ -11,7 +11,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="control-group" ng-class="{error : !form.category.$valid}" ui-if="!isMeta()">
|
||||
<div class="control-group" ng-class="{error : !form.category.$valid}" ng-if="!isMeta()">
|
||||
<label class="control-label">${details.parent_category}</label>
|
||||
<div class="controls">
|
||||
<select name="category" class="input-block-level" ng-model="category.parentId"
|
||||
@@ -21,7 +21,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="control-group" ui-if="!isMeta()">
|
||||
<div class="control-group" ng-if="!isMeta()">
|
||||
<label class="control-label">${details.position}</label>
|
||||
<div class="controls">
|
||||
<input type="number" min="0" ng-model="category.position" />
|
||||
@@ -37,9 +37,9 @@
|
||||
</div>
|
||||
|
||||
<div class="form-actions">
|
||||
<button type="submit" class="btn btn-primary" ui-if="!isMeta()">${global.save}</button>
|
||||
<button type="submit" class="btn btn-primary" ng-if="!isMeta()">${global.save}</button>
|
||||
<button type="button" class="btn" ng-click="back()">${global.cancel}</button>
|
||||
<button type="button" class="btn btn-danger" ng-click="deleteCategory()" ui-if="!isMeta()">${global.delete}</button>
|
||||
<button type="button" class="btn btn-danger" ng-click="deleteCategory()" ng-if="!isMeta()">${global.delete}</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<div ng-class="{expanded: settingsService.settings.viewMode == 'expanded'}">
|
||||
<div class="entrylist-header" ui-if="name">
|
||||
<div class="entrylist-header" ng-if="name">
|
||||
<h3>
|
||||
<span ng-switch on="selectedId">
|
||||
<span ng-switch-when="all">${tree.all}</span>
|
||||
@@ -36,17 +36,17 @@
|
||||
<i class="icon-external-link"></i>
|
||||
</a>
|
||||
</div>
|
||||
<div class="entry-body" ui-if="settingsService.settings.viewMode == 'expanded' || (isOpen && current == entry)" ng-mouseup="bodyClicked(entry, $event)"
|
||||
<div class="entry-body" ng-if="settingsService.settings.viewMode == 'expanded' || (isOpen && current == entry)" ng-mouseup="bodyClicked(entry, $event)"
|
||||
ng-class="{rtl: entry.rtl}">
|
||||
<div class="entry-header">
|
||||
<div class="entry-title">
|
||||
<a href="{{entry.url}}" target="_blank" ng-bind-html-unsafe="entry.title | highlight:keywords"></a>
|
||||
<div class="entry-subtitle">
|
||||
<span class="entry-source" ui-if="selectedType == 'category'">
|
||||
<span class="entry-source" ng-if="selectedType == 'category'">
|
||||
<span class="entry-source-prefix">${view.entry_source}</span>
|
||||
<a ng-click="goToFeed(entry.feedId)" class="pointer bidi-embed"><span>{{entry.feedName}}</span></a>
|
||||
</span>
|
||||
<span class="entry-author" ui-if="entry.author">
|
||||
<span class="entry-author" ng-if="entry.author">
|
||||
<span class="entry-author-prefix">${view.entry_author}</span>
|
||||
<span class="entry-author-name">{{entry.author}}</span>
|
||||
</span>
|
||||
@@ -56,17 +56,17 @@
|
||||
|
||||
<div class="entry-body-content">
|
||||
<div ng-bind-html-unsafe="entry.content | highlight:keywords"></div>
|
||||
<div class="entry-enclosure" ui-if="entry.enclosureType">
|
||||
<video controls ui-if="entry.enclosureType && entry.enclosureType.indexOf('video') == 0">
|
||||
<div class="entry-enclosure" ng-if="entry.enclosureType">
|
||||
<video controls ng-if="entry.enclosureType && entry.enclosureType.indexOf('video') == 0">
|
||||
<source src="{{entry.enclosureUrl}}" type="{{entry.enclosureType}}" />
|
||||
</video>
|
||||
<audio controls ui-if="entry.enclosureType && entry.enclosureType.indexOf('audio') == 0">
|
||||
<audio controls ng-if="entry.enclosureType && entry.enclosureType.indexOf('audio') == 0">
|
||||
<source src="{{entry.enclosureUrl}}" type="{{entry.enclosureType}}" />
|
||||
</audio>
|
||||
<div ui-if="entry.enclosureType && entry.enclosureType.indexOf('image') == 0">
|
||||
<div ng-if="entry.enclosureType && entry.enclosureType.indexOf('image') == 0">
|
||||
<img ng-src="{{entry.enclosureUrl}}" />
|
||||
</div>
|
||||
<a href="{{entry.enclosureUrl}}" target="_blank" ui-if="entry.enclosureType" download>
|
||||
<a href="{{entry.enclosureUrl}}" target="_blank" ng-if="entry.enclosureType" download>
|
||||
${global.download}
|
||||
</a>
|
||||
</div>
|
||||
@@ -77,12 +77,12 @@
|
||||
<i ng-class="{'icon-star icon-star-yellow': entry.starred, 'icon-star-empty': !entry.starred}"
|
||||
class="pointer"></i>
|
||||
</span>
|
||||
<label class="checkbox inline" ui-if="entry.markable">
|
||||
<label class="checkbox inline" ng-if="entry.markable">
|
||||
<input type="checkbox" ng-checked="!entry.read" ng-click="mark(entry, !entry.read)" class="mousetrap"></input>
|
||||
${view.keep_unread}
|
||||
</label>
|
||||
|
||||
<span class="share-buttons" ui-if="settingsService.settings.socialButtons">
|
||||
|
||||
<span class="share-buttons" ng-if="settingsService.settings.socialButtons">
|
||||
<a href="mailto:?subject={{entry.title|escape}}&body={{entry.url|escape}}" title="E-mail" popup>
|
||||
<i class="icon-envelope"></i>
|
||||
</a>
|
||||
@@ -127,6 +127,6 @@
|
||||
<div ng-include="'templates/_shortcuts.html'"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="height: 30px" ui-if="settingsService.settings.viewMode != 'expanded' && entries.length != 0"></div>
|
||||
<div style="height: 1000px" ui-if="settingsService.settings.viewMode == 'expanded' && entries.length != 0"></div>
|
||||
<div style="height: 30px" ng-if="settingsService.settings.viewMode != 'expanded' && entries.length != 0"></div>
|
||||
<div style="height: 1000px" ng-if="settingsService.settings.viewMode == 'expanded' && entries.length != 0"></div>
|
||||
</div>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
||||
.ui-resetwrap{position:relative;display:inline-block}.ui-reset{position:absolute;top:0;right:0;z-index:2;display:none;height:100%;cursor:pointer}.ui-resetwrap:hover .ui-reset{display:block}.ui-currency-pos{color:green}.ui-currency-neg{color:red}.ui-currency-zero{color:blue}.ui-currency-pos.ui-bignum,.ui-currency-neg.ui-smallnum{font-size:110%}.ui-match{background:yellow}
|
||||
File diff suppressed because one or more lines are too long
2
src/main/webapp/vendor/nggrid/ng-grid-2.0.7.min.js
vendored
Normal file
2
src/main/webapp/vendor/nggrid/ng-grid-2.0.7.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
472
src/main/webapp/vendor/nggrid/ng-grid.css
vendored
472
src/main/webapp/vendor/nggrid/ng-grid.css
vendored
@@ -1,472 +0,0 @@
|
||||
|
||||
/******** Grid Global ********/
|
||||
.nglabel {
|
||||
display: block;
|
||||
float: left;
|
||||
font-weight: bold;
|
||||
padding-right: 5px;
|
||||
}
|
||||
/******** Grid ********/
|
||||
|
||||
.ngGrid{
|
||||
background-color: rgb(253, 253, 253);
|
||||
}
|
||||
|
||||
/******** Header ********/
|
||||
|
||||
.ngGroupPanel{
|
||||
background-color: rgb(234, 234, 234);
|
||||
overflow: hidden;
|
||||
border-bottom: 1px solid rgb(212,212,212);
|
||||
}
|
||||
|
||||
.ngGroupPanelDescription{
|
||||
margin-top: 5px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.ngGroupList {
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.ngGroupItem {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.ngGroupElement {
|
||||
float: left;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.ngGroupName {
|
||||
background-color: rgb(247,247,247);
|
||||
border: 1px solid rgb(212,212,212);
|
||||
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;
|
||||
}
|
||||
|
||||
.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;
|
||||
}
|
||||
.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;
|
||||
}
|
||||
|
||||
.ngTopPanel {
|
||||
position: relative;
|
||||
z-index:5;
|
||||
background-color: rgb(234, 234, 234);
|
||||
border-bottom: 1px solid rgb(212,212,212);
|
||||
}
|
||||
.ngHeaderContainer {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
font-weight: bold;
|
||||
background-color: inherit;
|
||||
}
|
||||
|
||||
.ngHeaderScroller {
|
||||
position:absolute;
|
||||
background-color: inherit;
|
||||
}
|
||||
.ngHeaderSortColumn{
|
||||
position:absolute;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.ngHeaderCell{
|
||||
border-right: 1px solid rgb(212,212,212);
|
||||
border-left: 1px solid rgb(212,212,212);
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
background-color: inherit;
|
||||
}
|
||||
|
||||
.ngHeaderCell:first-child{
|
||||
border-left: 0;
|
||||
}
|
||||
|
||||
.ngSortButtonUp {
|
||||
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;
|
||||
}
|
||||
.ngSortButtonDown {
|
||||
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;
|
||||
}
|
||||
.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;
|
||||
}
|
||||
|
||||
/******** Viewport ********/
|
||||
.ngViewport{
|
||||
overflow: auto;
|
||||
min-height: 20px;
|
||||
}
|
||||
|
||||
.ngCanvas{
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/******** Rows ********/
|
||||
.ngRow {
|
||||
position: absolute;
|
||||
border-bottom: 1px solid rgb(229, 229, 229);
|
||||
}
|
||||
.ngRow.even {
|
||||
background-color: rgb(243, 243, 243);
|
||||
}
|
||||
.ngRow.odd {
|
||||
background-color: rgb(253, 253, 253);
|
||||
}
|
||||
.ngRow.selected {
|
||||
background-color: rgb(201, 221, 225);
|
||||
}
|
||||
.ngRow.canSelect {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
/******** Cells ********/
|
||||
|
||||
.ngCell {
|
||||
overflow: hidden;
|
||||
position: absolute;
|
||||
border-right: 1px solid rgb(212,212,212);
|
||||
border-left: 1px solid rgb(212,212,212);
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
background-color: inherit;
|
||||
}
|
||||
|
||||
.ngCell:first-child{
|
||||
border-left: 0;
|
||||
}
|
||||
|
||||
.ngCellElement:focus {
|
||||
outline: 0;
|
||||
background-color: rgb(179, 196, 199);
|
||||
}
|
||||
|
||||
.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;
|
||||
}
|
||||
.ngSelectionHeader {
|
||||
position: absolute;
|
||||
top: 11px;
|
||||
left: 6px;
|
||||
}
|
||||
.ngGrid input[type="checkbox"] {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.ngGrid input {
|
||||
vertical-align:top;
|
||||
}
|
||||
.ngSelectionCell{
|
||||
margin-top: 9px;
|
||||
margin-left: 6px;
|
||||
}
|
||||
.ngSelectionCheckbox{
|
||||
margin-top: 9px;
|
||||
margin-left: 6px;
|
||||
}
|
||||
.ngNoSort {
|
||||
cursor:default;
|
||||
}
|
||||
|
||||
/******** Footer ********/
|
||||
.ngFooterPanel{
|
||||
background-color: rgb(234, 234, 234);
|
||||
padding: 0;
|
||||
border-top: 1px solid rgb(212,212,212);
|
||||
position: relative;
|
||||
}
|
||||
.ngTotalSelectContainer {
|
||||
float: left;
|
||||
margin: 5px;
|
||||
margin-top: 7px;
|
||||
}
|
||||
.ngFooterSelectedItems {
|
||||
padding: 2px;
|
||||
}
|
||||
.ngFooterTotalItems {
|
||||
padding: 2px;
|
||||
}
|
||||
.ngFooterTotalItems.ngnoMultiSelect {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
/* Aggregates */
|
||||
.ngAggHeader {
|
||||
position: absolute;
|
||||
border: none;
|
||||
}
|
||||
.ngAggregate {
|
||||
position: absolute;
|
||||
background-color: rgb(201, 221, 225);
|
||||
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;
|
||||
}
|
||||
.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;
|
||||
}
|
||||
.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;
|
||||
}
|
||||
|
||||
.ngHeaderButton {
|
||||
position: absolute;
|
||||
right: 2px;
|
||||
top: 8px;
|
||||
-moz-border-radius: 50%;
|
||||
-webkit-border-radius: 50%;
|
||||
border-radius: 50%;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
z-index: 5;
|
||||
background-color: rgb(179, 191, 188);
|
||||
cursor: pointer;
|
||||
/* width and height can be anything, as long as they're equal */
|
||||
}
|
||||
.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: #000 transparent transparent transparent;
|
||||
/* width and height can be anything, as long as they're equal */
|
||||
}
|
||||
.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 rgb(212,212,212);
|
||||
z-index: 5;
|
||||
}
|
||||
.ngMenuText {
|
||||
position: relative;
|
||||
top: 2px;
|
||||
left: 2px;
|
||||
}
|
||||
.ngColList {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.ngColListItem {
|
||||
position: relative;
|
||||
right: 17px;
|
||||
top: 2px;
|
||||
white-space:nowrap;
|
||||
}
|
||||
.ngColListCheckbox {
|
||||
position: relative;
|
||||
right: 3px;
|
||||
top: 4px;
|
||||
}
|
||||
|
||||
/********Paging Styles **********/
|
||||
|
||||
.ngPagerButton{
|
||||
height: 25px;
|
||||
min-width: 26px;
|
||||
}
|
||||
|
||||
.ngPagerFirstTriangle{
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-style: solid;
|
||||
border-width: 5px 8.7px 5px 0;
|
||||
border-color: transparent #000000 transparent transparent;
|
||||
margin-left: 2px;
|
||||
}
|
||||
|
||||
.ngPagerFirstBar{
|
||||
width: 10px;
|
||||
border-left: 2px solid black;
|
||||
margin-top: -6px;
|
||||
height: 12px;
|
||||
margin-left: -3px;
|
||||
}
|
||||
|
||||
.ngPagerLastTriangle{
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-style: solid;
|
||||
border-width: 5px 0 5px 8.7px;
|
||||
border-color: transparent transparent transparent #000000;
|
||||
margin-left: -1px;
|
||||
}
|
||||
|
||||
.ngPagerLastBar{
|
||||
width: 10px;
|
||||
border-left: 2px solid black;
|
||||
margin-top: -6px;
|
||||
height: 12px;
|
||||
margin-left: 1px;
|
||||
}
|
||||
|
||||
.ngPagerPrevTriangle{
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.ngPagerNextTriangle{
|
||||
margin-left: 1px;
|
||||
}
|
||||
.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;
|
||||
}
|
||||
.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/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAmElEQVQoU33PQapBURjA8UtkwJuaWYGSgfQWYBMvczPmTCzAAGVuaA228BZhRCkDGSmE31FucuRfvzq3vr5zT/JSjSU7DsypEPXDkDVn2hSIytJhw4kWGaLCxgHh2gt/RBuLzNhz5caWPjnSqqw4EraFfwznf8qklWjwy4IRTerkiQoPGtPl40OehcEJvcfXl8LglLfBJLkDcMgbgHlHhK8AAAAASUVORK5CYII=);
|
||||
background-repeat: no-repeat;
|
||||
position: absolute;
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
right: 5px;
|
||||
top: 5px;
|
||||
}
|
||||
.ngGroupingNumber {
|
||||
position: absolute;
|
||||
right: -10px;
|
||||
top: -2px;
|
||||
}
|
||||
1
src/main/webapp/vendor/nggrid/ng-grid.min.css
vendored
Normal file
1
src/main/webapp/vendor/nggrid/ng-grid.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
src/main/webapp/vendor/select2/select2-spinner.gif
vendored
Normal file
BIN
src/main/webapp/vendor/select2/select2-spinner.gif
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
22
src/main/webapp/vendor/select2/select2.3.4.3.min.js
vendored
Normal file
22
src/main/webapp/vendor/select2/select2.3.4.3.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
615
src/main/webapp/vendor/select2/select2.css
vendored
Normal file
615
src/main/webapp/vendor/select2/select2.css
vendored
Normal file
@@ -0,0 +1,615 @@
|
||||
/*
|
||||
Version: 3.4.3 Timestamp: Tue Sep 17 06:47:14 PDT 2013
|
||||
*/
|
||||
.select2-container {
|
||||
margin: 0;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
/* inline-block for ie7 */
|
||||
zoom: 1;
|
||||
*display: inline;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.select2-container,
|
||||
.select2-drop,
|
||||
.select2-search,
|
||||
.select2-search input {
|
||||
/*
|
||||
Force border-box so that % widths fit the parent
|
||||
container without overlap because of margin/padding.
|
||||
|
||||
More Info : http://www.quirksmode.org/css/box.html
|
||||
*/
|
||||
-webkit-box-sizing: border-box; /* webkit */
|
||||
-moz-box-sizing: border-box; /* firefox */
|
||||
box-sizing: border-box; /* css3 */
|
||||
}
|
||||
|
||||
.select2-container .select2-choice {
|
||||
display: block;
|
||||
height: 26px;
|
||||
padding: 0 0 0 8px;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
|
||||
border: 1px solid #aaa;
|
||||
white-space: nowrap;
|
||||
line-height: 26px;
|
||||
color: #444;
|
||||
text-decoration: none;
|
||||
|
||||
border-radius: 4px;
|
||||
|
||||
background-clip: padding-box;
|
||||
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
|
||||
background-color: #fff;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.5, #fff));
|
||||
background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 50%);
|
||||
background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 50%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#eeeeee', GradientType = 0);
|
||||
background-image: linear-gradient(top, #fff 0%, #eee 50%);
|
||||
}
|
||||
|
||||
.select2-container.select2-drop-above .select2-choice {
|
||||
border-bottom-color: #aaa;
|
||||
|
||||
border-radius: 0 0 4px 4px;
|
||||
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.9, #fff));
|
||||
background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 90%);
|
||||
background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 90%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);
|
||||
background-image: linear-gradient(top, #eee 0%, #fff 90%);
|
||||
}
|
||||
|
||||
.select2-container.select2-allowclear .select2-choice .select2-chosen {
|
||||
margin-right: 42px;
|
||||
}
|
||||
|
||||
.select2-container .select2-choice > .select2-chosen {
|
||||
margin-right: 26px;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
|
||||
white-space: nowrap;
|
||||
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.select2-container .select2-choice abbr {
|
||||
display: none;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
position: absolute;
|
||||
right: 24px;
|
||||
top: 8px;
|
||||
|
||||
font-size: 1px;
|
||||
text-decoration: none;
|
||||
|
||||
border: 0;
|
||||
background: url('select2.png') right top no-repeat;
|
||||
cursor: pointer;
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
.select2-container.select2-allowclear .select2-choice abbr {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.select2-container .select2-choice abbr:hover {
|
||||
background-position: right -11px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.select2-drop-mask {
|
||||
border: 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
min-height: 100%;
|
||||
min-width: 100%;
|
||||
height: auto;
|
||||
width: auto;
|
||||
opacity: 0;
|
||||
z-index: 9998;
|
||||
/* styles required for IE to work */
|
||||
background-color: #fff;
|
||||
filter: alpha(opacity=0);
|
||||
}
|
||||
|
||||
.select2-drop {
|
||||
width: 100%;
|
||||
margin-top: -1px;
|
||||
position: absolute;
|
||||
z-index: 9999;
|
||||
top: 100%;
|
||||
|
||||
background: #fff;
|
||||
color: #000;
|
||||
border: 1px solid #aaa;
|
||||
border-top: 0;
|
||||
|
||||
border-radius: 0 0 4px 4px;
|
||||
|
||||
-webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
||||
box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
||||
}
|
||||
|
||||
.select2-drop-auto-width {
|
||||
border-top: 1px solid #aaa;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.select2-drop-auto-width .select2-search {
|
||||
padding-top: 4px;
|
||||
}
|
||||
|
||||
.select2-drop.select2-drop-above {
|
||||
margin-top: 1px;
|
||||
border-top: 1px solid #aaa;
|
||||
border-bottom: 0;
|
||||
|
||||
border-radius: 4px 4px 0 0;
|
||||
|
||||
-webkit-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
|
||||
box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
|
||||
}
|
||||
|
||||
.select2-drop-active {
|
||||
border: 1px solid #5897fb;
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
.select2-drop.select2-drop-above.select2-drop-active {
|
||||
border-top: 1px solid #5897fb;
|
||||
}
|
||||
|
||||
.select2-container .select2-choice .select2-arrow {
|
||||
display: inline-block;
|
||||
width: 18px;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
|
||||
border-left: 1px solid #aaa;
|
||||
border-radius: 0 4px 4px 0;
|
||||
|
||||
background-clip: padding-box;
|
||||
|
||||
background: #ccc;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));
|
||||
background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%);
|
||||
background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#eeeeee', endColorstr = '#cccccc', GradientType = 0);
|
||||
background-image: linear-gradient(top, #ccc 0%, #eee 60%);
|
||||
}
|
||||
|
||||
.select2-container .select2-choice .select2-arrow b {
|
||||
display: block;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: url('select2.png') no-repeat 0 1px;
|
||||
}
|
||||
|
||||
.select2-search {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
min-height: 26px;
|
||||
margin: 0;
|
||||
padding-left: 4px;
|
||||
padding-right: 4px;
|
||||
|
||||
position: relative;
|
||||
z-index: 10000;
|
||||
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.select2-search input {
|
||||
width: 100%;
|
||||
height: auto !important;
|
||||
min-height: 26px;
|
||||
padding: 4px 20px 4px 5px;
|
||||
margin: 0;
|
||||
|
||||
outline: 0;
|
||||
font-family: sans-serif;
|
||||
font-size: 1em;
|
||||
|
||||
border: 1px solid #aaa;
|
||||
border-radius: 0;
|
||||
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none;
|
||||
|
||||
background: #fff url('select2.png') no-repeat 100% -22px;
|
||||
background: url('select2.png') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee));
|
||||
background: url('select2.png') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%);
|
||||
background: url('select2.png') no-repeat 100% -22px, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%);
|
||||
background: url('select2.png') no-repeat 100% -22px, linear-gradient(top, #fff 85%, #eee 99%);
|
||||
}
|
||||
|
||||
.select2-drop.select2-drop-above .select2-search input {
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
.select2-search input.select2-active {
|
||||
background: #fff url('select2-spinner.gif') no-repeat 100%;
|
||||
background: url('select2-spinner.gif') no-repeat 100%, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee));
|
||||
background: url('select2-spinner.gif') no-repeat 100%, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%);
|
||||
background: url('select2-spinner.gif') no-repeat 100%, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%);
|
||||
background: url('select2-spinner.gif') no-repeat 100%, linear-gradient(top, #fff 85%, #eee 99%);
|
||||
}
|
||||
|
||||
.select2-container-active .select2-choice,
|
||||
.select2-container-active .select2-choices {
|
||||
border: 1px solid #5897fb;
|
||||
outline: none;
|
||||
|
||||
-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
.select2-dropdown-open .select2-choice {
|
||||
border-bottom-color: transparent;
|
||||
-webkit-box-shadow: 0 1px 0 #fff inset;
|
||||
box-shadow: 0 1px 0 #fff inset;
|
||||
|
||||
border-bottom-left-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
|
||||
background-color: #eee;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #fff), color-stop(0.5, #eee));
|
||||
background-image: -webkit-linear-gradient(center bottom, #fff 0%, #eee 50%);
|
||||
background-image: -moz-linear-gradient(center bottom, #fff 0%, #eee 50%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);
|
||||
background-image: linear-gradient(top, #fff 0%, #eee 50%);
|
||||
}
|
||||
|
||||
.select2-dropdown-open.select2-drop-above .select2-choice,
|
||||
.select2-dropdown-open.select2-drop-above .select2-choices {
|
||||
border: 1px solid #5897fb;
|
||||
border-top-color: transparent;
|
||||
|
||||
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.5, #eee));
|
||||
background-image: -webkit-linear-gradient(center top, #fff 0%, #eee 50%);
|
||||
background-image: -moz-linear-gradient(center top, #fff 0%, #eee 50%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);
|
||||
background-image: linear-gradient(bottom, #fff 0%, #eee 50%);
|
||||
}
|
||||
|
||||
.select2-dropdown-open .select2-choice .select2-arrow {
|
||||
background: transparent;
|
||||
border-left: none;
|
||||
filter: none;
|
||||
}
|
||||
.select2-dropdown-open .select2-choice .select2-arrow b {
|
||||
background-position: -18px 1px;
|
||||
}
|
||||
|
||||
/* results */
|
||||
.select2-results {
|
||||
max-height: 200px;
|
||||
padding: 0 0 0 4px;
|
||||
margin: 4px 4px 4px 0;
|
||||
position: relative;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
.select2-results ul.select2-result-sub {
|
||||
margin: 0;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.select2-results ul.select2-result-sub > li .select2-result-label { padding-left: 20px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 40px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 60px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 80px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 100px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 110px }
|
||||
.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 120px }
|
||||
|
||||
.select2-results li {
|
||||
list-style: none;
|
||||
display: list-item;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.select2-results li.select2-result-with-children > .select2-result-label {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.select2-results .select2-result-label {
|
||||
padding: 3px 7px 4px;
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
|
||||
min-height: 1em;
|
||||
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.select2-results .select2-highlighted {
|
||||
background: #3875d7;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.select2-results li em {
|
||||
background: #feffde;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.select2-results .select2-highlighted em {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.select2-results .select2-highlighted ul {
|
||||
background: #fff;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
|
||||
.select2-results .select2-no-results,
|
||||
.select2-results .select2-searching,
|
||||
.select2-results .select2-selection-limit {
|
||||
background: #f4f4f4;
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
/*
|
||||
disabled look for disabled choices in the results dropdown
|
||||
*/
|
||||
.select2-results .select2-disabled.select2-highlighted {
|
||||
color: #666;
|
||||
background: #f4f4f4;
|
||||
display: list-item;
|
||||
cursor: default;
|
||||
}
|
||||
.select2-results .select2-disabled {
|
||||
background: #f4f4f4;
|
||||
display: list-item;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.select2-results .select2-selected {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.select2-more-results.select2-active {
|
||||
background: #f4f4f4 url('select2-spinner.gif') no-repeat 100%;
|
||||
}
|
||||
|
||||
.select2-more-results {
|
||||
background: #f4f4f4;
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
/* disabled styles */
|
||||
|
||||
.select2-container.select2-container-disabled .select2-choice {
|
||||
background-color: #f4f4f4;
|
||||
background-image: none;
|
||||
border: 1px solid #ddd;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.select2-container.select2-container-disabled .select2-choice .select2-arrow {
|
||||
background-color: #f4f4f4;
|
||||
background-image: none;
|
||||
border-left: 0;
|
||||
}
|
||||
|
||||
.select2-container.select2-container-disabled .select2-choice abbr {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
/* multiselect */
|
||||
|
||||
.select2-container-multi .select2-choices {
|
||||
height: auto !important;
|
||||
height: 1%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
position: relative;
|
||||
|
||||
border: 1px solid #aaa;
|
||||
cursor: text;
|
||||
overflow: hidden;
|
||||
|
||||
background-color: #fff;
|
||||
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #eee), color-stop(15%, #fff));
|
||||
background-image: -webkit-linear-gradient(top, #eee 1%, #fff 15%);
|
||||
background-image: -moz-linear-gradient(top, #eee 1%, #fff 15%);
|
||||
background-image: linear-gradient(top, #eee 1%, #fff 15%);
|
||||
}
|
||||
|
||||
.select2-locked {
|
||||
padding: 3px 5px 3px 5px !important;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices {
|
||||
min-height: 26px;
|
||||
}
|
||||
|
||||
.select2-container-multi.select2-container-active .select2-choices {
|
||||
border: 1px solid #5897fb;
|
||||
outline: none;
|
||||
|
||||
-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, .3);
|
||||
}
|
||||
.select2-container-multi .select2-choices li {
|
||||
float: left;
|
||||
list-style: none;
|
||||
}
|
||||
.select2-container-multi .select2-choices .select2-search-field {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices .select2-search-field input {
|
||||
padding: 5px;
|
||||
margin: 1px 0;
|
||||
|
||||
font-family: sans-serif;
|
||||
font-size: 100%;
|
||||
color: #666;
|
||||
outline: 0;
|
||||
border: 0;
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none;
|
||||
background: transparent !important;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices .select2-search-field input.select2-active {
|
||||
background: #fff url('select2-spinner.gif') no-repeat 100% !important;
|
||||
}
|
||||
|
||||
.select2-default {
|
||||
color: #999 !important;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices .select2-search-choice {
|
||||
padding: 3px 5px 3px 18px;
|
||||
margin: 3px 0 3px 5px;
|
||||
position: relative;
|
||||
|
||||
line-height: 13px;
|
||||
color: #333;
|
||||
cursor: default;
|
||||
border: 1px solid #aaaaaa;
|
||||
|
||||
border-radius: 3px;
|
||||
|
||||
-webkit-box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
||||
box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
||||
|
||||
background-clip: padding-box;
|
||||
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
|
||||
background-color: #e4e4e4;
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#f4f4f4', GradientType=0);
|
||||
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eee));
|
||||
background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
||||
background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
||||
background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
||||
}
|
||||
.select2-container-multi .select2-choices .select2-search-choice .select2-chosen {
|
||||
cursor: default;
|
||||
}
|
||||
.select2-container-multi .select2-choices .select2-search-choice-focus {
|
||||
background: #d4d4d4;
|
||||
}
|
||||
|
||||
.select2-search-choice-close {
|
||||
display: block;
|
||||
width: 12px;
|
||||
height: 13px;
|
||||
position: absolute;
|
||||
right: 3px;
|
||||
top: 4px;
|
||||
|
||||
font-size: 1px;
|
||||
outline: none;
|
||||
background: url('select2.png') right top no-repeat;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-search-choice-close {
|
||||
left: 3px;
|
||||
}
|
||||
|
||||
.select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover {
|
||||
background-position: right -11px;
|
||||
}
|
||||
.select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close {
|
||||
background-position: right -11px;
|
||||
}
|
||||
|
||||
/* disabled styles */
|
||||
.select2-container-multi.select2-container-disabled .select2-choices {
|
||||
background-color: #f4f4f4;
|
||||
background-image: none;
|
||||
border: 1px solid #ddd;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice {
|
||||
padding: 3px 5px 3px 5px;
|
||||
border: 1px solid #ddd;
|
||||
background-image: none;
|
||||
background-color: #f4f4f4;
|
||||
}
|
||||
|
||||
.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close { display: none;
|
||||
background: none;
|
||||
}
|
||||
/* end multiselect */
|
||||
|
||||
|
||||
.select2-result-selectable .select2-match,
|
||||
.select2-result-unselectable .select2-match {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.select2-offscreen, .select2-offscreen:focus {
|
||||
clip: rect(0 0 0 0) !important;
|
||||
width: 1px !important;
|
||||
height: 1px !important;
|
||||
border: 0 !important;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
overflow: hidden !important;
|
||||
position: absolute !important;
|
||||
outline: 0 !important;
|
||||
left: 0px !important;
|
||||
top: 0px !important;
|
||||
}
|
||||
|
||||
.select2-display-none {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.select2-measure-scrollbar {
|
||||
position: absolute;
|
||||
top: -10000px;
|
||||
left: -10000px;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
overflow: scroll;
|
||||
}
|
||||
/* Retina-ize icons */
|
||||
|
||||
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi) {
|
||||
.select2-search input, .select2-search-choice-close, .select2-container .select2-choice abbr, .select2-container .select2-choice .select2-arrow b {
|
||||
background-image: url('select2x2.png') !important;
|
||||
background-repeat: no-repeat !important;
|
||||
background-size: 60px 40px !important;
|
||||
}
|
||||
.select2-search input {
|
||||
background-position: 100% -21px !important;
|
||||
}
|
||||
}
|
||||
BIN
src/main/webapp/vendor/select2/select2.png
vendored
Normal file
BIN
src/main/webapp/vendor/select2/select2.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 613 B |
BIN
src/main/webapp/vendor/select2/select2x2.png
vendored
Normal file
BIN
src/main/webapp/vendor/select2/select2x2.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 845 B |
201
src/main/webapp/vendor/ui-select2/select2.js
vendored
Normal file
201
src/main/webapp/vendor/ui-select2/select2.js
vendored
Normal file
@@ -0,0 +1,201 @@
|
||||
/**
|
||||
* Enhanced Select2 Dropmenus
|
||||
*
|
||||
* @AJAX Mode - When in this mode, your value will be an object (or array of objects) of the data used by Select2
|
||||
* This change is so that you do not have to do an additional query yourself on top of Select2's own query
|
||||
* @params [options] {object} The configuration options passed to $.fn.select2(). Refer to the documentation
|
||||
*/
|
||||
angular.module('ui.select2', []).value('uiSelect2Config', {}).directive('uiSelect2', ['uiSelect2Config', '$timeout', function (uiSelect2Config, $timeout) {
|
||||
var options = {};
|
||||
if (uiSelect2Config) {
|
||||
angular.extend(options, uiSelect2Config);
|
||||
}
|
||||
return {
|
||||
require: 'ngModel',
|
||||
compile: function (tElm, tAttrs) {
|
||||
var watch,
|
||||
repeatOption,
|
||||
repeatAttr,
|
||||
isSelect = tElm.is('select'),
|
||||
isMultiple = angular.isDefined(tAttrs.multiple);
|
||||
|
||||
// Enable watching of the options dataset if in use
|
||||
if (tElm.is('select')) {
|
||||
repeatOption = tElm.find('option[ng-repeat], option[data-ng-repeat]');
|
||||
|
||||
if (repeatOption.length) {
|
||||
repeatAttr = repeatOption.attr('ng-repeat') || repeatOption.attr('data-ng-repeat');
|
||||
watch = jQuery.trim(repeatAttr.split('|')[0]).split(' ').pop();
|
||||
}
|
||||
}
|
||||
|
||||
return function (scope, elm, attrs, controller) {
|
||||
// instance-specific options
|
||||
var opts = angular.extend({}, options, scope.$eval(attrs.uiSelect2));
|
||||
|
||||
/*
|
||||
Convert from Select2 view-model to Angular view-model.
|
||||
*/
|
||||
var convertToAngularModel = function(select2_data) {
|
||||
var model;
|
||||
if (opts.simple_tags) {
|
||||
model = [];
|
||||
angular.forEach(select2_data, function(value, index) {
|
||||
model.push(value.id);
|
||||
});
|
||||
} else {
|
||||
model = select2_data;
|
||||
}
|
||||
return model;
|
||||
};
|
||||
|
||||
/*
|
||||
Convert from Angular view-model to Select2 view-model.
|
||||
*/
|
||||
var convertToSelect2Model = function(angular_data) {
|
||||
var model = [];
|
||||
if (!angular_data) {
|
||||
return model;
|
||||
}
|
||||
|
||||
if (opts.simple_tags) {
|
||||
model = [];
|
||||
angular.forEach(
|
||||
angular_data,
|
||||
function(value, index) {
|
||||
model.push({'id': value, 'text': value});
|
||||
});
|
||||
} else {
|
||||
model = angular_data;
|
||||
}
|
||||
return model;
|
||||
};
|
||||
|
||||
if (isSelect) {
|
||||
// Use <select multiple> instead
|
||||
delete opts.multiple;
|
||||
delete opts.initSelection;
|
||||
} else if (isMultiple) {
|
||||
opts.multiple = true;
|
||||
}
|
||||
|
||||
if (controller) {
|
||||
// Watch the model for programmatic changes
|
||||
scope.$watch(tAttrs.ngModel, function(current, old) {
|
||||
if (!current) {
|
||||
return;
|
||||
}
|
||||
if (current === old) {
|
||||
return;
|
||||
}
|
||||
controller.$render();
|
||||
}, true);
|
||||
controller.$render = function () {
|
||||
if (isSelect) {
|
||||
elm.select2('val', controller.$viewValue);
|
||||
} else {
|
||||
if (opts.multiple) {
|
||||
elm.select2(
|
||||
'data', convertToSelect2Model(controller.$viewValue));
|
||||
} else {
|
||||
if (angular.isObject(controller.$viewValue)) {
|
||||
elm.select2('data', controller.$viewValue);
|
||||
} else if (!controller.$viewValue) {
|
||||
elm.select2('data', null);
|
||||
} else {
|
||||
elm.select2('val', controller.$viewValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
// Watch the options dataset for changes
|
||||
if (watch) {
|
||||
scope.$watch(watch, function (newVal, oldVal, scope) {
|
||||
if (!newVal) {
|
||||
return;
|
||||
}
|
||||
// Delayed so that the options have time to be rendered
|
||||
$timeout(function () {
|
||||
elm.select2('val', controller.$viewValue);
|
||||
// Refresh angular to remove the superfluous option
|
||||
elm.trigger('change');
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Update valid and dirty statuses
|
||||
controller.$parsers.push(function (value) {
|
||||
var div = elm.prev();
|
||||
div
|
||||
.toggleClass('ng-invalid', !controller.$valid)
|
||||
.toggleClass('ng-valid', controller.$valid)
|
||||
.toggleClass('ng-invalid-required', !controller.$valid)
|
||||
.toggleClass('ng-valid-required', controller.$valid)
|
||||
.toggleClass('ng-dirty', controller.$dirty)
|
||||
.toggleClass('ng-pristine', controller.$pristine);
|
||||
return value;
|
||||
});
|
||||
|
||||
if (!isSelect) {
|
||||
// Set the view and model value and update the angular template manually for the ajax/multiple select2.
|
||||
elm.bind("change", function () {
|
||||
if (scope.$$phase) {
|
||||
return;
|
||||
}
|
||||
scope.$apply(function () {
|
||||
controller.$setViewValue(
|
||||
convertToAngularModel(elm.select2('data')));
|
||||
});
|
||||
});
|
||||
|
||||
if (opts.initSelection) {
|
||||
var initSelection = opts.initSelection;
|
||||
opts.initSelection = function (element, callback) {
|
||||
initSelection(element, function (value) {
|
||||
controller.$setViewValue(convertToAngularModel(value));
|
||||
callback(value);
|
||||
});
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
elm.bind("$destroy", function() {
|
||||
elm.select2("destroy");
|
||||
});
|
||||
|
||||
attrs.$observe('disabled', function (value) {
|
||||
elm.select2('enable', !value);
|
||||
});
|
||||
|
||||
attrs.$observe('readonly', function (value) {
|
||||
elm.select2('readonly', !!value);
|
||||
});
|
||||
|
||||
if (attrs.ngMultiple) {
|
||||
scope.$watch(attrs.ngMultiple, function(newVal) {
|
||||
elm.select2(opts);
|
||||
});
|
||||
}
|
||||
|
||||
// Initialize the plugin late so that the injected DOM does not disrupt the template compiler
|
||||
$timeout(function () {
|
||||
elm.select2(opts);
|
||||
|
||||
// Set initial value - I'm not sure about this but it seems to need to be there
|
||||
elm.val(controller.$viewValue);
|
||||
// important!
|
||||
controller.$render();
|
||||
|
||||
// Not sure if I should just check for !isSelect OR if I should check for 'tags' key
|
||||
if (!opts.initSelection && !isSelect) {
|
||||
controller.$setViewValue(
|
||||
convertToAngularModel(elm.select2('data'))
|
||||
);
|
||||
}
|
||||
});
|
||||
};
|
||||
}
|
||||
};
|
||||
}]);
|
||||
7
src/main/webapp/vendor/ui-utils/ui-utils.0.0.4.min.js
vendored
Normal file
7
src/main/webapp/vendor/ui-utils/ui-utils.0.0.4.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user