fancygrid 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (97) hide show
  1. data/.bundle/config +2 -0
  2. data/.rspec +1 -0
  3. data/CHANGELOG +34 -0
  4. data/Gemfile +15 -0
  5. data/Gemfile.lock +125 -0
  6. data/LICENSE +20 -0
  7. data/README.rdoc +299 -0
  8. data/ROADMAP +1 -0
  9. data/Rakefile +45 -0
  10. data/VERSION +1 -0
  11. data/app/views/fancygrid/_cells.html.haml +13 -0
  12. data/app/views/fancygrid/base/controls.html.haml +40 -0
  13. data/app/views/fancygrid/base/list_frame.html.haml +37 -0
  14. data/app/views/fancygrid/base/search.html.haml +33 -0
  15. data/app/views/fancygrid/base/sort.html.haml +20 -0
  16. data/app/views/fancygrid/base/table_frame.html.haml +45 -0
  17. data/config/initializers/fancygrid.rb +67 -0
  18. data/config/locales/fancygrid.de.yml +41 -0
  19. data/config/locales/fancygrid.en.yml +42 -0
  20. data/fancygrid.gemspec +162 -0
  21. data/init.rb +1 -0
  22. data/lib/fancygrid.rb +73 -0
  23. data/lib/fancygrid/grid.rb +387 -0
  24. data/lib/fancygrid/helper.rb +129 -0
  25. data/lib/fancygrid/node.rb +533 -0
  26. data/lib/fancygrid/query_generator.rb +338 -0
  27. data/lib/fancygrid/view.rb +148 -0
  28. data/lib/generators/install_generator.rb +61 -0
  29. data/lib/generators/views_generator.rb +25 -0
  30. data/lib/version.rb +0 -0
  31. data/public/images/fancygrid/add.png +0 -0
  32. data/public/images/fancygrid/clear.png +0 -0
  33. data/public/images/fancygrid/ddn.png +0 -0
  34. data/public/images/fancygrid/dn.png +0 -0
  35. data/public/images/fancygrid/dots.png +0 -0
  36. data/public/images/fancygrid/loading.gif +0 -0
  37. data/public/images/fancygrid/magnifier.png +0 -0
  38. data/public/images/fancygrid/next.png +0 -0
  39. data/public/images/fancygrid/order.png +0 -0
  40. data/public/images/fancygrid/prev.png +0 -0
  41. data/public/images/fancygrid/reload.png +0 -0
  42. data/public/images/fancygrid/remove.png +0 -0
  43. data/public/images/fancygrid/spacer.gif +0 -0
  44. data/public/images/fancygrid/submit.png +0 -0
  45. data/public/images/fancygrid/th_bg.png +0 -0
  46. data/public/images/fancygrid/up.png +0 -0
  47. data/public/images/fancygrid/uup.png +0 -0
  48. data/public/javascripts/fancygrid.js +477 -0
  49. data/public/javascripts/fancygrid.min.js +17 -0
  50. data/public/stylesheets/fancygrid.css +289 -0
  51. data/public/stylesheets/fancygrid.scss +302 -0
  52. data/spec/dummy/Rakefile +7 -0
  53. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  54. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  55. data/spec/dummy/app/models/project.rb +3 -0
  56. data/spec/dummy/app/models/ticket.rb +3 -0
  57. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  58. data/spec/dummy/config.ru +4 -0
  59. data/spec/dummy/config/application.rb +45 -0
  60. data/spec/dummy/config/boot.rb +10 -0
  61. data/spec/dummy/config/database.yml +22 -0
  62. data/spec/dummy/config/environment.rb +5 -0
  63. data/spec/dummy/config/environments/development.rb +26 -0
  64. data/spec/dummy/config/environments/production.rb +49 -0
  65. data/spec/dummy/config/environments/test.rb +35 -0
  66. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  67. data/spec/dummy/config/initializers/inflections.rb +10 -0
  68. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  69. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  70. data/spec/dummy/config/initializers/session_store.rb +8 -0
  71. data/spec/dummy/config/locales/en.yml +5 -0
  72. data/spec/dummy/config/routes.rb +58 -0
  73. data/spec/dummy/db/migrate/20110112183948_create_projects.rb +11 -0
  74. data/spec/dummy/db/migrate/20110112183956_create_tickets.rb +14 -0
  75. data/spec/dummy/db/test.sqlite3 +0 -0
  76. data/spec/dummy/log/development.log +0 -0
  77. data/spec/dummy/log/production.log +0 -0
  78. data/spec/dummy/log/server.log +0 -0
  79. data/spec/dummy/log/test.log +1026 -0
  80. data/spec/dummy/public/404.html +26 -0
  81. data/spec/dummy/public/422.html +26 -0
  82. data/spec/dummy/public/500.html +26 -0
  83. data/spec/dummy/public/favicon.ico +0 -0
  84. data/spec/dummy/public/javascripts/application.js +2 -0
  85. data/spec/dummy/public/javascripts/controls.js +965 -0
  86. data/spec/dummy/public/javascripts/dragdrop.js +974 -0
  87. data/spec/dummy/public/javascripts/effects.js +1123 -0
  88. data/spec/dummy/public/javascripts/prototype.js +6001 -0
  89. data/spec/dummy/public/javascripts/rails.js +175 -0
  90. data/spec/dummy/public/stylesheets/.gitkeep +0 -0
  91. data/spec/dummy/script/rails +6 -0
  92. data/spec/grid_spec.rb +15 -0
  93. data/spec/integration/navigation_spec.rb +9 -0
  94. data/spec/node_spec.rb +326 -0
  95. data/spec/query_generator_spec.rb +358 -0
  96. data/spec/spec_helper.rb +53 -0
  97. metadata +214 -0
