Merge branch 'nccu_0509' of https://github.com/Rulingcom/orbit into nccu_0509
This commit is contained in:
		
						commit
						1d9fc7eb75
					
				|  | @ -62,14 +62,16 @@ function myFileBrowser(field_name, url, type, win) { | |||
|     tinyMCE.activeEditor.windowManager.open({ | ||||
|         file : cmsURL, | ||||
|         title : 'File Browser', | ||||
|         width : 850,  // Your dimensions may differ - toy around with them! | ||||
|         height : 455, | ||||
|         width : 530,  // Your dimensions may differ - toy around with them! | ||||
|         height : 350, | ||||
|         resizable : "no", | ||||
|         inline : "no",  // This parameter only has an effect if you use the inlinepopups plugin! | ||||
|         close_previous : "no" | ||||
|     }, { | ||||
|         window : win, | ||||
|         input : field_name, | ||||
|         alt : "alt", | ||||
|         title : "title" | ||||
|     }); | ||||
|     return false; | ||||
|   } | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| /*message*/ | ||||
| 
 | ||||
| .error{ | ||||
|   color:red; | ||||
|   color: #B94A48; | ||||
|   } | ||||
| 	 | ||||
| .notice, .message{ | ||||
|  |  | |||
|  | @ -30,7 +30,7 @@ class Admin::AssetsController < OrbitBackendController | |||
|    | ||||
|   def create   | ||||
|     @asset = Asset.new(params[:asset]) | ||||
|     @asset.filename = @asset.i18n_variable[I18n.locale] rescue nil | ||||
|     @asset.filename = @asset.title[I18n.locale] rescue nil | ||||
|     if @asset.filename && @asset.save | ||||
|       respond_to do |format| | ||||
|         format.js { | ||||
|  |  | |||
|  | @ -0,0 +1,11 @@ | |||
| module Admin::AssetHelper | ||||
| 
 | ||||
|   def show_all_fields(asset, field) | ||||
|     a = [] | ||||
|     @site_valid_locales.each do |locale| | ||||
|       a << asset.send(field)[locale] rescue nil | ||||
|     end  | ||||
|     a.join(' - ') | ||||
|   end | ||||
| 
 | ||||
| end | ||||
|  | @ -3,21 +3,43 @@ class Asset | |||
|   include Mongoid::Document | ||||
|   include Mongoid::Timestamps | ||||
| 
 | ||||
|   mount_uploader :data, AssetUploader | ||||
|   mount_uploader :data, FileAssetUploader | ||||
| 
 | ||||
|   field :filename | ||||
|   field :description | ||||
| 
 | ||||
|   has_one :title, :class_name => "I18nVariable", :as => :language_value, :autosave => true, :dependent => :destroy | ||||
|   has_one :description, :class_name => "I18nVariable", :as => :language_value, :autosave => true, :dependent => :destroy | ||||
|    | ||||
|   has_one :i18n_variable, :as => :language_value, :autosave => true, :dependent => :destroy | ||||
|    | ||||
|   validates_presence_of :filename, :data | ||||
|   validates_presence_of :title, :data, :description | ||||
| 
 | ||||
|   belongs_to :asset_category | ||||
|   belongs_to :assetable, polymorphic: true | ||||
|   has_and_belongs_to_many :tags, :class_name => "AssetTag" | ||||
| 
 | ||||
|   before_save :set_key | ||||
| 
 | ||||
|   def title | ||||
|     @title ||= I18nVariable.first(:conditions => {:key => 'title', :language_value_id => self.id, :language_value_type => self.class}) rescue nil | ||||
|   end | ||||
| 
 | ||||
|   def description | ||||
|     @description ||= I18nVariable.first(:conditions => {:key => 'description', :language_value_id => self.id, :language_value_type => self.class}) rescue nil | ||||
|   end | ||||
| 
 | ||||
|   def sorted_tags | ||||
|     tags.order_by(I18n.locale, :asc) | ||||
|   end | ||||
| 
 | ||||
|   protected | ||||
|    | ||||
|   def set_key | ||||
|     if title.new_record? | ||||
|       title.key = 'title' | ||||
|     end | ||||
|     if description.new_record? | ||||
|       description.key = 'description' | ||||
|     end | ||||
|   end | ||||
|    | ||||
| end | ||||
|  |  | |||
|  | @ -48,8 +48,8 @@ class AssetUploader < CarrierWave::Uploader::Base | |||
|   # end | ||||
| 
 | ||||
|   # Override the filename of the uploaded files: | ||||
|   def filename | ||||
|     model.filename | ||||
|   end | ||||
|   # def filename | ||||
|   #   model.filename | ||||
|   # end | ||||
| 
 | ||||
| end | ||||
|  |  | |||
|  | @ -0,0 +1,55 @@ | |||
| # encoding: utf-8 | ||||
| 
 | ||||
| class FileAssetUploader < CarrierWave::Uploader::Base | ||||
|   require 'mime/types' | ||||
|    | ||||
|   process :set_content_type | ||||
| 
 | ||||
|   def set_content_type(*args) | ||||
|     content_type = file.content_type == ('binary/octet-stream' || 'application/octet-stream') || file.content_type.blank? ? MIME::Types.type_for(original_filename).first.to_s : file.content_type | ||||
|     self.file.instance_variable_set(:@content_type, content_type) | ||||
|   end | ||||
| 
 | ||||
|   # Include RMagick or ImageScience support: | ||||
|   # include CarrierWave::RMagick | ||||
|   # include CarrierWave::ImageScience | ||||
| 
 | ||||
|   # Choose what kind of storage to use for this uploader: | ||||
|   # storage :file | ||||
|   # storage :s3 | ||||
| 
 | ||||
|   # Override the directory where uploaded files will be stored. | ||||
|   # This is a sensible default for uploaders that are meant to be mounted: | ||||
|   def store_dir | ||||
|     "assets/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" | ||||
|   end | ||||
| 
 | ||||
|   # Provide a default URL as a default if there hasn't been a file uploaded: | ||||
|   # def default_url | ||||
|   #   "/images/fallback/" + [version_name, "default.png"].compact.join('_') | ||||
|   # end | ||||
| 
 | ||||
|   # Process files as they are uploaded: | ||||
|   # process :scale => [200, 300] | ||||
|   # | ||||
|   # def scale(width, height) | ||||
|   #   # do something | ||||
|   # end | ||||
| 
 | ||||
|   # Create different versions of your uploaded files: | ||||
|   # version :thumb do | ||||
|   #   process :scale => [50, 50] | ||||
|   # end | ||||
| 
 | ||||
|   # Add a white list of extensions which are allowed to be uploaded. | ||||
|   # For images you might use something like this: | ||||
|   # def extension_white_list | ||||
|   #   %w(jpg jpeg gif png) | ||||
|   # end | ||||
| 
 | ||||
|   # Override the filename of the uploaded files: | ||||
|   # def filename | ||||
|   #   model.filename.force_encoding("UTF-8") | ||||
|   # end | ||||
| 
 | ||||
| end | ||||
|  | @ -1,6 +1,6 @@ | |||
| <tr id="asset_<%= asset.id %>" class="with_action"> | ||||
| 	<td><%= check_box_tag 'to_delete[]', asset.id, false, :class => "checkbox_in_list" %></td> | ||||
| 	<td><%= asset.i18n_variable[I18n.locale] rescue nil %></td> | ||||
| 	<td><%= asset.title.i18n_variable[I18n.locale] rescue nil %></td> | ||||
| 	<td> | ||||
| 		<i class="icons-picture img-peview" rel="popover" data-content="<img src='<%= asset.data.url %>' />" data-original-title="<%= asset.data.filename %>"></i> | ||||
| 		<div class="quick-edit"> | ||||
|  | @ -12,7 +12,7 @@ | |||
| 	</td> | ||||
| 	<td><%= asset.data.file.content_type %></td> | ||||
| 	<td><%= number_to_human_size(asset.data.file.file_length) %></td> | ||||
| 	<td><%= asset.category.i18n_variable[I18n.locale] rescue nil %></td> | ||||
| 	<td><%= asset.description.i18n_variable[I18n.locale] rescue nil %></td> | ||||
| 	<td> | ||||
| 		<div class="label-group"> | ||||
| 			<div class="label-td"> | ||||
|  |  | |||
|  | @ -2,5 +2,5 @@ | |||
| 													['description', 'description', 'span1-2', 'admin.data'], | ||||
| 													['intro', 'intro', 'span1-2', 'admin.file_type'], | ||||
| 													['intro', 'intro', 'span1-2', 'admin.file_length'], | ||||
| 													['intro', 'intro', 'span1-2', 'admin.category'], | ||||
| 													['intro', 'intro', 'span1-2', 'admin.description'], | ||||
| 													['intro', 'intro', 'span1-2', 'admin.tags']).html_safe %> | ||||
|  |  | |||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							|  | @ -9,39 +9,41 @@ | |||
|     </div> | ||||
|     <div class="modal-body form-horizontal"> | ||||
|         <div class="control-group"> | ||||
|             <label for="title" class="control-label"><%= t 'admin.title' %></label> | ||||
|             <label for="title" class="control-label error"><%= t 'admin.title' %></label> | ||||
|             <div class="controls"> | ||||
|                 <%= f.fields_for :i18n_variable, (@asset.new_record? ? @asset.build_i18n_variable : @asset.i18n_variable) do |f| %> | ||||
|                   <% @site_valid_locales.each do |locale| %> | ||||
|                     <%= content_tag :label do -%> | ||||
|                         <div> | ||||
|                             <%= I18nVariable.from_locale(locale) %> | ||||
|                             <%= f.text_field locale, :class => "input-large" %> | ||||
|                         </div> | ||||
|                     <% end %> | ||||
|                   <% end %> | ||||
|                 <%= f.fields_for :title, (@asset.new_record? ? @asset.build_title : @asset.title) do |f| %> | ||||
|                     <div> | ||||
|                     <% @site_valid_locales.each do |locale| %> | ||||
|                         <%= content_tag :label do -%> | ||||
|                             <div> | ||||
|                                 <%= I18nVariable.from_locale(locale) %> | ||||
|                                 <%= f.text_field locale, :class => "input-large" %> | ||||
|                             </div> | ||||
|                         <% end %> | ||||
|                       <% end %> | ||||
|                     </div> | ||||
|                 <% end %> | ||||
|             </div> | ||||
|         </div> | ||||
|         <div class="control-group"> | ||||
|             <label class="control-label"><%= f.label :category, t('admin.category') %></label> | ||||
|             <label for="description" class="control-label error"><%= t 'admin.description' %></label> | ||||
|             <div class="controls"> | ||||
|                 <%= f.select :asset_category_id, @asset_categories.collect{|t| [ t.i18n_variable[I18n.locale], t.id ]}, {}, :class => "input-large" %> | ||||
|             </div> | ||||
|         </div> | ||||
|         <div class="control-group"> | ||||
|             <label class="control-label"><%= t 'admin.tags' %></label> | ||||
|             <div class="controls"> | ||||
|                 <% @tags.each do |tag| %> | ||||
|                     <%= content_tag :label, :class => "checkbox inline" do -%> | ||||
|                         <%= check_box_tag 'asset[tag_ids][]', tag.id, @asset.tag_ids.include?(tag.id) %> | ||||
|                         <%= tag[I18n.locale] %> | ||||
|                     <% end %> | ||||
|                 <%= f.fields_for :description, (@asset.new_record? ? @asset.build_description : @asset.description) do |f| %> | ||||
|                     <div> | ||||
|                     <% @site_valid_locales.each do |locale| %> | ||||
|                         <%= content_tag :label do -%> | ||||
|                             <div> | ||||
|                                 <%= I18nVariable.from_locale(locale) %> | ||||
|                                 <%= f.text_field locale, :class => "input-large" %> | ||||
|                             </div> | ||||
|                         <% end %> | ||||
|                       <% end %> | ||||
|                     </div> | ||||
|                 <% end %> | ||||
|             </div> | ||||
|         </div> | ||||
|         <div class="control-group"> | ||||
|             <label class="control-label"><%= f.label :data, t('admin.data') %></label> | ||||
|             <%= f.label :data, t('admin.data'), :class => "control-label" %> | ||||
|             <div class="controls"> | ||||
|                 <%= f.file_field :data, :class => 'upload' %> | ||||
|             </div> | ||||
|  |  | |||
|  | @ -71,11 +71,11 @@ | |||
| 	<% end -%> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= content_tag :li, :class => active_for_controllers('assets', '/admin/asset_tags', 'asset_categories') do -%> | ||||
| 	<%= link_to content_tag(:i, nil, :class => 'icons-link') + t('admin.asset'), admin_assets_path %> | ||||
| 	<%= content_tag :ul, :class => ("nav nav-list " + visible_for_controllers('assets', '/admin/asset_tags', 'asset_categories')) do -%> | ||||
| 		<%= content_tag :li, link_to(t('admin.all_assets'), admin_assets_path), :class => active_for_action('assets', 'index') %> | ||||
| 		<%= content_tag :li, link_to(t('admin.categories'), admin_asset_categories_path), :class => active_for_action('asset_categories', 'index') %> | ||||
| 		<%= content_tag :li, link_to(t('admin.tags'), admin_asset_tags_path), :class => active_for_action('/admin/asset_tags', 'index') %> | ||||
| 	<% end -%> | ||||
| <% end -%> | ||||
| <%#= content_tag :li, :class => active_for_controllers('assets', '/admin/asset_tags', 'asset_categories') do -%> | ||||
| 	<%#= link_to content_tag(:i, nil, :class => 'icons-link') + t('admin.asset'), admin_assets_path %> | ||||
| 	<%#= content_tag :ul, :class => ("nav nav-list " + visible_for_controllers('assets', '/admin/asset_tags', 'asset_categories')) do -%> | ||||
| 		<%#= content_tag :li, link_to(t('admin.all_assets'), admin_assets_path), :class => active_for_action('assets', 'index') %> | ||||
| 		<%#= content_tag :li, link_to(t('admin.categories'), admin_asset_categories_path), :class => active_for_action('asset_categories', 'index') %> | ||||
| 		<%#= content_tag :li, link_to(t('admin.tags'), admin_asset_tags_path), :class => active_for_action('/admin/asset_tags', 'index') %> | ||||
| 	<%# end -%> | ||||
| <%# end -%> | ||||
|  |  | |||
|  | @ -13,8 +13,8 @@ class Bulletin | |||
|   has_one :text, :class_name => "I18nVariable", :as => :language_value, :autosave => true, :dependent => :destroy | ||||
|   has_and_belongs_to_many :tags, :class_name => "AnnouncementTag" | ||||
| 
 | ||||
|   field :postdate , :type => Date | ||||
|   field :deadline , :type => Date | ||||
|   field :postdate , :type => DateTime | ||||
|   field :deadline , :type => DateTime | ||||
|   # field :url | ||||
|   field :create_user_id | ||||
|   field :update_user_id, :class_name => "User" | ||||
|  |  | |||
|  | @ -13,8 +13,8 @@ class NewsBulletin | |||
|   has_one :text, :class_name => "I18nVariable", :as => :language_value, :autosave => true, :dependent => :destroy | ||||
|   has_and_belongs_to_many :tags, :class_name => "NewsTag" | ||||
| 
 | ||||
|   field :postdate , :type => Date | ||||
|   field :deadline , :type => Date | ||||
|   field :postdate , :type => DateTime | ||||
|   field :deadline , :type => DateTime | ||||
|   # field :url | ||||
|   field :create_user_id | ||||
|   field :update_user_id, :class_name => "User" | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue