ckeditor 3.6.3 → 3.7.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (106) hide show
  1. data/Gemfile +1 -1
  2. data/README.rdoc +14 -24
  3. data/app/assets/javascripts/ckeditor/application.js +5 -0
  4. data/app/assets/stylesheets/ckeditor/application.css +6 -0
  5. data/app/controllers/ckeditor/{base_controller.rb → application_controller.rb} +1 -2
  6. data/app/controllers/ckeditor/attachment_files_controller.rb +2 -2
  7. data/app/controllers/ckeditor/pictures_controller.rb +2 -2
  8. data/app/views/ckeditor/shared/_asset.html.erb +2 -2
  9. data/app/views/ckeditor/shared/_asset_tmpl.html.erb +1 -1
  10. data/app/views/layouts/{ckeditor.html.erb → ckeditor/application.html.erb} +4 -12
  11. data/config/locales/sv-SE.ckeditor.yml +8 -0
  12. data/config/locales/zh-CN.ckeditor.yml +8 -0
  13. data/config/routes.rb +3 -5
  14. data/lib/ckeditor.rb +2 -16
  15. data/lib/ckeditor/engine.rb +4 -1
  16. data/lib/ckeditor/hooks/formtastic.rb +9 -12
  17. data/lib/ckeditor/orm/active_record.rb +1 -1
  18. data/lib/ckeditor/utils.rb +14 -7
  19. data/lib/ckeditor/version.rb +1 -1
  20. data/lib/generators/ckeditor/install_generator.rb +48 -55
  21. data/lib/generators/ckeditor/templates/{models/active_record → active_record}/carrierwave/ckeditor/asset.rb +0 -0
  22. data/lib/generators/ckeditor/templates/{models/mongoid → active_record}/carrierwave/ckeditor/attachment_file.rb +1 -4
  23. data/lib/generators/ckeditor/templates/{models/active_record → active_record}/carrierwave/ckeditor/picture.rb +0 -0
  24. data/lib/generators/ckeditor/templates/{models/active_record → active_record}/carrierwave/migration.rb +0 -0
  25. data/lib/generators/ckeditor/templates/{models/active_record → active_record}/paperclip/ckeditor/asset.rb +0 -0
  26. data/lib/generators/ckeditor/templates/{models/active_record → active_record}/paperclip/ckeditor/attachment_file.rb +1 -4
  27. data/lib/generators/ckeditor/templates/{models/active_record → active_record}/paperclip/ckeditor/picture.rb +0 -0
  28. data/lib/generators/ckeditor/templates/{models/active_record → active_record}/paperclip/migration.rb +0 -0
  29. data/lib/generators/ckeditor/templates/{models/base → base}/carrierwave/uploaders/ckeditor_attachment_file_uploader.rb +0 -0
  30. data/lib/generators/ckeditor/templates/{models/base → base}/carrierwave/uploaders/ckeditor_picture_uploader.rb +0 -0
  31. data/lib/generators/ckeditor/templates/ckeditor.rb +0 -3
  32. data/lib/generators/ckeditor/templates/{models/mongoid → mongoid}/carrierwave/ckeditor/asset.rb +0 -0
  33. data/lib/generators/ckeditor/templates/{models/active_record → mongoid}/carrierwave/ckeditor/attachment_file.rb +1 -4
  34. data/lib/generators/ckeditor/templates/{models/mongoid → mongoid}/carrierwave/ckeditor/picture.rb +0 -0
  35. data/lib/generators/ckeditor/templates/{models/mongoid → mongoid}/paperclip/ckeditor/asset.rb +0 -0
  36. data/lib/generators/ckeditor/templates/{models/mongoid → mongoid}/paperclip/ckeditor/attachment_file.rb +1 -4
  37. data/lib/generators/ckeditor/templates/{models/mongoid → mongoid}/paperclip/ckeditor/picture.rb +0 -0
  38. data/test/ckeditor_test.rb +0 -14
  39. data/test/controllers/attachment_files_controller_test.rb +2 -0
  40. data/test/controllers/pictures_controller_test.rb +3 -0
  41. data/test/dummy/Rakefile +1 -1
  42. data/test/dummy/app/assets/javascripts/application.js +11 -0
  43. data/test/dummy/app/assets/stylesheets/application.css +7 -0
  44. data/test/dummy/{public → app/assets}/stylesheets/scaffold.css +0 -0
  45. data/test/dummy/app/views/layouts/application.html.erb +3 -3
  46. data/test/dummy/config/application.rb +11 -12
  47. data/test/dummy/config/boot.rb +7 -6
  48. data/test/dummy/config/database.yml +11 -0
  49. data/test/dummy/config/environments/development.rb +7 -3
  50. data/test/dummy/config/environments/production.rb +23 -12
  51. data/test/dummy/config/environments/test.rb +5 -1
  52. data/test/dummy/config/initializers/secret_token.rb +1 -1
  53. data/test/dummy/config/initializers/session_store.rb +1 -1
  54. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  55. data/test/dummy/config/locales/en.yml +1 -1
  56. data/test/dummy/config/routes.rb +2 -0
  57. data/test/dummy/db/test.sqlite3 +0 -0
  58. data/test/dummy/log/test.log +3681 -6331
  59. data/test/generators/install_generator_test.rb +58 -15
  60. data/test/integration/posts_test.rb +5 -5
  61. data/test/models/attachment_file_test.rb +3 -1
  62. data/test/models/picture_test.rb +1 -0
  63. data/test/models/utils_test.rb +19 -0
  64. data/test/support/controller_hooks.rb +27 -0
  65. data/test/support/routes.txt +4 -0
  66. data/test/test_helper.rb +0 -1
  67. data/test/tmp/app/models/ckeditor/attachment_file.rb +1 -4
  68. data/test/tmp/config/initializers/ckeditor.rb +18 -0
  69. data/test/tmp/config/routes.rb +6 -0
  70. metadata +185 -236
  71. data/lib/generators/ckeditor/models_generator.rb +0 -70
  72. data/lib/generators/ckeditor/templates/ckeditor/config.js +0 -65
  73. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/gal_add.jpg +0 -0
  74. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/gal_add.png +0 -0
  75. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/gal_del.png +0 -0
  76. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/gal_more.gif +0 -0
  77. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/preloader.gif +0 -0
  78. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/thumbs/ckfnothumb.gif +0 -0
  79. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/thumbs/mp3.gif +0 -0
  80. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/thumbs/pdf.gif +0 -0
  81. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/thumbs/rar.gif +0 -0
  82. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/thumbs/swf.gif +0 -0
  83. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/images/thumbs/xls.gif +0 -0
  84. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/javascripts/application.js +0 -223
  85. data/lib/generators/ckeditor/templates/ckeditor/filebrowser/stylesheets/uploader.css +0 -115
  86. data/lib/generators/ckeditor/templates/ckeditor/plugins/attachment/dialogs/attachment.js +0 -1
  87. data/lib/generators/ckeditor/templates/ckeditor/plugins/attachment/images/attachment.png +0 -0
  88. data/lib/generators/ckeditor/templates/ckeditor/plugins/attachment/lang/en.js +0 -10
  89. data/lib/generators/ckeditor/templates/ckeditor/plugins/attachment/lang/ru.js +0 -10
  90. data/lib/generators/ckeditor/templates/ckeditor/plugins/attachment/lang/uk.js +0 -10
  91. data/lib/generators/ckeditor/templates/ckeditor/plugins/attachment/plugin.js +0 -1
  92. data/lib/generators/ckeditor/templates/ckeditor/plugins/embed/dialogs/embed.js +0 -1
  93. data/lib/generators/ckeditor/templates/ckeditor/plugins/embed/images/embed.png +0 -0
  94. data/lib/generators/ckeditor/templates/ckeditor/plugins/embed/lang/en.js +0 -9
  95. data/lib/generators/ckeditor/templates/ckeditor/plugins/embed/lang/ru.js +0 -9
  96. data/lib/generators/ckeditor/templates/ckeditor/plugins/embed/lang/uk.js +0 -9
  97. data/lib/generators/ckeditor/templates/ckeditor/plugins/embed/plugin.js +0 -1
  98. data/test/dummy/db/schema.rb +0 -36
  99. data/test/dummy/public/javascripts/application.js +0 -2
  100. data/test/dummy/public/javascripts/controls.js +0 -965
  101. data/test/dummy/public/javascripts/dragdrop.js +0 -974
  102. data/test/dummy/public/javascripts/effects.js +0 -1123
  103. data/test/dummy/public/javascripts/prototype.js +0 -6001
  104. data/test/dummy/public/javascripts/rails.js +0 -191
  105. data/test/generators/models_generator_test.rb +0 -61
  106. data/test/routes_test.rb +0 -47