@@ -0,0 +1,17 @@
1
+ (function(b){b.fn.fancygrid=function(a){if(g[a])return g[a].apply(this,Array.prototype.slice.call(arguments,1));else if(typeof a==="object"||!a)return g.init.apply(this,arguments);else b.error("Method "+a+" does not exist on jQuery.fancygrid")};var g={init:function(a){var c={url:"/",ajaxType:"GET",name:"",query:{pagination:{page:a.paginationPage||0,per_page:a.paginationPerPage},columns:{},conditions:{},operator:"any",order:{}},searchFadeTime:25,searchFadeOpac:0.5,searchType:"simple",queries:0,isStatic:!1,
2
+ gridType:"table",hideTopControl:!1,hideBottomControl:!1},a=a||{};b.extend(c,a);return this.each(function(){var d=b(this),e=d.data("fancygrid");e?b.extend(e,a):(d.data("fancygrid",c),b(".fg-sort-window, .fg-sort-content, .fg-search-template").hide(),c.searchVisible?c.searchVisible=!0:d.find(".fg-search").hide(),d.find(".fg-search").find("input[type='text'], select").bind("change.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("newSearch");return!1}).bind("focus.fancygrid",function(){b(this).select();
3
+ return!1}),d.find(".fg-page").bind("change.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("page",b(this).val());return!1}).bind("focus.fancygrid",function(){b(this).select();return!1}),d.find(".fg-previous").bind("click.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("previousPage");return!1}),d.find(".fg-next").bind("click.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("nextPage");return!1}),d.find(".fg-reload").bind("click.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("reloadPage");
4
+ return!1}),d.find(".fg-clear").bind("click.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("clearSearch");return!1}),d.find(".fg-per-page").bind("change.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("perPage",b(this).val());return!1}),d.find(".fg-magnify").bind("click.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("toggleSearch");return!1}),d.find(".fg-sort").bind("click.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("showSortWindow");
5
+ return!1}),d.find(".fg-search-submit").bind("click.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("newSearch");return!1}),d.find(".fg-search-remove").click(function(){b(this).parents(".fg-search-criterion").remove()}),d.find(".fg-search-add").click(function(){d.fancygrid("addCriterionRow")}),d.find(".fg-sort-content").click(function(){d.fancygrid("closeSortWindow")}),d.find(".fg-sortable").click(function(a){a.stopPropagation()}))})},destroy:function(){return this.each(function(){var a=
6
+ b(this);data=a.data("fancygrid");a.unbind(".fancygrid");a.removeData("fancygrid")})},setupConditions:function(){var a=b(this),c=a.data("fancygrid"),c=a.data("fancygrid");c.query.conditions={};c.searchType==="simple"?(c.query.operator="all",b(this).find(".fg-attribute").each(function(){c.query.conditions[b(this).attr("name")]=b(this).val()})):(c.query.operator=a.find("#fg-search-conditions:checked").val()||"any",a.find("ul.fg-search-criteria li.fg-search-criterion").each(function(){var a=b(this).find("select[name='column_name']").val(),
7
+ e=b(this).find("select[name='operator']").val(),f=b(this).find("input[name='column_value']").val();typeof c.query.conditions[a]==="undefined"&&(c.query.conditions[a]=[]);c.query.conditions[a].push({operator:e,value:f})}))},setupEmptyConditions:function(){b(this).data("fancygrid").query.conditions={}},setupPagination:function(a,c){var d=b(this).data("fancygrid");d.query.pagination={page:0,per_page:20};if(!isNaN(Number(a))&&Number(a)>=0)d.query.pagination.page=a;if(!isNaN(Number(c))&&Number(c)>0)d.query.pagination.per_page=
8
+ c},setupOrder:function(){var a=b(this),c=a.data("fancygrid"),d={},a=a.find("th.fg-orderable[order='ASC'], th.fg-orderable[order='DESC']");if(a.length>0)d.table=a.attr("table"),d.column=a.attr("column"),d.direction=a.attr("order");c.query.order=d},setupColumns:function(){var a=b(this),c=a.data("fancygrid"),d={},e=a.find(".fg-sortable-visible li:not(.fg-not-sortable)"),a=a.find(".fg-sortable-hidden li:not(.fg-not-sortable)"),f=0;b(e).each(function(){d[b(this).attr("id")]={visible:!0,position:f};f+=
9
+ 1});b(a).each(function(){d[b(this).attr("id")]={visible:!1,position:f};f+=1});c.query.columns=d},order:function(){return""},search:function(){var a=b(this),c=a.find(".fg-tablewrapper"),d=a.find(".fg-control-bar"),e=a.data("fancygrid");e.queries+=1;e.query.search_visible=a.find(".fg-search").is(":visible");d.find(".fg-reload").addClass("loading");a.fadeTo(e.searchFadeTime,e.searchFadeOpac);queryData={fancygrid:{}};queryData.fancygrid[e.name]=e.query;b.ajax({type:e.ajaxType,url:e.url,data:queryData,
10
+ dataType:"html",success:function(c){e.queries-=1;e.queries===0&&(a.fancygrid("replaceContent",b(c).find(".fg-tablewrapper")),d.find(".fg-per-page").val(e.query.pagination.per_page),d.find(".fg-page").val(Number(e.query.pagination.page)+1),total=Number(b(c).find(".fg-result-total").html()),totalPages=total/e.query.pagination.per_page,totalPages=(totalPages|0)+1,d.find(".fg-page-total").text(totalPages),d.find(".fg-result-total").html(total),a.fadeTo(e.searchFadeTime,1,function(){d.find(".fg-reload").removeClass("loading")}));
11
+ a.trigger("loadSuccess")},error:function(){e.queries-=1;e.queries===0&&(c.find(".fg-row").detach(),a.fadeTo(e.searchFadeTime,1,function(){d.find(".fg-reload").removeClass("loading")}));a.trigger("loadError")}})},replaceContent:function(a){var c=b(this),d=c.data("fancygrid"),e=c.find("input:focus").attr("id");c.find(".fg-tablewrapper").replaceWith(a);c.find(".fg-tablewrapper").find(".fg-search").find("input[type='text'], select").bind("change.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("newSearch");
12
+ return!1}).bind("focus.fancygrid",function(){b(this).select();return!1});c.find("th.fg-orderable").click(function(){c.fancygrid("orderBy",b(this))});d.searchVisible?c.find(".fg-search").show():c.find(".fg-search").hide();e&&c.find("#"+e).focus()},nextPage:function(){var a=b(this);data=a.data("fancygrid");a.fancygrid("setupPagination",data.query.pagination.page+1,data.query.pagination.per_page);a.fancygrid("search")},previousPage:function(){var a=b(this);data=a.data("fancygrid");a.fancygrid("setupPagination",
13
+ data.query.pagination.page-1,data.query.pagination.per_page);a.fancygrid("search")},perPage:function(a){var c=b(this);data=c.data("fancygrid");c.fancygrid("setupPagination",0,a);c.fancygrid("search")},page:function(a){var c=b(this);data=c.data("fancygrid");c.fancygrid("setupPagination",Number(a)-1,data.query.pagination.per_page);c.fancygrid("search")},reloadPage:function(){var a=b(this);data=a.data("fancygrid");a.fancygrid("setupPagination",data.query.pagination.page,data.query.pagination.per_page);
14
+ a.fancygrid("setupConditions");a.fancygrid("setupColumns");a.fancygrid("setupOrder");a.fancygrid("search")},newSearch:function(){var a=b(this);data=a.data("fancygrid");a.fancygrid("setupPagination",0,data.query.pagination.per_page);a.fancygrid("setupConditions");a.fancygrid("setupColumns");a.fancygrid("setupOrder");a.fancygrid("search")},clearSearch:function(){var a=b(this);data=a.data("fancygrid");a.find(".fg-attribute").each(function(){b(this).val("")});a.find("ul.fg-search-criteria li.fg-search-criterion").detach();
15
+ a.fancygrid("setupEmptyConditions");a.fancygrid("search")},toggleSearch:function(){var a=b(this);data=a.data("fancygrid");a.find(".fg-search").toggle();data.searchVisible=a.find(".fg-search").is(":visible")},addCriterionRow:function(){var a=b(this),c=b(a.find(".fg-search-template").html());a.find("ul.fg-search-criteria").append(c);c.find(".fg-search-remove").click(function(){b(this).parents(".fg-search-criterion").remove()});c.find("input[type='text']").bind("change.fancygrid",function(){b(this).parents(".fg-fancygrid").fancygrid("newSearch");
16
+ return!1}).bind("focus.fancygrid",function(){b(this).select();return!1})},showSortWindow:function(){var a=b(this);a.find(".fg-sort-window").show();a.find(".fg-sort-content").show();a.find(".fg-sortable").sortable({connectWith:".fg-sortable",items:"li:not(.fg-not-sortable)"})},closeSortWindow:function(){var a=b(this);a.find(".fg-sort-window").hide();a.find(".fg-sort-content").hide();a.fancygrid("reloadPage")},orderBy:function(a){$this=b(this);var c=a.attr("order");$this.find("th.fg-orderable").removeAttr("order");
17
+ c==="DESC"?a.attr("order","ASC"):a.attr("order","DESC");$this.fancygrid("reloadPage")}}})(jQuery);
@@ -0,0 +1,289 @@
1
+ /* line 16, ../../../app/stylesheets/fancygrid.scss */
2
+ .fg-fancygrid .fg-tablewrapper {
3
+ clear: left;
4
+ overflow: auto;
5
+ margin: 0px;
6
+ border: 1px solid #cccccc;
7
+ }
8
+ /* line 22, ../../../app/stylesheets/fancygrid.scss */
9
+ .fg-fancygrid .fg-tablewrapper table {
10
+ width: 100%;
11
+ border-spacing: 0px;
12
+ font-size: 90%;
13
+ }
14
+ /* line 28, ../../../app/stylesheets/fancygrid.scss */
15
+ .fg-fancygrid .fg-tablewrapper table tr th {
16
+ text-align: left;
17
+ font-weight: bold;
18
+ padding: 5px 10px 5px 10px;
19
+ border-right: 1px solid #cccccc;
20
+ background: url("/images/fancygrid/th_bg.png");
21
+ }
22
+ /* line 35, ../../../app/stylesheets/fancygrid.scss */
23
+ .fg-fancygrid .fg-tablewrapper table tr th .fg-order-tag {
24
+ display: none;
25
+ float: right;
26
+ width: 16px;
27
+ height: 16px;
28
+ }
29
+ /* line 43, ../../../app/stylesheets/fancygrid.scss */
30
+ .fg-fancygrid .fg-tablewrapper table tr th.fg-orderable .fg-order-tag {
31
+ display: block;
32
+ background: url("/images/fancygrid/dots.png") no-repeat scroll 50% 50% transparent;
33
+ }
34
+ /* line 49, ../../../app/stylesheets/fancygrid.scss */
35
+ .fg-fancygrid .fg-tablewrapper table tr th[order='ASC'] .fg-order-tag {
36
+ display: block;
37
+ background: url("/images/fancygrid/dn.png") no-repeat scroll 50% 50% transparent;
38
+ }
39
+ /* line 55, ../../../app/stylesheets/fancygrid.scss */
40
+ .fg-fancygrid .fg-tablewrapper table tr th[order='ASC']:hover .fg-order-tag {
41
+ background: url("/images/fancygrid/ddn.png") no-repeat scroll 50% 50% transparent;
42
+ }
43
+ /* line 60, ../../../app/stylesheets/fancygrid.scss */
44
+ .fg-fancygrid .fg-tablewrapper table tr th[order='DESC'] .fg-order-tag {
45
+ display: block;
46
+ background: url("/images/fancygrid/up.png") no-repeat scroll 50% 50% transparent;
47
+ }
48
+ /* line 66, ../../../app/stylesheets/fancygrid.scss */
49
+ .fg-fancygrid .fg-tablewrapper table tr th[order='DESC']:hover .fg-order-tag {
50
+ background: url("/images/fancygrid/uup.png") no-repeat scroll 50% 50% transparent;
51
+ }
52
+ /* line 70, ../../../app/stylesheets/fancygrid.scss */
53
+ .fg-fancygrid .fg-tablewrapper table tr th:last-child, .fg-fancygrid .fg-tablewrapper table tr td:last-child {
54
+ border-right: none;
55
+ }
56
+ /* line 74, ../../../app/stylesheets/fancygrid.scss */
57
+ .fg-fancygrid .fg-tablewrapper table tr td {
58
+ padding: 4px 10px 4px 10px;
59
+ border-right: 1px solid #cccccc;
60
+ background: none repeat scroll 0 0 #f8f8f8;
61
+ }
62
+ /* line 78, ../../../app/stylesheets/fancygrid.scss */
63
+ .fg-fancygrid .fg-tablewrapper table tr td img {
64
+ vertical-align: bottom;
65
+ }
66
+ /* line 84, ../../../app/stylesheets/fancygrid.scss */
67
+ .fg-fancygrid .fg-tablewrapper table tr:nth-child(odd) td {
68
+ background: none repeat scroll 0 0 #e8e8e8;
69
+ }
70
+ /* line 90, ../../../app/stylesheets/fancygrid.scss */
71
+ .fg-fancygrid .fg-tablewrapper table tr:hover td {
72
+ background: none repeat scroll 0 0 #dedede;
73
+ }
74
+ /* line 98, ../../../app/stylesheets/fancygrid.scss */
75
+ .fg-fancygrid .fg-tablewrapper table tr.fg-search td {
76
+ padding: 4px;
77
+ background: none repeat scroll 0 0 #f8f8f8;
78
+ }
79
+ /* line 102, ../../../app/stylesheets/fancygrid.scss */
80
+ .fg-fancygrid .fg-tablewrapper table tr.fg-search td input {
81
+ display: inline;
82
+ width: 99%;
83
+ height: 25px;
84
+ margin: 0px;
85
+ padding: 0px;
86
+ border: 1px solid #cccccc;
87
+ }
88
+ /* line 110, ../../../app/stylesheets/fancygrid.scss */
89
+ .fg-fancygrid .fg-tablewrapper table tr.fg-search td input:focus {
90
+ background: none repeat scroll 0 0 #fffae0;
91
+ }
92
+ /* line 114, ../../../app/stylesheets/fancygrid.scss */
93
+ .fg-fancygrid .fg-tablewrapper table tr.fg-search td select {
94
+ width: 100%;
95
+ display: inline;
96
+ margin: 0px;
97
+ padding: 2px;
98
+ }
99
+ /* line 122, ../../../app/stylesheets/fancygrid.scss */
100
+ .fg-fancygrid .fg-tablewrapper table tr.fg-search:hover td {
101
+ background: none repeat scroll 0 0 #f8f8f8;
102
+ }
103
+ /* line 130, ../../../app/stylesheets/fancygrid.scss */
104
+ .fg-fancygrid fieldset.fg-search {
105
+ display: inline;
106
+ }
107
+ /* line 132, ../../../app/stylesheets/fancygrid.scss */
108
+ .fg-fancygrid fieldset.fg-search .fg-search-controls {
109
+ margin: 5px;
110
+ margin-bottom: 15px;
111
+ }
112
+ /* line 135, ../../../app/stylesheets/fancygrid.scss */
113
+ .fg-fancygrid fieldset.fg-search .fg-search-controls input[type='checkbox'] {
114
+ width: 16px;
115
+ height: 16px;
116
+ }
117
+ /* line 141, ../../../app/stylesheets/fancygrid.scss */
118
+ .fg-fancygrid fieldset.fg-search ul.fg-search-criteria {
119
+ margin: 5px;
120
+ padding: 0px;
121
+ }
122
+ /* line 145, ../../../app/stylesheets/fancygrid.scss */
123
+ .fg-fancygrid fieldset.fg-search ul.fg-search-criteria li.fg-search-criterion {
124
+ margin: 0px 0px 3px 0px;
125
+ padding: 0px;
126
+ list-style: none;
127
+ }
128
+ /* line 149, ../../../app/stylesheets/fancygrid.scss */
129
+ .fg-fancygrid fieldset.fg-search ul.fg-search-criteria li.fg-search-criterion select {
130
+ width: 80px;
131
+ padding: 2px;
132
+ }
133
+ /* line 153, ../../../app/stylesheets/fancygrid.scss */
134
+ .fg-fancygrid fieldset.fg-search ul.fg-search-criteria li.fg-search-criterion input[type='text'] {
135
+ width: 100px;
136
+ padding: 2px;
137
+ }
138
+ /* line 161, ../../../app/stylesheets/fancygrid.scss */
139
+ .fg-fancygrid ul.fg-control-bar.top {
140
+ background: transparent;
141
+ }
142
+ /* line 164, ../../../app/stylesheets/fancygrid.scss */
143
+ .fg-fancygrid ul.fg-control-bar.bottom {
144
+ background: transparent;
145
+ }
146
+ /* line 167, ../../../app/stylesheets/fancygrid.scss */
147
+ .fg-fancygrid ul.fg-control-bar {
148
+ clear: both;
149
+ display: block;
150
+ text-align: center;
151
+ margin: 0px;
152
+ padding: 5px;
153
+ }
154
+ /* line 174, ../../../app/stylesheets/fancygrid.scss */
155
+ .fg-fancygrid ul.fg-control-bar li {
156
+ list-style: none;
157
+ display: inline;
158
+ margin: 0px 2px 0px 2px;
159
+ padding: 0;
160
+ }
161
+ /* line 179, ../../../app/stylesheets/fancygrid.scss */
162
+ .fg-fancygrid ul.fg-control-bar li select {
163
+ padding: 2px;
164
+ width: 60px;
165
+ }
166
+ /* line 183, ../../../app/stylesheets/fancygrid.scss */
167
+ .fg-fancygrid ul.fg-control-bar li input {
168
+ padding: 0px;
169
+ width: 40px !important;
170
+ }
171
+ /* line 189, ../../../app/stylesheets/fancygrid.scss */
172
+ .fg-fancygrid ul.fg-control-bar li.separator {
173
+ border-left: 1px solid #cccccc;
174
+ border-right: 1px solid white;
175
+ height: 50px;
176
+ margin: 1px 8px;
177
+ }
178
+ /* line 197, ../../../app/stylesheets/fancygrid.scss */
179
+ .fg-fancygrid img.fg-button {
180
+ cursor: pointer;
181
+ vertical-align: bottom;
182
+ padding-bottom: 3px;
183
+ }
184
+ /* line 202, ../../../app/stylesheets/fancygrid.scss */
185
+ .fg-fancygrid img.fg-button.fg-first {
186
+ background: url("/images/fancygrid/first.png") no-repeat;
187
+ }
188
+ /* line 206, ../../../app/stylesheets/fancygrid.scss */
189
+ .fg-fancygrid img.fg-button.fg-last {
190
+ background: url("/images/fancygrid/last.png") no-repeat;
191
+ }
192
+ /* line 210, ../../../app/stylesheets/fancygrid.scss */
193
+ .fg-fancygrid img.fg-button.fg-next {
194
+ background: url("/images/fancygrid/next.png") no-repeat;
195
+ }
196
+ /* line 214, ../../../app/stylesheets/fancygrid.scss */
197
+ .fg-fancygrid img.fg-button.fg-previous {
198
+ background: url("/images/fancygrid/prev.png") no-repeat;
199
+ }
200
+ /* line 218, ../../../app/stylesheets/fancygrid.scss */
201
+ .fg-fancygrid img.fg-button.fg-reload {
202
+ background: url("/images/fancygrid/reload.png") no-repeat;
203
+ }
204
+ /* line 222, ../../../app/stylesheets/fancygrid.scss */
205
+ .fg-fancygrid img.fg-button.fg-clear {
206
+ background: url("/images/fancygrid/clear.png") no-repeat;
207
+ }
208
+ /* line 226, ../../../app/stylesheets/fancygrid.scss */
209
+ .fg-fancygrid img.fg-button.fg-magnify {
210
+ background: url("/images/fancygrid/magnifier.png") no-repeat;
211
+ }
212
+ /* line 230, ../../../app/stylesheets/fancygrid.scss */
213
+ .fg-fancygrid img.fg-button.fg-sort {
214
+ background: url("/images/fancygrid/order.png") no-repeat;
215
+ }
216
+ /* line 234, ../../../app/stylesheets/fancygrid.scss */
217
+ .fg-fancygrid img.fg-button.loading {
218
+ background: url("/images/fancygrid/loading.gif") no-repeat;
219
+ }
220
+ /* line 238, ../../../app/stylesheets/fancygrid.scss */
221
+ .fg-fancygrid img.fg-button.new {
222
+ background: url("/images/fancygrid/add.png") no-repeat;
223
+ }
224
+ /* line 242, ../../../app/stylesheets/fancygrid.scss */
225
+ .fg-fancygrid img.fg-button.fg-search-add {
226
+ background: url("/images/fancygrid/add.png") no-repeat;
227
+ }
228
+ /* line 246, ../../../app/stylesheets/fancygrid.scss */
229
+ .fg-fancygrid img.fg-button.fg-search-remove {
230
+ background: url("/images/fancygrid/remove.png") no-repeat;
231
+ }
232
+ /* line 250, ../../../app/stylesheets/fancygrid.scss */
233
+ .fg-fancygrid img.fg-button.fg-search-submit {
234
+ background: url("/images/fancygrid/submit.png") no-repeat;
235
+ }
236
+ /* line 256, ../../../app/stylesheets/fancygrid.scss */
237
+ .fg-fancygrid .fg-sortable-visible {
238
+ float: left;
239
+ }
240
+ /* line 259, ../../../app/stylesheets/fancygrid.scss */
241
+ .fg-fancygrid .fg-sortable-hidden {
242
+ float: right;
243
+ }
244
+ /* line 262, ../../../app/stylesheets/fancygrid.scss */
245
+ .fg-fancygrid .fg-sortable {
246
+ list-style-type: none;
247
+ margin: 0;
248
+ padding: 5px;
249
+ width: 48%;
250
+ display: inline;
251
+ background: none repeat scroll 0 0 #f8f8f8;
252
+ }
253
+ /* line 270, ../../../app/stylesheets/fancygrid.scss */
254
+ .fg-fancygrid .fg-sortable li {
255
+ margin: 3px;
256
+ padding: 3px;
257
+ padding-left: 20px;
258
+ font-size: 14px;
259
+ height: 18px;
260
+ cursor: move;
261
+ }
262
+ /* line 277, ../../../app/stylesheets/fancygrid.scss */
263
+ .fg-fancygrid .fg-sortable li span {
264
+ position: absolute;
265
+ margin-left: -17px;
266
+ }
267
+ /* line 281, ../../../app/stylesheets/fancygrid.scss */
268
+ .fg-fancygrid .fg-sortable li h4 {
269
+ margin: 0px;
270
+ padding: 0px;
271
+ }
272
+ /* line 287, ../../../app/stylesheets/fancygrid.scss */
273
+ .fg-fancygrid .fg-sortable li.fg-not-sortable {
274
+ cursor: default;
275
+ }
276
+ /* line 293, ../../../app/stylesheets/fancygrid.scss */
277
+ .fg-fancygrid .fg-sort-content {
278
+ margin: 5%;
279
+ position: fixed;
280
+ top: 0px;
281
+ left: 0px;
282
+ width: 90%;
283
+ height: 90%;
284
+ }
285
+ /* line 301, ../../../app/stylesheets/fancygrid.scss */
286
+ .fg-fancygrid .ui-state-highlight {
287
+ margin-bottom: 10px;
288
+ padding: 10px;
289
+ }
@@ -0,0 +1,302 @@
1
+ $fg_background_system_focus : none repeat scroll 0 0 #fffae0;
2
+ $fg_background_system : none repeat scroll 0 0 #f8f8f8;
3
+ $fg_background_system_odd : none repeat scroll 0 0 #e8e8e8;
4
+ $fg_background_system_hover : none repeat scroll 0 0 #dedede;
5
+
6
+ $fg_background_control : transparent;
7
+ $fg_background_control_hover : transparent;
8
+
9
+ $fg_background_round : transparent;
10
+ $fg_border : 1px solid #cccccc;
11
+ $fg_border_separator1 : 1px solid #cccccc;
12
+ $fg_border_separator2 : 1px solid #ffffff;
13
+
14
+ .fg-fancygrid {
15
+
16
+ .fg-tablewrapper {
17
+ clear : left;
18
+ overflow : auto;
19
+ margin : 0px;
20
+ border : $fg_border;
21
+
22
+ table {
23
+ width : 100%;
24
+ border-spacing : 0px;
25
+ font-size : 90%;
26
+
27
+ tr {
28
+ th {
29
+ text-align : left;
30
+ font-weight : bold;
31
+ padding : 0px;
32
+ border-right: $fg_border;
33
+ background : url('/images/fancygrid/th_bg.png');
34
+ white-space : nowrap;
35
+ .fg-head-wrapper{
36
+ padding : 5px 10px 5px 10px;
37
+ }
38
+ }
39
+ th.fg-orderable{
40
+ .fg-order-tag {
41
+ display: block;
42
+ cursor : pointer;
43
+ //background: url('/images/fancygrid/dots.png') no-repeat scroll 50% 0% transparent;
44
+ }
45
+ }
46
+ th[order='DESC'] {
47
+ .fg-order-tag {
48
+ background: url('/images/fancygrid/dn.png') no-repeat scroll 50% 0% transparent;
49
+ }
50
+ }
51
+ th[order='DESC']:hover {
52
+ .fg-order-tag{
53
+ background: url('/images/fancygrid/ddn.png') no-repeat scroll 50% 0% transparent;
54
+ }
55
+ }
56
+ th[order='ASC'] {
57
+ .fg-order-tag{
58
+ background: url('/images/fancygrid/up.png') no-repeat scroll 50% 0% transparent;
59
+ }
60
+ }
61
+ th[order='ASC']:hover {
62
+ .fg-order-tag{
63
+ background: url('/images/fancygrid/uup.png') no-repeat scroll 50% 0% transparent;
64
+ }
65
+ }
66
+ th:last-child, td:last-child {
67
+ border-right: none;
68
+ }
69
+
70
+ td {
71
+ padding : 4px 10px 4px 10px;
72
+ border-right: $fg_border;
73
+ background : $fg_background_system;
74
+ img{
75
+ vertical-align: bottom;
76
+ }
77
+ }
78
+
79
+ &:nth-child(odd) {
80
+ td{
81
+ background: $fg_background_system_odd;
82
+ }
83
+ }
84
+
85
+ &:hover{
86
+ td{
87
+ background: $fg_background_system_hover;
88
+ }
89
+ }
90
+ }
91
+
92
+
93
+ tr.fg-search {
94
+ td {
95
+ padding : 4px;
96
+ background: $fg_background_system;
97
+
98
+ input {
99
+ display : inline;
100
+ width : 99%;
101
+ height : 25px;
102
+ margin : 0px;
103
+ padding : 0px;
104
+ border : $fg_border;
105
+ }
106
+ input:focus{
107
+ background: $fg_background_system_focus;
108
+ }
109
+
110
+ select {
111
+ width : 100%;
112
+ display : inline;
113
+ margin : 0px;
114
+ padding : 2px;
115
+ }
116
+ }
117
+ &:hover{
118
+ td {
119
+ background: $fg_background_system;
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }
125
+
126
+ fieldset.fg-search{
127
+ display: inline;
128
+ .fg-search-controls{
129
+ margin: 5px;
130
+ margin-bottom: 15px;
131
+ input[type='checkbox'] {
132
+ width: 16px;
133
+ height: 16px;
134
+ }
135
+ }
136
+
137
+ ul.fg-search-criteria {
138
+ margin: 5px;
139
+ padding: 0px;
140
+
141
+ li.fg-search-criterion{
142
+ margin: 0px 0px 3px 0px;
143
+ padding: 0px;
144
+ list-style: none;
145
+ select{
146
+ width: 80px;
147
+ padding: 2px;
148
+ }
149
+ input[type='text']{
150
+ width: 100px;
151
+ padding: 2px;
152
+ }
153
+ }
154
+ }
155
+ }
156
+
157
+ ul.fg-control-bar.top{
158
+ background: $fg_background_round;
159
+ }
160
+ ul.fg-control-bar.bottom{
161
+ background: $fg_background_round;
162
+ }
163
+ ul.fg-control-bar {
164
+ clear : both;
165
+ display : block;
166
+ text-align : center;
167
+ margin : 0px;
168
+ padding : 5px;
169
+
170
+ li {
171
+ list-style : none;
172
+ display : inline;
173
+ margin : 0px 2px 0px 2px;
174
+ padding : 0;
175
+ select {
176
+ padding: 2px;
177
+ width : 60px;
178
+ }
179
+ input{
180
+ padding: 0px;
181
+ width: 40px !important;
182
+ }
183
+ }
184
+
185
+ li.separator{
186
+ border-left : $fg_border_separator1;
187
+ border-right : $fg_border_separator2;
188
+ height : 50px;
189
+ margin : 1px 8px;
190
+ }
191
+ }
192
+
193
+ img.fg-button {
194
+ cursor: pointer;
195
+ vertical-align: bottom;
196
+ padding-bottom: 3px;
197
+
198
+ &.fg-first{
199
+ background: url('/images/fancygrid/first.png') no-repeat;
200
+ }
201
+
202
+ &.fg-last{
203
+ background: url('/images/fancygrid/last.png') no-repeat;
204
+ }
205
+
206
+ &.fg-next{
207
+ background: url('/images/fancygrid/next.png') no-repeat;
208
+ }
209
+
210
+ &.fg-previous{
211
+ background: url('/images/fancygrid/prev.png') no-repeat;
212
+ }
213
+
214
+ &.fg-reload{
215
+ background: url('/images/fancygrid/reload.png') no-repeat;
216
+ }
217
+
218
+ &.fg-clear{
219
+ background: url('/images/fancygrid/clear.png') no-repeat;
220
+ }
221
+
222
+ &.fg-magnify{
223
+ background: url('/images/fancygrid/magnifier.png') no-repeat;
224
+ }
225
+
226
+ &.fg-sort{
227
+ background: url('/images/fancygrid/order.png') no-repeat;
228
+ }
229
+
230
+ &.loading{
231
+ background: url('/images/fancygrid/loading.gif') no-repeat;
232
+ }
233
+
234
+ &.new{
235
+ background: url('/images/fancygrid/add.png') no-repeat;
236
+ }
237
+
238
+ &.fg-search-add{
239
+ background: url('/images/fancygrid/add.png') no-repeat;
240
+ }
241
+
242
+ &.fg-search-remove{
243
+ background: url('/images/fancygrid/remove.png') no-repeat;
244
+ }
245
+
246
+ &.fg-search-submit{
247
+ background: url('/images/fancygrid/submit.png') no-repeat;
248
+ }
249
+ }
250
+
251
+
252
+ .fg-sortable-visible{
253
+ float: left;
254
+ }
255
+ .fg-sortable-hidden{
256
+ float: right;
257
+ }
258
+ .fg-sortable {
259
+ list-style-type : none;
260
+ margin : 0;
261
+ padding : 5px;
262
+ width : 48%;
263
+ display : inline;
264
+ background : $fg_background_system;
265
+
266
+ li {
267
+ margin : 3px;
268
+ padding : 3px;
269
+ padding-left : 20px;
270
+ font-size : 14px;
271
+ height : 18px;
272
+
273
+ span {
274
+ position: absolute;
275
+ margin-left: -17px;
276
+ }
277
+ h4 {
278
+ margin: 0px;
279
+ padding: 0px;
280
+ }
281
+
282
+ cursor : move;
283
+ &.fg-not-sortable{
284
+ cursor : default;
285
+ }
286
+ }
287
+ }
288
+
289
+ .fg-sort-content{
290
+ margin : 5%;
291
+ position : fixed;
292
+ top : 0px;
293
+ left : 0px;
294
+ width : 90%;
295
+ height : 90%;
296
+ }
297
+
298
+ .ui-state-highlight{
299
+ margin-bottom: 10px;
300
+ padding: 10px;
301
+ }
302
+ }