file manger preview and pagination is done.
This commit is contained in:
parent
800f108be3
commit
a02cd97880
|
@ -33,14 +33,47 @@ $(document).ready(function(){
|
|||
var insertBtn = $("#insert_btn"),
|
||||
deleteBtn = $("#delete_btn"),
|
||||
url = null;
|
||||
|
||||
var showPreview = function(elem){
|
||||
var type = $("#ext_" + elem.val()).val(),
|
||||
imgexp = new RegExp(/(\.|\/)(gif|jpe?g|png)$/i),
|
||||
otherexp = new RegExp(/(\.|\/)(pdf|doc|docx|ppt|pptx|xls|xlsx)$/i)
|
||||
img = $("<img />"),
|
||||
preview = $( ".preview-area" );
|
||||
preview.text("Preview is loading...");
|
||||
if( imgexp.test(type) ){
|
||||
var url = $("#url_" + elem.val()).val();
|
||||
img.attr("src",url).load(function(){
|
||||
var ratio = this.width / this.height,
|
||||
targetWidth = targetHeight = 200;
|
||||
if( ratio < 1 ){
|
||||
targetWidth = targetHeight * ratio;
|
||||
}else{
|
||||
targetHeight = targetWidth / ratio;
|
||||
}
|
||||
img.height(targetHeight).width(targetWidth);
|
||||
preview.html(img);
|
||||
})
|
||||
}else if( otherexp.test(type) ) {
|
||||
var t = type.replace(".",""),
|
||||
url = "/assets/ft-icons/" + t + "/" + t + "-128_32.png";
|
||||
img.attr('src', url).load(function(){
|
||||
preview.html(img);
|
||||
});
|
||||
}else{
|
||||
preview.html("Preview not available.");
|
||||
}
|
||||
}
|
||||
|
||||
$("#asset_sort_list").on(clickEvent,"input[type=checkbox]",function(){
|
||||
if($("#asset_sort_list input[type=checkbox]:checked").length == 1){
|
||||
url = window.location.protocol + "//" + window.location.host + $("#url_" + $("input[type=checkbox]:checked").val()).val();
|
||||
insertBtn.show();
|
||||
showPreview($("input[type=checkbox]:checked"))
|
||||
}else{
|
||||
insertBtn.hide();
|
||||
url = null;
|
||||
$( ".preview-area" ).empty();
|
||||
}
|
||||
if($("#asset_sort_list input[type=checkbox]:checked").length)
|
||||
deleteBtn.show();
|
||||
|
|
|
@ -26,8 +26,8 @@ CKEDITOR.editorConfig = function( config ) {
|
|||
// config.filebrowserImageBrowseUrl = '/browser/browse.php?type=Images';
|
||||
// config.filebrowserUploadUrl = '/uploader/upload.php';
|
||||
|
||||
config.filebrowserBrowseUrl = "<%= Rails.application.routes.url_helpers.admin_assets_path %>?module_app_id=<%= ModuleApp.first(conditions: {title: 'Asset'}).id.to_s %>";
|
||||
config.filebrowserImageBrowseUrl = "<%= Rails.application.routes.url_helpers.admin_assets_path %>?type=images&module_app_id=<%= ModuleApp.first(conditions: {title: 'Asset'}).id.to_s %>";
|
||||
config.filebrowserBrowseUrl = "<%= Rails.application.routes.url_helpers.admin_assets_path(:module_app_id=>ModuleApp.where(:key=>'asset').first.id) %>";
|
||||
config.filebrowserImageBrowseUrl = "<%= Rails.application.routes.url_helpers.admin_assets_path(:type=>'image',:module_app_id=>ModuleApp.where(:key=>'asset').first.id) %>";
|
||||
// config.filebrowserUploadUrl = "<%= Rails.application.routes.url_helpers.file_upload_admin_assets_path %>";
|
||||
|
||||
// config.contentsCss = '/orbit_4.0.1/assets/javascripts/lib/ckeditor/plugins/stylesheetparser/samples/assets/sample.css';
|
||||
|
|
|
@ -3,8 +3,8 @@ class Admin::AssetsController < OrbitBackendController
|
|||
before_filter :setup_vars
|
||||
|
||||
def index
|
||||
@assets = (params[:sort] || @filter) ? get_sorted_and_filtered("asset") : Asset.all.desc(:created_at).page(params[:page]).per(10)
|
||||
if params[:type] == "images"
|
||||
@assets = (params[:sort] || @filter) ? get_sorted_and_filtered("asset") : Asset.all.desc(:created_at)
|
||||
if params[:type] == "image"
|
||||
@assets = @assets.where(:content_type => /^image/)
|
||||
end
|
||||
@tag = ModuleTag.new
|
||||
|
@ -12,6 +12,8 @@ class Admin::AssetsController < OrbitBackendController
|
|||
@module_app = ModuleApp.find(params[:module_app_id]) rescue nil
|
||||
raise ModuleAppError, 'Can not find ModuleApp' if @module_app.nil?
|
||||
@module_app_id = @module_app.id rescue nil
|
||||
|
||||
@assets = @assets.page(params[:page]).per(10)
|
||||
|
||||
render :layout => "assets"
|
||||
end
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
<input type="hidden" value="<%= asset.description_translations[locale] rescue nil %>" id="<%= locale %>_desc_<%= asset.id %>" />
|
||||
<input type="hidden" value="<%= asset.title_translations[locale] rescue nil %>" id="<%= locale %>_title_<%= asset.id %>" />
|
||||
<% end %>
|
||||
<input type="hidden" value="<%= File.extname(asset.data.url) %>" id="ext_<%= asset.id %>" />
|
||||
</td>
|
||||
<td><%= asset.title_translations[I18n.locale.to_s] rescue nil %></td>
|
||||
<!-- <td>
|
||||
|
@ -20,7 +21,7 @@
|
|||
<!-- <td><%#= asset.data.file.content_type rescue nil %></td> -->
|
||||
<td><%= number_to_human_size(asset.data.file.file_length) rescue nil %></td>
|
||||
<td><%= asset.description rescue nil %></td>
|
||||
<td>
|
||||
<!-- <td>
|
||||
<div class="label-group">
|
||||
<div class="label-td">
|
||||
<% asset.sorted_tags.each do |tag| %>
|
||||
|
@ -28,7 +29,7 @@
|
|||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</td> -->
|
||||
<td>
|
||||
<a href="<%= edit_admin_asset_path(asset) %>" class="editform">Edit</a>
|
||||
</td>
|
||||
|
|
|
@ -214,11 +214,14 @@
|
|||
<div class="tab-content">
|
||||
<div class="tab-pane fade in active" id="filemanager">
|
||||
<div class="input-area clearfix">
|
||||
<!-- <a href="<%= admin_module_tags_path(:module_app_id => @module_app_id.to_s) %>"> Tag Management </a> -->
|
||||
<div id="panel_r" class="pull-right">
|
||||
preview is here
|
||||
<label>Preview</label>
|
||||
<div class="preview-area">
|
||||
</div>
|
||||
</div>
|
||||
<div id="panel_l" class="tab-pane fade in active pull-left">
|
||||
<lable>Search Box : </label>
|
||||
<input type="text" name="filter" placeholder="Enter Filename" />
|
||||
<table id="asset_sort_list" class="table main-list">
|
||||
<thead>
|
||||
<tr>
|
||||
|
@ -226,7 +229,6 @@
|
|||
<th>Name</th>
|
||||
<th>Size</th>
|
||||
<th>Description</th>
|
||||
<th>Tags</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -235,24 +237,13 @@
|
|||
</tbody>
|
||||
</table>
|
||||
<div class="pagination pagination-centered">
|
||||
<ul>
|
||||
<li><a href="#">«</a></li>
|
||||
<li><a href="#">1</a></li>
|
||||
<li><a href="#">2</a></li>
|
||||
<li><a href="#">3</a></li>
|
||||
<li><a href="#">4</a></li>
|
||||
<li><a href="#">5</a></li>
|
||||
<li><a href="#">»</a></li>
|
||||
</ul>
|
||||
<%= paginate @assets, :params => {:direction => params[:direction], :sort => params[:sort], :type => params[:type]}, :remote => true %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-actions form-fixed pagination-right">
|
||||
<button class="btn btn-primary" id="insert_btn" style="display:none;">Insert</button>
|
||||
<button class="btn btn-primary" id="delete_btn" style="display:none;">Delete</button>
|
||||
<div id="asset_pagination" class="paginationFixed">
|
||||
<%= paginate @assets, :params => {:direction => params[:direction], :sort => params[:sort], :filter => @filter, :new_filter => nil, :sort_options => params[:sort_options]}, :remote => true %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab-pane fade" id="upload">
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
$("#tbody_assets").html("<%= j render :partial => 'asset', :collection => @assets %>");
|
||||
$(".pagination").html("<%= j paginate @assets, :params => {:direction => params[:direction], :sort => params[:sort], :type => params[:type]}, :remote => true %>");
|
||||
$( ".preview-area" ).empty();
|
Loading…
Reference in New Issue