@@ -1,70 +0,0 @@
1
- require 'rails/generators'
2
- require 'rails/generators/migration'
3
-
4
- module Ckeditor
5
- module Generators
6
- class ModelsGenerator < Rails::Generators::Base
7
- include Rails::Generators::Migration
8
-
9
- desc "Generates migration for Asset (Picture, AttachmentFile) models"
10
-
11
- # ORM configuration
12
- class_option :orm, :type => :string, :default => "active_record",
13
- :desc => "Backend processor for upload support"
14
-
15
- class_option :backend, :type => :string, :default => 'paperclip',
16
- :desc => "Paperclip (by default) or carrierwave"
17
-
18
- def self.source_root
19
- @source_root ||= File.expand_path(File.join(File.dirname(__FILE__), 'templates', 'models/'))
20
- end
21
-
22
- def self.next_migration_number(dirname)
23
- Time.now.strftime("%Y%m%d%H%M%S")
24
- end
25
-
26
- def create_models
27
- [:asset, :picture, :attachment_file].each do |filename|
28
- template "#{generator_dir}/ckeditor/#{filename}.rb",
29
- File.join('app/models', ckeditor_dir, "#{filename}.rb")
30
- end
31
-
32
- if backend == "carrierwave"
33
- template "#{uploaders_dir}/uploaders/ckeditor_attachment_file_uploader.rb",
34
- File.join("app/uploaders", "ckeditor_attachment_file_uploader.rb")
35
-
36
- template "#{uploaders_dir}/uploaders/ckeditor_picture_uploader.rb",
37
- File.join("app/uploaders", "ckeditor_picture_uploader.rb")
38
- end
39
- end
40
-
41
- def create_migration
42
- if ["active_record"].include?(orm)
43
- migration_template "#{generator_dir}/migration.rb", File.join('db/migrate', "create_ckeditor_assets.rb")
44
- end
45
- end
46
-
47
- protected
48
-
49
- def ckeditor_dir
50
- 'ckeditor'
51
- end
52
-
53
- def generator_dir
54
- @generator_dir ||= [orm, backend].join('/')
55
- end
56
-
57
- def uploaders_dir
58
- @uploaders_dir ||= ['base', 'carrierwave'].join('/')
59
- end
60
-
61
- def orm
62
- options[:orm] || "active_record"
63
- end
64
-
65
- def backend
66
- options[:backend] || "paperclip"
67
- end
68
- end
69
- end
70
- end
@@ -1,65 +0,0 @@
1
- /*
2
- Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.html or http://ckeditor.com/license
4
- */
5
-
6
- CKEDITOR.editorConfig = function( config )
7
- {
8
- // Define changes to default configuration here. For example:
9
- // config.language = 'fr';
10
- // config.uiColor = '#AADC6E';
11
-
12
- /* Filebrowser routes */
13
- // The location of an external file browser, that should be launched when "Browse Server" button is pressed.
14
- config.filebrowserBrowseUrl = "/ckeditor/attachment_files";
15
-
16
- // The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Flash dialog.
17
- config.filebrowserFlashBrowseUrl = "/ckeditor/attachment_files";
18
-
19
- // The location of a script that handles file uploads in the Flash dialog.
20
- config.filebrowserFlashUploadUrl = "/ckeditor/attachment_files";
21
-
22
- // The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Link tab of Image dialog.
23
- config.filebrowserImageBrowseLinkUrl = "/ckeditor/pictures";
24
-
25
- // The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Image dialog.
26
- config.filebrowserImageBrowseUrl = "/ckeditor/pictures";
27
-
28
- // The location of a script that handles file uploads in the Image dialog.
29
- config.filebrowserImageUploadUrl = "/ckeditor/pictures";
30
-
31
- // The location of a script that handles file uploads.
32
- config.filebrowserUploadUrl = "/ckeditor/attachment_files";
33
-
34
- // Rails CSRF token
35
- config.filebrowserParams = function(){
36
- var csrf_token = jQuery('meta[name=csrf-token]').attr('content'),
37
- csrf_param = jQuery('meta[name=csrf-param]').attr('content'),
38
- params = new Object();
39
-
40
- if (csrf_param !== undefined && csrf_token !== undefined) {
41
- params[csrf_param] = csrf_token;
42
- }
43
-
44
- return params;
45
- };
46
-
47
- /* Extra plugins */
48
- // works only with en, ru, uk locales
49
- config.extraPlugins = "embed,attachment";
50
-
51
- /* Toolbars */
52
- config.toolbar = 'Easy';
53
-
54
- config.toolbar_Easy =
55
- [
56
- ['Source','-','Preview'],
57
- ['Cut','Copy','Paste','PasteText','PasteFromWord',],
58
- ['Undo','Redo','-','SelectAll','RemoveFormat'],
59
- ['Styles','Format'], ['Subscript', 'Superscript', 'TextColor'], ['Maximize','-','About'], '/',
60
- ['Bold','Italic','Underline','Strike'], ['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
61
- ['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
62
- ['Link','Unlink','Anchor'], ['Image', 'Attachment', 'Flash', 'Embed'],
63
- ['Table','HorizontalRule','Smiley','SpecialChar','PageBreak']
64
- ];
65
- };
@@ -1,223 +0,0 @@
1
- (function($) {
2
- $.QueryString = (function(a) {
3
- if (a == "") return {};
4
- var b = {};
5
- for (var i = 0; i < a.length; ++i)
6
- {
7
- var p=a[i].split('=');
8
- if (p.length != 2) continue;
9
- b[p[0]] = decodeURIComponent(p[1].replace(/\+/g, " "));
10
- }
11
- return b;
12
- })(window.location.search.substr(1).split('&'))
13
- })(jQuery);
14
-
15
- $(document).ready(function(){
16
- $("div.gal-item div.gal-inner-holder")
17
- .live('mouseover', function(e){
18
- $(this).addClass('hover');
19
- })
20
- .live('mouseout', function(e){
21
- $(this).removeClass('hover');
22
- })
23
- .live('click', function(e){
24
- var url = $(this).parents('div.gal-item').data('url');
25
- CKEDITOR.tools.callFunction(CKEditorFuncNum, url);
26
- window.close();
27
- });
28
-
29
- $("div.gal-item a.gal-del").live('ajax:complete', function(xhr, status){
30
- $(this).parents('div.gal-item').remove();
31
- });
32
- });
33
-
34
- // Collection of all instances on page
35
- qq.FileUploader.instances = new Object();
36
-
37
- /**
38
- * Class that creates upload widget with drag-and-drop and file list
39
- * @inherits qq.FileUploaderBasic
40
- */
41
- qq.FileUploaderInput = function(o){
42
- // call parent constructor
43
- qq.FileUploaderBasic.apply(this, arguments);
44
-
45
- // additional options
46
- qq.extend(this._options, {
47
- element: null,
48
- // if set, will be used instead of qq-upload-list in template
49
- listElement: null,
50
-
51
- template_id: '#fileupload_tmpl',
52
-
53
- classes: {
54
- // used to get elements from templates
55
- button: 'fileupload-button',
56
- drop: 'fileupload-drop-area',
57
- dropActive: 'fileupload-drop-area-active',
58
- list: 'fileupload-list',
59
- preview: 'fileupload-preview',
60
-
61
- file: 'fileupload-file',
62
- spinner: 'fileupload-spinner',
63
- size: 'fileupload-size',
64
- cancel: 'fileupload-cancel',
65
-
66
- // added to list item when upload completes
67
- // used in css to hide progress spinner
68
- success: 'fileupload-success',
69
- fail: 'fileupload-fail'
70
- }
71
- });
72
- // overwrite options with user supplied
73
- qq.extend(this._options, o);
74
-
75
- this._element = document.getElementById(this._options.element);
76
- this._listElement = this._options.listElement || this._find(this._element, 'list');
77
-
78
- this._classes = this._options.classes;
79
-
80
- this._button = this._createUploadButton(this._find(this._element, 'button'));
81
- this._path = $('meta[name="ckeditor-path"]').attr('content');
82
-
83
- //this._setupDragDrop();
84
-
85
- qq.FileUploader.instances[this._element.id] = this;
86
- };
87
-
88
- // inherit from Basic Uploader
89
- qq.extend(qq.FileUploaderInput.prototype, qq.FileUploaderBasic.prototype);
90
-
91
- qq.extend(qq.FileUploaderInput.prototype, {
92
- /**
93
- * Gets one of the elements listed in this._options.classes
94
- **/
95
- _find: function(parent, type){
96
- var element = qq.getByClass(parent, this._options.classes[type])[0];
97
- if (!element){
98
- alert(type);
99
- throw new Error('element not found ' + type);
100
- }
101
-
102
- return element;
103
- },
104
- _setupDragDrop: function(){
105
- var self = this,
106
- dropArea = this._find(this._element, 'drop');
107
-
108
- var dz = new qq.UploadDropZone({
109
- element: dropArea,
110
- onEnter: function(e){
111
- qq.addClass(dropArea, self._classes.dropActive);
112
- e.stopPropagation();
113
- },
114
- onLeave: function(e){
115
- e.stopPropagation();
116
- },
117
- onLeaveNotDescendants: function(e){
118
- qq.removeClass(dropArea, self._classes.dropActive);
119
- },
120
- onDrop: function(e){
121
- dropArea.style.display = 'none';
122
- qq.removeClass(dropArea, self._classes.dropActive);
123
- self._uploadFileList(e.dataTransfer.files);
124
- }
125
- });
126
-
127
- dropArea.style.display = 'none';
128
-
129
- qq.attach(document, 'dragenter', function(e){
130
- if (!dz._isValidFileDrag(e)) return;
131
-
132
- dropArea.style.display = 'block';
133
- });
134
- qq.attach(document, 'dragleave', function(e){
135
- if (!dz._isValidFileDrag(e)) return;
136
-
137
- var relatedTarget = document.elementFromPoint(e.clientX, e.clientY);
138
- // only fire when leaving document out
139
- if ( ! relatedTarget || relatedTarget.nodeName == "HTML"){
140
- dropArea.style.display = 'none';
141
- }
142
- });
143
- },
144
- _onSubmit: function(id, fileName){
145
- qq.FileUploaderBasic.prototype._onSubmit.apply(this, arguments);
146
- this._addToList(id, fileName);
147
- },
148
- _onProgress: function(id, fileName, loaded, total){
149
- qq.FileUploaderBasic.prototype._onProgress.apply(this, arguments);
150
-
151
- var item = this._getItemByFileId(id);
152
- var size = this._find(item, 'size');
153
-
154
- var text;
155
- if (loaded != total){
156
- text = Math.round(loaded / total * 100) + '% from ' + this._formatSize(total);
157
- } else {
158
- text = this._formatSize(total);
159
- }
160
-
161
- qq.setText(size, text);
162
- },
163
- _onComplete: function(id, fileName, result){
164
- qq.FileUploaderBasic.prototype._onComplete.apply(this, arguments);
165
-
166
- var item = this._getItemByFileId(id);
167
- var asset = result.asset ? result.asset : result;
168
-
169
- if (asset && asset.id){
170
- qq.addClass(item, this._classes.success);
171
-
172
- asset.size = this._formatSize(asset.size);
173
- asset.controller = (asset.type.toLowerCase() == "ckeditor::picture" ? "pictures" : "attachment_files");
174
-
175
- $(item).replaceWith($(this._options.template_id).tmpl(asset));
176
- } else {
177
- qq.addClass(item, this._classes.fail);
178
- }
179
- },
180
- _addToList: function(id, fileName){
181
- if (this._listElement) {
182
- if (this._options.multiple === false) {
183
- $(this._listElement).empty();
184
- }
185
-
186
- var asset = {
187
- id: 0,
188
- filename: this._formatFileName(fileName),
189
- size: 0,
190
- format_created_at: '',
191
- url_content: "#",
192
- controller: "assets",
193
- url_thumb: this._path + "/ckeditor/filebrowser/images/preloader.gif"
194
- };
195
-
196
- var item = $(this._options.template_id)
197
- .tmpl(asset)
198
- .attr('qqfileid', id)
199
- .prependTo( this._listElement );
200
-
201
- item.find('div.img').addClass('preloader');
202
-
203
- this._bindCancelEvent(item);
204
- }
205
- },
206
- _getItemByFileId: function(id){
207
- return $(this._listElement).find('div[qqfileid=' + id +']').get(0);
208
- },
209
- /**
210
- * delegate click event for cancel link
211
- **/
212
- _bindCancelEvent: function(element){
213
- var self = this,
214
- item = $(element);
215
-
216
- item.find('a.' + this._classes.cancel).bind('click', function(e){
217
- self._handler.cancel( item.attr('qqfileid') );
218
- item.remove();
219
- qq.preventDefault(e);
220
- return false;
221
- });
222
- }
223
- });
@@ -1,115 +0,0 @@
1
- body {
2
- padding: 0;
3
- margin: 0;
4
- font-family: Arial, Helvetica, sans-serif;
5
- }
6
- .gal-holder {
7
- display: block;
8
- overflow: hidden;
9
- padding: 20px;
10
- }
11
- .gal-holder .gal-item {
12
- display: block;
13
- float: left;
14
- width: 150px;
15
- overflow: hidden;
16
- position: relative;
17
- margin: 0 12px 12px 0;
18
- }
19
- .gal-holder .gal-item .gal-del {
20
- display: block;
21
- position: absolute;
22
- right: 0;
23
- top: 0;
24
- }
25
- .gal-holder .gal-item .gal-del:hover {
26
- -moz-opacity: 0.7;
27
- -khtml-opacity: 0.7;
28
- opacity: 0.7;
29
- }
30
- .gal-holder .gal-item .gal-upload-holder input {
31
- height: 162px;
32
- }
33
- .gal-holder .gal-item .gal-upload-holder .add:hover {
34
- text-decoration: underline;
35
- }
36
- .gal-holder .gal-item .gal-inner-holder, .gal-holder .gal-item .gal-upload-holder {
37
- display: block;
38
- margin: 6px 6px 0 0;
39
- overflow: hidden;
40
- padding: 12px;
41
- background: #fff;
42
- border: solid 1px #D3D3D3;
43
- min-height: 138px;
44
- }
45
- .gal-holder .gal-item .gal-inner-holder.hover {
46
- background: #DFF1FF;
47
- border: solid 1px #99CCFF;
48
- }
49
- .gal-holder .gal-item .gal-inner-holder.selected {
50
- background: #B4D9FF;
51
- border: solid 1px #6565FE;
52
- }
53
- .gal-holder .gal-item .gal-upload-holder .add {
54
- display: block;
55
- color: #2e5aff;
56
- /*background: url(/javascripts/ckeditor/filebrowser/images/gal_add.png) no-repeat left center;*/
57
- padding-left: 33px;
58
- line-height: 25px;
59
- text-decoration: none;
60
- margin: 50px 0 0 10px;
61
- font-size: 14px;
62
- }
63
- .gal-holder .gal-item .gal-inner-holder .img {
64
- height: 100px;
65
- overflow: hidden;
66
- cursor:pointer;
67
- }
68
- .gal-holder .gal-item .gal-inner-holder .img.preloader {
69
- padding: 27px 0 0 33px;
70
- height: 73px;
71
- }
72
- .gal-holder .gal-item .gal-inner-holder .img-data {
73
- display: block;
74
- overflow: hidden;
75
- padding-top: 5px;
76
- }
77
- .gal-holder .gal-item .gal-inner-holder .img-data .img-name {
78
- display: block;
79
- color: #333;
80
- padding-bottom: 5px;
81
- font-size: 12px;
82
- overflow: hidden;
83
- width: 500px;
84
- }
85
- .gal-holder .gal-item .gal-inner-holder .img-data .time-size {
86
- display: block;
87
- overflow: hidden;
88
- font-size: 10px;
89
- color: #666;
90
- }
91
- .gal-holder .gal-item .gal-inner-holder .img-data .time-size .time {
92
- display: block;
93
- float: left;
94
- }
95
- .gal-holder .gal-item .gal-inner-holder .img-data .time-size .size {
96
- display: block;
97
- float: right;
98
- }
99
- .gal-more {
100
- display: block;
101
- overflow: hidden;
102
- border-top: dashed 1px #d3d3d3;
103
- padding: 20px 0;
104
- text-align: center;
105
- }
106
- .gal-more a {
107
- color: #2e5aff;
108
- /*background: url(/javascripts/ckeditor/filebrowser/images/gal_more.gif) no-repeat left center;*/
109
- padding-left: 15px;
110
- font-size: 14px;
111
- text-decoration: none;
112
- }
113
- .gal-more a:hover {
114
- text-decoration: underline;
115
- }