bonethug 0.0.16 → 0.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/bonethug/installer.rb +38 -5
- data/lib/bonethug/version.rb +1 -1
- data/skel/base/Gemfile +3 -0
- data/skel/project_types/silverstripe3/.gitignore +11 -11
- data/skel/project_types/silverstripe3/composer.json +2 -4
- data/skel/project_types/silverstripe3/public/abc/_config.php +40 -36
- data/skel/project_types/silverstripe3/public/abc/code/Classes/AbcPaginator.php +22 -12
- data/skel/project_types/silverstripe3/public/abc/code/Classes/DataObjectHelper.php +10 -6
- data/skel/project_types/silverstripe3/public/abc/code/FormFields/ColourPickerField.php +3 -3
- data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/slidatron/jquery.slidatron.js +9 -1
- data/skel/project_types/silverstripe3/public/abc/javascript/library/modernizr-2.6.2.min.js +4 -0
- data/skel/project_types/silverstripe3/public/abc/templates/Pagination.ss +4 -4
- metadata +2 -1
data/lib/bonethug/installer.rb
CHANGED
@@ -219,16 +219,49 @@ module Bonethug
|
|
219
219
|
gemfile_path = target + '/Gemfile'
|
220
220
|
if File.exist? gemfile_path
|
221
221
|
|
222
|
+
# extract the contents
|
222
223
|
gemfile_contents = File.read(gemfile_path)
|
223
224
|
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
225
|
+
# identify what we are looking for
|
226
|
+
required_gems = {
|
227
|
+
'mina' => 'nadarei/mina',
|
228
|
+
'astrails-safe' => 'astrails/safe',
|
229
|
+
'whenever' => 'javan/whenever',
|
230
|
+
'bonethug' => nil
|
231
|
+
}
|
232
|
+
|
233
|
+
# look at each requirement and identify if we need things
|
234
|
+
required_gems.each do |gem_name, github|
|
235
|
+
|
236
|
+
add_gem = false;
|
237
|
+
gem_reg = Regexp.new('gem ["\']'+gem_name+'["\']')
|
238
|
+
git_reg = Regexp.new('gem[^"\']+["\']'+gem_name+'["\'],[^,]+github: ["\']'+github+'["\'],') if github
|
239
|
+
|
240
|
+
if gem_reg =~ gemfile_contents
|
241
|
+
if !github
|
242
|
+
puts 'Found '+gem_name+' in gem file'
|
243
|
+
else
|
244
|
+
puts 'Requires github version, checking...'
|
245
|
+
unless git_reg =~ gemfile_contents
|
246
|
+
puts 'Couldn\'t find '+gem_name+' in gem file adding...'
|
247
|
+
gemfile_contents.gsub(gem_reg,'')
|
248
|
+
add_gem = true;
|
249
|
+
end
|
250
|
+
end
|
251
|
+
else
|
252
|
+
puts "Couldn't find "+gem_name+" in gem file adding..."
|
253
|
+
add_gem = true;
|
254
|
+
end
|
255
|
+
|
256
|
+
if add_gem
|
257
|
+
gemfile_contents += "\n" + 'gem "'+gem_name+'"'+(github ? ', github: "'+github+'"' : '')
|
258
|
+
File.open(gemfile_path,'w') { |file| file.puts gemfile_contents }
|
259
|
+
end
|
260
|
+
|
229
261
|
end
|
230
262
|
|
231
263
|
else
|
264
|
+
puts 'No Gemfile found, creating one...'
|
232
265
|
FileUtils.cp @@skel_dir + '/base/Gemfile', gemfile_path
|
233
266
|
end
|
234
267
|
|
data/lib/bonethug/version.rb
CHANGED
data/skel/base/Gemfile
CHANGED
@@ -7,16 +7,16 @@
|
|
7
7
|
/db_dumps
|
8
8
|
/tmp/*
|
9
9
|
/composer.phar
|
10
|
+
!.gitkeep
|
10
11
|
|
11
12
|
# components tracked by composer
|
12
|
-
public/silverstripe-cache
|
13
|
-
public/themes/simple
|
14
|
-
public/vendor
|
15
|
-
public/assets/*
|
16
|
-
public/bootstrap_forms
|
17
|
-
public/cms
|
18
|
-
public/framework
|
19
|
-
public/html5
|
20
|
-
public/widgets
|
21
|
-
public/compass
|
22
|
-
composer.phar
|
13
|
+
/public/silverstripe-cache/*
|
14
|
+
/public/themes/simple
|
15
|
+
/public/vendor
|
16
|
+
/public/assets/*
|
17
|
+
/public/bootstrap_forms
|
18
|
+
/public/cms
|
19
|
+
/public/framework
|
20
|
+
/public/html5
|
21
|
+
/public/widgets
|
22
|
+
/public/compass
|
@@ -7,8 +7,7 @@
|
|
7
7
|
"silverstripe-themes/simple" : "dev-master",
|
8
8
|
"silverstripe/installer" : "3.1.*@dev",
|
9
9
|
"silverstripe/bootstrap-forms" : "dev-master",
|
10
|
-
"silverstripe/html5" : "dev-master"
|
11
|
-
"silverstripe/widgets" : "dev-master"
|
10
|
+
"silverstripe/html5" : "dev-master"
|
12
11
|
},
|
13
12
|
"extra": {
|
14
13
|
"installer-paths": {
|
@@ -24,8 +23,7 @@
|
|
24
23
|
"silverstripe/framework",
|
25
24
|
"silverstripe/cms",
|
26
25
|
"silverstripe/bootstrap-forms",
|
27
|
-
"silverstripe/html5"
|
28
|
-
"silverstripe/widgets",
|
26
|
+
"silverstripe/html5"
|
29
27
|
]
|
30
28
|
}
|
31
29
|
}
|
@@ -1,10 +1,13 @@
|
|
1
1
|
<?php
|
2
2
|
|
3
3
|
// Define path constant
|
4
|
-
|
4
|
+
$path = str_replace('\\', '/', __DIR__);
|
5
|
+
$path_fragments = explode('/', $path);
|
6
|
+
$dir_name = $path_fragments[count($path_fragments) - 1];
|
7
|
+
define('ABC_PATH', $dir_name);
|
5
8
|
|
6
9
|
// fallback image
|
7
|
-
AbcImage::$fallback_image =
|
10
|
+
AbcImage::$fallback_image = ABC_PATH.'/images/no-image.jpg';
|
8
11
|
|
9
12
|
// Extensions
|
10
13
|
Object::add_extension('AddGridFieldDetailForm_ItemRequest', 'GridFieldDetailForm_VersionedDataObject_Actions');
|
@@ -13,50 +16,51 @@ Security::add_extension('AbcSecurityExtension');
|
|
13
16
|
|
14
17
|
// Requirements
|
15
18
|
Requirements::block(THIRDPARTY_DIR."/jquery/jquery.js");
|
16
|
-
Requirements::javascript(
|
19
|
+
Requirements::javascript(ABC_PATH."/javascript/library/jQuery/jquery-1.10.2.min.js");
|
17
20
|
LeftAndMainHelper::require_unblock(THIRDPARTY_DIR."/jquery/jquery.js");
|
18
|
-
LeftAndMainHelper::require_block(
|
21
|
+
LeftAndMainHelper::require_block(ABC_PATH."/javascript/library/jQuery/jquery-1.10.2.min.js");
|
22
|
+
Requirements::javascript(ABC_PATH."/javascript/library/modernizr-2.6.2.min.js");
|
19
23
|
|
20
24
|
// DatePicker config
|
21
25
|
Object::useCustomClass('DateField_View_JQuery', 'jQueryUIDateField_View');
|
22
26
|
|
23
|
-
// jQuery extensions
|
24
|
-
Requirements::javascript(
|
25
|
-
Requirements::javascript(
|
26
|
-
Requirements::javascript(
|
27
|
-
Requirements::javascript(
|
28
|
-
Requirements::javascript(
|
29
|
-
Requirements::javascript(
|
30
|
-
Requirements::javascript(
|
31
|
-
Requirements::javascript(
|
32
|
-
Requirements::javascript(
|
33
|
-
Requirements::javascript(
|
34
|
-
Requirements::javascript(
|
35
|
-
|
36
|
-
LeftAndMainHelper::require_block(
|
37
|
-
LeftAndMainHelper::require_block(
|
38
|
-
LeftAndMainHelper::require_block(
|
39
|
-
LeftAndMainHelper::require_block(
|
40
|
-
LeftAndMainHelper::require_block(
|
41
|
-
LeftAndMainHelper::require_block(
|
42
|
-
LeftAndMainHelper::require_block(
|
43
|
-
LeftAndMainHelper::require_block(
|
44
|
-
LeftAndMainHelper::require_block(
|
45
|
-
LeftAndMainHelper::require_block(
|
46
|
-
LeftAndMainHelper::require_block(
|
47
|
-
|
48
|
-
// CSS
|
49
|
-
Requirements::css(
|
50
|
-
Requirements::css(
|
51
|
-
LeftAndMainHelper::require_block(
|
27
|
+
// // jQuery extensions
|
28
|
+
// Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/jquery.parseParams.js');
|
29
|
+
// Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/ui/js/jquery-ui-1.8.23.custom.min.js');
|
30
|
+
// Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/jquery.ui.touch-punch.min.js');
|
31
|
+
// Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/jquery.animate.color.js');
|
32
|
+
// Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/custom-scrollbar/jquery.mousewheel.min.js');
|
33
|
+
// Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/custom-scrollbar/jquery.mCustomScrollbar.js');
|
34
|
+
// Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/mobile/jquery.mobile.custom.js');
|
35
|
+
Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/event.drag/jquery.event.drag.js');
|
36
|
+
Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/event.drag/jquery.event.drag.live.js');
|
37
|
+
Requirements::javascript(ABC_PATH.'/javascript/library/jquery.drag.touch.js');
|
38
|
+
// Requirements::javascript(ABC_PATH.'/javascript/library/spin.min.js');
|
39
|
+
|
40
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/jquery.parseParams.js');
|
41
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/ui/js/jquery-ui-1.8.23.custom.min.js');
|
42
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/jquery.ui.touch-punch.min.js');
|
43
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/jquery.animate.color.js');
|
44
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/custom-scrollbar/jquery.mousewheel.min.js');
|
45
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/custom-scrollbar/jquery.mCustomScrollbar.js');
|
46
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/mobile/jquery.mobile.custom.js');
|
47
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/event.drag/jquery.event.drag.js');
|
48
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/event.drag/jquery.event.drag.live.js');
|
49
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jquery.drag.touch.js');
|
50
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/spin.min.js');
|
51
|
+
|
52
|
+
// // CSS
|
53
|
+
// Requirements::css(ABC_PATH.'/javascript/library/jQuery/ui/css/Aristo/Aristo.css');
|
54
|
+
// Requirements::css(ABC_PATH.'/javascript/library/jQuery/custom-scrollbar/jquery.mCustomScrollbar.css');
|
55
|
+
// LeftAndMainHelper::require_block(ABC_PATH.'/javascript/library/jQuery/ui/css/Aristo/Aristo.css');
|
52
56
|
|
53
57
|
// CMS customisations
|
54
58
|
|
55
59
|
//LeftAndMain::require_javascript(THIRDPARTY_DIR."/jquery/jquery.js");
|
56
|
-
//LeftAndMain::require_css(
|
57
|
-
//LeftAndMain::require_javascript(
|
60
|
+
//LeftAndMain::require_css(ABC_PATH.'/css/cms.css');
|
61
|
+
//LeftAndMain::require_javascript(ABC_PATH.'/javascript/jquery.cms.js');
|
58
62
|
|
59
63
|
//$server = ( !empty($_SERVER['HTTPS']) || !empty($_SERVER['HTTP_HTTPS']) || (!empty($_SERVER['REQUEST_SCHEME']) && $_SERVER['REQUEST_SCHEME'] == 'https') ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'];
|
60
64
|
//Requirements::customScript("
|
61
|
-
// !window.jQuery && document.write(unescape('%3Cscript src=\"".$server.'/'.
|
65
|
+
// !window.jQuery && document.write(unescape('%3Cscript src=\"".$server.'/'.ABC_PATH.'/javascript/library/jQuery/jquery-1.8.0.min.js'."\"%3E%3C/script%3E'));
|
62
66
|
//");
|
@@ -27,7 +27,7 @@ class AbcPaginator extends ViewableData{
|
|
27
27
|
public function __construct($initHitsPerPage = null, $pageVar = null, $hitsVar = null){
|
28
28
|
|
29
29
|
// requirements
|
30
|
-
Requirements::javascript(
|
30
|
+
Requirements::javascript(ABC_PATH.'/javascript/pagination.js');
|
31
31
|
|
32
32
|
// Set up environment
|
33
33
|
$this->pageVar = $pageVar ? $pageVar : self::$defaultPageVar ;
|
@@ -50,12 +50,12 @@ class AbcPaginator extends ViewableData{
|
|
50
50
|
$dropdownOptions = array();
|
51
51
|
if ( $options && count($options) ){
|
52
52
|
foreach($options as $option){
|
53
|
-
$dropdownOptions[
|
53
|
+
$dropdownOptions[AbcURL::get($baseURL)->q(array( $this->hitsVar => $option, $this->pageVar => 1))->URL] = $option;
|
54
54
|
}
|
55
55
|
}else{
|
56
56
|
$default = array(12,24,36,48,60);
|
57
57
|
foreach($default as $dindex){
|
58
|
-
$dropdownOptions[
|
58
|
+
$dropdownOptions[AbcURL::get($baseURL)->q(array( $this->hitsVar => $dindex, $this->pageVar => 1))->URL] = $dindex;
|
59
59
|
}
|
60
60
|
}
|
61
61
|
|
@@ -63,7 +63,7 @@ class AbcPaginator extends ViewableData{
|
|
63
63
|
$name = 'Hits',
|
64
64
|
$title = ' ',
|
65
65
|
$source = $dropdownOptions,
|
66
|
-
$value =
|
66
|
+
$value = AbcURL::get($baseURL)->q(array( $this->hitsVar => $this->limit, $this->pageVar => 1))->URL
|
67
67
|
);
|
68
68
|
}
|
69
69
|
|
@@ -115,8 +115,16 @@ class AbcPaginator extends ViewableData{
|
|
115
115
|
|
116
116
|
// Add caller class filter if its on a shared table
|
117
117
|
if ($callerClass != $oTable){
|
118
|
-
$wSQL.= $wSQL ? " AND " : " WHERE " ;
|
119
|
-
$wSQL.= "(".$table.".ClassName='".$callerClass."'
|
118
|
+
$wSQL.= $wSQL ? " AND " : " WHERE " ;
|
119
|
+
$wSQL.= "(".$table.".ClassName='".$callerClass."'";
|
120
|
+
|
121
|
+
if ($subclasses = DataObjectHelper::getSubclassesOf($callerClass)) {
|
122
|
+
foreach($subclasses as $subclass) {
|
123
|
+
$wSQL.= " OR ".$table.".ClassName='".$subclass."'";
|
124
|
+
}
|
125
|
+
}
|
126
|
+
|
127
|
+
$wSQL.= ")";
|
120
128
|
}
|
121
129
|
|
122
130
|
// Filter
|
@@ -132,7 +140,7 @@ class AbcPaginator extends ViewableData{
|
|
132
140
|
}
|
133
141
|
|
134
142
|
public static function getUnlimitedRowCountForSQL($sql){
|
135
|
-
$r =
|
143
|
+
$r = AbcDB::getInstance()->query($sql);
|
136
144
|
if ( $r ) return $r->fetch(PDO::FETCH_OBJ)->total;
|
137
145
|
|
138
146
|
return false;
|
@@ -160,10 +168,10 @@ class AbcPaginator extends ViewableData{
|
|
160
168
|
$pageLinks->Total = $totalPages;
|
161
169
|
|
162
170
|
// Prep page links
|
163
|
-
if ($this->currentPage > 1+$pageDisplayRange) $pageLinks->FirstPage =
|
164
|
-
if ($this->currentPage < $totalPages-$pageDisplayRange) $pageLinks->LastPage =
|
165
|
-
if ($this->currentPage != 1) $pageLinks->PreviousPage =
|
166
|
-
if ($this->currentPage != $totalPages) $pageLinks->NextPage =
|
171
|
+
if ($this->currentPage > 1+$pageDisplayRange) $pageLinks->FirstPage = AbcURL::get($baseURL)->q(array('hits'=>$this->limit,'page'=>1))->URL;
|
172
|
+
if ($this->currentPage < $totalPages-$pageDisplayRange) $pageLinks->LastPage = AbcURL::get($baseURL)->q(array('hits'=>$this->limit,'page'=>$totalPages))->URL;
|
173
|
+
if ($this->currentPage != 1) $pageLinks->PreviousPage = AbcURL::get($baseURL)->q(array('hits'=>$this->limit,'page'=>($this->currentPage - 1)))->URL;
|
174
|
+
if ($this->currentPage != $totalPages) $pageLinks->NextPage = AbcURL::get($baseURL)->q(array('hits'=>$this->limit,'page'=>($this->currentPage + 1)))->URL;
|
167
175
|
|
168
176
|
// page quick links
|
169
177
|
$pageLinks->QuickLinks = new ArrayList;
|
@@ -177,11 +185,13 @@ class AbcPaginator extends ViewableData{
|
|
177
185
|
// make links
|
178
186
|
for($i = $minShow; $i <= $maxShow; $i++){
|
179
187
|
$link = new DataObject;
|
180
|
-
$link->PageLink = $i == $this->currentPage ? null :
|
188
|
+
$link->PageLink = $i == $this->currentPage ? null : AbcURL::get($baseURL)->q(array('hits'=>$this->limit,'page'=>$i))->URL ;
|
181
189
|
$link->PageNum = $i;
|
182
190
|
$pageLinks->QuickLinks->push($link);
|
183
191
|
}
|
184
192
|
|
193
|
+
// die($totalHits .' vs '. $this->limit);
|
194
|
+
|
185
195
|
// Prep return data
|
186
196
|
$return->HitsSelector = $this->HitsSelector($baseURL,$hitsSelectorOptions);
|
187
197
|
$return->TotalHits = strval($totalHits);
|
@@ -170,12 +170,16 @@ class DataObjectHelper{
|
|
170
170
|
/*
|
171
171
|
* Gets sub classes of the provided class - possibly should work off the manifest rather than get declared classes
|
172
172
|
*/
|
173
|
-
public function getSubclassesOf($parent) {
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
173
|
+
public static function getSubclassesOf($parent) {
|
174
|
+
|
175
|
+
return ClassInfo::subclassesFor($parent);
|
176
|
+
|
177
|
+
// $result = array();
|
178
|
+
// foreach (get_declared_classes() as $class) {
|
179
|
+
// if (is_subclass_of($class, $parent))
|
180
|
+
// $result[] = $class;
|
181
|
+
// }
|
182
|
+
|
179
183
|
}
|
180
184
|
|
181
185
|
protected static function getFieldsForObj($obj) {
|
@@ -18,9 +18,9 @@ class ColourPickerField extends TextField {
|
|
18
18
|
|
19
19
|
public function __construct($name, $title = null, $value = '', $maxLength = null, $form = null) {
|
20
20
|
parent::__construct($name, $title, $value, $maxLength, $form);
|
21
|
-
Requirements::javascript(
|
22
|
-
Requirements::customScript(file_get_contents($_SERVER['DOCUMENT_ROOT'].'/'.
|
23
|
-
Requirements::css(
|
21
|
+
Requirements::javascript(ABC_PATH.'/javascript/library/jQuery/colorpicker/js/colorpicker.js');
|
22
|
+
Requirements::customScript(file_get_contents($_SERVER['DOCUMENT_ROOT'].'/'.ABC_PATH.'/javascript/ColourPickerField.js'));
|
23
|
+
Requirements::css(ABC_PATH.'/javascript/library/jQuery/colorpicker/css/colorpicker.css');
|
24
24
|
$this->addExtraClass('text');
|
25
25
|
}
|
26
26
|
|
@@ -26,7 +26,8 @@
|
|
26
26
|
classNameSpace : "slidatron",
|
27
27
|
holdTime : 9000,
|
28
28
|
transitionTime : 1500,
|
29
|
-
onAfterInit : null
|
29
|
+
onAfterInit : null,
|
30
|
+
onAfterMove : null
|
30
31
|
};
|
31
32
|
|
32
33
|
// The actual plugin constructor
|
@@ -280,6 +281,13 @@
|
|
280
281
|
var ids = _this.generateIndentifiers(index);
|
281
282
|
$('.slidatron-ctrl-wrapper a').removeClass('current');
|
282
283
|
$('#'+ids.ctrlId).addClass('current');
|
284
|
+
|
285
|
+
// add the curret class to the current slide
|
286
|
+
$('.slidatron-slide').removeClass('current');
|
287
|
+
$('.slidatron-slide-'+index).addClass('current');
|
288
|
+
|
289
|
+
// run the post
|
290
|
+
if (typeof _this.options.onAfterMove == 'function') _this.options.onAfterMove();
|
283
291
|
|
284
292
|
});
|
285
293
|
|
@@ -0,0 +1,4 @@
|
|
1
|
+
/* Modernizr 2.6.2 (Custom Build) | MIT & BSD
|
2
|
+
* Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load
|
3
|
+
*/
|
4
|
+
;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.6.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["­",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function k(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function l(){var a=r.elements;return typeof a=="string"?a.split(" "):a}function m(a){var b=i[a[g]];return b||(b={},h++,a[g]=h,i[h]=b),b}function n(a,c,f){c||(c=b);if(j)return c.createElement(a);f||(f=m(c));var g;return f.cache[a]?g=f.cache[a].cloneNode():e.test(a)?g=(f.cache[a]=f.createElem(a)).cloneNode():g=f.createElem(a),g.canHaveChildren&&!d.test(a)?f.frag.appendChild(g):g}function o(a,c){a||(a=b);if(j)return a.createDocumentFragment();c=c||m(a);var d=c.frag.cloneNode(),e=0,f=l(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function p(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return r.shivMethods?n(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+l().join().replace(/\w+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(r,b.frag)}function q(a){a||(a=b);var c=m(a);return r.shivCSS&&!f&&!c.hasCSS&&(c.hasCSS=!!k(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),j||p(a,c),a}var c=a.html5||{},d=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,e=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,f,g="_html5shiv",h=0,i={},j;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",f="hidden"in a,j=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){f=!0,j=!0}})();var r={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,supportsUnknownElements:j,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:q,createElement:n,createDocumentFragment:o};a.html5=r,q(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
|
|
7
7
|
|
8
|
-
<%
|
8
|
+
<% with Paginator.PageLinks %>
|
9
9
|
|
10
10
|
<% if PreviousPage %><a href="$PreviousPage" title="Previous" class="terminator">Prev</a><% end_if %>
|
11
11
|
<% if FirstPage %>
|
@@ -13,13 +13,13 @@
|
|
13
13
|
...
|
14
14
|
<% end_if %>
|
15
15
|
|
16
|
-
<%
|
16
|
+
<% loop QuickLinks %>
|
17
17
|
<% if PageLink %>
|
18
18
|
<a href="$PageLink">$PageNum</a>
|
19
19
|
<% else %>
|
20
20
|
<span class="selected">$PageNum</span>
|
21
21
|
<% end_if %>
|
22
|
-
<%
|
22
|
+
<% end_loop %>
|
23
23
|
|
24
24
|
<% if LastPage %>
|
25
25
|
...
|
@@ -27,6 +27,6 @@
|
|
27
27
|
<% end_if %>
|
28
28
|
<% if NextPage %><a href="$NextPage" title="Next" class="terminator">Next</a><% end_if %>
|
29
29
|
|
30
|
-
<%
|
30
|
+
<% end_with %>
|
31
31
|
</div>
|
32
32
|
<% end_if %>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bonethug
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.17
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -1056,6 +1056,7 @@ files:
|
|
1056
1056
|
- skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/index.html
|
1057
1057
|
- skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/js/jquery-1.8.0.min.js
|
1058
1058
|
- skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/js/jquery-ui-1.8.23.custom.min.js
|
1059
|
+
- skel/project_types/silverstripe3/public/abc/javascript/library/modernizr-2.6.2.min.js
|
1059
1060
|
- skel/project_types/silverstripe3/public/abc/javascript/library/spin.min.js
|
1060
1061
|
- skel/project_types/silverstripe3/public/abc/javascript/pagination.js
|
1061
1062
|
- skel/project_types/silverstripe3/public/abc/lib/bootstrap/css/bootstrap.css
|