fcfinder 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,1698 +1,1698 @@
1
- ;(function($){
2
- $.fn.fcFinder = function(opts) {
3
-
4
- //Ana Seçiciler
5
- var fcfinder = $(this);
6
- var fcfinder_selector = fcfinder.selector;
7
- var $body = $("body");
8
-
9
- //Selector Ayarı
10
- if(fcfinder_selector!="#fcfinder"){
11
- $(this).css({"margin":"0","padding":"0","display": "block","height": "100%","width": "100%"}).append('<div id="fcfinder"></div>');
12
- fcfinder = fcfinder.find("#fcfinder");
13
- fcfinder_selector = fcfinder.selector
14
- }
15
-
16
- // Varsayılan Metinler
17
- var i18n = {
18
- empty_dir : 'Dizin Boş',
19
- empty_file : 'Dosya Boş',
20
- loading : 'Yükleniyor...',
21
- file_size : 'Dosya Boyutu',
22
- file_name : 'Dosya Adı',
23
- file_cdate : 'Dosya Oluşturulma Tarihi',
24
- faild_process : 'İşlem Gerçekleşemedi',
25
- access_not_head : 'Erişim İzni Yok',
26
- access_not_content : 'Erişim İzniniz Yok Lütfen Giriş Yapmayı Deneyiniz Hala Bu Sorunla Karşılaşırsanız Lüftfen Yönetici İle Görüşünüz.',
27
- bottom_file : '{0} Dosya ( {1} )',
28
- load_directory : 'Dizinler Yükleniyor',
29
- read_permission : 'Okuma İzni',
30
- write_permission : 'Yazma İzni',
31
- read_write_permission : 'Yazma ve Okuma İzni',
32
- directory : 'Klasör',
33
-
34
- error :
35
- {
36
- large_file : 'Dosya Boyutu İzin Verilen Dosya Boyutundan Fazla \n İzin Verilen Dosya Boyutu: {0}',
37
- error_type : 'Yüklemeye Çalıştığınız Dosya Türüne İzin Verilmemiş \n İzin Verilen Dosya Türü(leri):\n {0}.',
38
- load_error : 'Bir Hata Meydana Geldi ve Dosya Yüklenemedi Hata Sebebi: "{0}" Olabilir.',
39
- select_file_error : 'Bir Hata Meydana Geldi ve Dosya Açılamadı, Açmaya Çalıştığınız Dosya Sunucuda Olmayabilir.',
40
- error_msg : 'Beklenmedik Bir Hata Meydana Geldi',
41
- download_error : 'Bir Hata Meydana Geldi ve Dosya İndirilemiyor Hata Sebebi: "{0}" Olabilir. \n Dosya Arşive Eklenirken Hata Oluşmuş Olabilir Klasor Adıyla Aynı Arşiv Dosyası Olmadığından Emin Olun',
42
- copy_error : 'Bir Hata Meydana Geldi ve Koyalama İşlemi Gerçekleştirilemedi Hata Sebebi "{0}" Olabilir.',
43
- replace_error : 'Bir Hata Meydana Geldi ve Dosya Değiştirilemedi İşlem İptal Edildi, Hata Sebebi "{0}" Olabilir.',
44
- duplicate_error : 'Bir Hata Meydana Geldi ve Seçtiğiniz Dosyanın Kopyası Oluşturulamadı Hata Sebebi: "{0}" Olabilir.',
45
- rename_error : 'Bir Hata Meydana Geldi ve Dosya Adı Değiştirilemedi Hata Sebebi: "{0}" Olabilir.',
46
- edit_error : 'Bir Hata Meydana Geldi, Açmaya Çalıştığınız Dosyanın Sunucuda Olmaya Bilir.',
47
- delete_error_0 : 'Silmeye Çalıştığınız Dosyaya Erişilemiyor Dosya Olmayabilir.',
48
- delete_error_1 : 'Bir Hata Meydana Geldi ve Dosya Silme İşlemi Gerçekleştirilemedi Hata Sebebi: "{0}" Olabilir.',
49
- new_directory_error_1 : 'Bu İsimde Dosya Var',
50
- new_directory_error_0 : 'Bir Hata Meydana Geldi ve Klasör Oluşturulamadı, Hata Sebebi: "{0}" Olabilir.'
51
- },
52
-
53
- dialog :
54
- {
55
- info_h : 'Bilgiler',
56
- info_size : 'Boyutu:',
57
- info_addres : 'Adresi:',
58
- info_url : 'Link:',
59
- info_cdate : 'Oluşturulma Tarihi:',
60
- info_mdate : 'Son Değişiklik Tarihi:',
61
- info_file_permission : 'Dosya İzinleri:',
62
- preview_h : 'Önizle',
63
- preview_size : 'Boyutu:',
64
- preview_addres : 'Adresi:',
65
- preview_url : 'Link:',
66
- preview_cdate : 'Oluşturulma Tarihi:',
67
- preview_mdate : 'Son Değişiklik Tarihi:',
68
- file_replace_h : 'Dosya Değiştir veya Atla',
69
- file_replace_content : 'Hedefte Zaten "{0}" Adında Bir Dosya Var Üzerine Yazılsınmı?',
70
- cancel : 'İptal Et',
71
- ok : 'Evet',
72
- close : 'Kapat',
73
- delete : 'Sil',
74
- delete_h : '{0} Sil',
75
- delete_content : '{0} Kalıcı Olarak Silmek İstediğinize Eminmisiniz?',
76
- settings_h : 'Ayarlar',
77
- settings_icon_view : 'Simge Görünümü',
78
- settings_list_view : 'Liste Görünümü',
79
- settings_show_size : 'Dosya Boyutunu Göster',
80
- settings_show_date : 'Dosya Oluşturulma Tarihini Göster',
81
- sorter_h : 'Sıralama Düzenle',
82
- sorter_name : 'Ada Göre Sırala',
83
- sorter_size : 'Boyutuna Göre Sırala',
84
- sorter_date : 'Tarihe Göre Sırala',
85
- sorter_kind : 'Dosya Türüne Göre Sırala'
86
- },
87
-
88
- contextmenu :
89
- {
90
- file_open : 'Aç',
91
- file_preview : 'Önizle',
92
- file_download : 'İndir',
93
- file_copy : 'Kopyala',
94
- file_cut : 'Kes',
95
- file_duplicate : 'Kopyasını Oluştur',
96
- file_rename : 'Yeniden Adlandır',
97
- file_delete : 'Sil',
98
- file_info : 'Bilgiler',
99
- wrapper_paste : 'Yapıştır',
100
- wrapper_list_view : 'Liste Görünümü',
101
- wrapper_icon_view : 'Simge Görünümü',
102
- wrapper_upload : 'Dosya Yükle',
103
- wrapper_newfolder : 'Yeni Klasör',
104
- wrapper_refresh : 'Yenile',
105
- wrapper_show_size : 'Boyutu Göster / Gizle',
106
- wrapper_show_date : 'Tarihi Göster / Gizle',
107
- wrapper_namesorter : 'Ada Göre Sırala',
108
- wrapper_sizesorter : 'Boyuta Göre Sırala',
109
- wrapper_datesorter : 'Tarihe Göre Sırala',
110
- wrapper_kindsorter : 'Türüne Göre Sırala'
111
- },
112
-
113
- widget_menu :
114
- {
115
- up_folder : 'Üst Klasor',
116
- upload : 'Yükle',
117
- new_folder : 'Yeni Klasor',
118
- refresh : 'Yenile',
119
- download : 'İndir',
120
- info : 'Bilgiler',
121
- preview : 'Ön İzle',
122
- edit : 'Düzenle',
123
- copy : 'Kopyala',
124
- cut : 'Kes',
125
- paste : 'Yapıştır',
126
- duplicate : 'Kopyasını Oluştur',
127
- rename : 'Yeniden Adlandır',
128
- delete : 'Sil',
129
- settings : 'Ayarlar',
130
- icon_view : 'Simge Görünümü',
131
- list_view : 'Liste Görünümü',
132
- show_size : 'Boyutu Göster',
133
- show_date : 'Oluşturulma Tarihini Göster',
134
- sort : 'Sırala',
135
- name_sorter : 'Ada Göre Sırala',
136
- size_sorter : 'Boyuta Göre Sırala',
137
- date_sorter : 'Tarihe Göre Sırala',
138
- kind_sorter : 'Türüne Göre Sırala',
139
- about : 'Hakkında'
140
- }
141
- };
142
-
143
-
144
- //Dil Seçimi
145
- if (typeof(opts.i18n)=="object"){
146
- opts.i18n = fnc.merge_options(i18n,opts.i18n);
147
- }else {opts.i18n = i18n; }
148
-
149
-
150
- //Cookies Objesi
151
- var Cookies = {
152
- setCookie : function (cname, cvalue, exdays) {
153
- var d = new Date();
154
- d.setTime(d.getTime() + (exdays*1000));
155
- var expires = "expires="+d.toUTCString();
156
- document.cookie = cname + "=" + cvalue + "; " + expires;
157
- },
158
-
159
- getCookie :function (cname) {
160
- var name = cname + "=";
161
- var ca = document.cookie.split(';');
162
- for(var i=0; i<ca.length; i++) {
163
- var c = ca[i];
164
- while (c.charAt(0)==' ') c = c.substring(1);
165
- if (c.indexOf(name) == 0) return c.substring(name.length,c.length);
166
- }
167
- return "";
168
- }
169
-
170
- };
171
-
172
-
173
- //Sabit Fonksiyonlar Objesi
174
- var fnc = {
175
- ajax_fnc : {
176
-
177
- },
178
- //fnc.prepend_dialog(opts.i18n.access_not_head,opts.i18n.access_not_content,{type:"p",dialog_class:'noclose danger',scope_class:'noclose'});
179
- prepend_dialog : function(head,content,opt){
180
- opt = opt || {};
181
- opt.scope_class = typeof (opt.scope_class)==="undefined" ? "" : " "+opt.scope_class;
182
- opt.dialog_class = typeof (opt.dialog_class)==="undefined" ? "" : " "+opt.dialog_class;
183
- var html = '<div class="dialog-scope'+opt.scope_class+'"></div><div style="display:none;" class="dialog'+opt.dialog_class+'"><h1>'+head+'</h1>';
184
- if (opt.type=="p"){html += '<p>'+content+'</p>'; }
185
- html += '</div>';
186
- fcfinder.prepend(html);
187
- fcfinder.find(".dialog").fadeIn(300);
188
- fcfinder.find(".dialog").ortala();
189
- },
190
-
191
- ripleClick : function (_class)
192
- {
193
- var ink, d, x, y;
194
- $body.on("click",_class,function(e){
195
- if($(this).find(".ink").length === 0){
196
- $(this).prepend("<span class='ink'></span>");
197
- }
198
- ink = $(this).find(".ink");
199
- ink.removeClass("animate");
200
- if(!ink.height() && !ink.width()){
201
- d = Math.max($(this).outerWidth(), $(this).outerHeight());
202
- ink.css({height: d, width: d});
203
- }
204
- x = e.pageX - $(this).offset().left - ink.width()/2;
205
- y = e.pageY - $(this).offset().top - ink.height()/2;
206
- ink.css({top: y+'px', left: x+'px'}).addClass("animate");
207
- setTimeout(function(){ ink.remove(); fcfinder.find("span.ink").remove(); },600);
208
- });
209
- },
210
-
211
- merge_options : function(obj1,obj2){
212
- var obj3 = {};
213
- for (var attrname in obj1) { obj3[attrname] = obj1[attrname]; }
214
- for (var attrname in obj2) { obj3[attrname] = obj2[attrname]; }
215
- return obj3;
216
- },
217
-
218
- fcfinderresize : function()
219
- {
220
- fcfinder.find(".right").width(fcfinder.width()-fcfinder.find(".left").width()-15);
221
- fcfinder.find(".right .wrapper , .right .widget").width(fcfinder.find(".right").width()-10);
222
- fcfinder.find(".right").children(".wrapper").height(($body.height()-fcfinder.find(".widget").height())-43);
223
- fcfinder.find(".left").height($body.height()-35);
224
- },
225
-
226
- appendFiles : function(data,type){
227
- type = type || "";
228
- if (type==""){
229
- var element =ul_wrapper.find(".file_wrapper:last");
230
- }
231
- else{var element =type;}
232
-
233
- $.each(data.file,function(key,val){
234
- var _style_type = "";
235
- if (val.type == "image_file") { _style_type = "style=\"background:url('//"+val.url.replace("uploads","uploads/.thumbs")+"') no-repeat center 5px / 65% 60px \""; }
236
- element.append('<div '+_style_type+' data-kind="'+val.type+'" data-date="'+val.ctime+'" data-size="'+val.size+'" data-size_2="'+val.size_2+'" data-name="'+key+'" data-path="'+val.path+'" class="'+val.type+'"><span class="file_name">'+key+'</span><span class="file_size"'+is_show_size+'>'+val.size+'</span><span class="file_date"'+is_show_date+'>'+val.ctime+'</span></div>');
237
- });
238
-
239
-
240
- if (is_show_date == " style=\"display:block;\"" ){fcfinder.find(".right ul.wrapper li div").height(80+32+10);}
241
- if (is_show_size == " style=\"display:block;\"" ){fcfinder.find(".right ul.wrapper li div").height(80+16+10);}
242
- if (is_show_date == " style=\"display:block;\"" && is_show_size == " style=\"display:block;\"" ){fcfinder.find(".right ul.wrapper li div").height(80+16+32+10);}
243
-
244
- },
245
-
246
- getUrlParam : function(paramName) {
247
- var reParam = new RegExp('(?:[\?&]|&)' + paramName + '=([^&]+)', 'i') ;
248
- var match = window.location.search.match(reParam) ;
249
-
250
- return (match && match.length > 1) ? match[1] : '' ;
251
- },
252
-
253
- sortable : function(type)
254
- {
255
- if (type=="name"){ fcfinder.find(".right ul.widget li a.name_sorter").removeClass("z_a").removeClass("a_z").trigger('click'); }
256
- if (type=="size"){ fcfinder.find(".right ul.widget li a.size_sorter").removeClass("z_a").removeClass("a_z").trigger('click'); }
257
- if (type=="date"){ fcfinder.find(".right ul.widget li a.date_sorter").removeClass("z_a").removeClass("a_z").trigger('click'); }
258
- if (type=="kind"){ fcfinder.find(".right ul.widget li a.kind_sorter").removeClass("z_a").removeClass("a_z").trigger('click'); }
259
- },
260
-
261
- toDate : function(date)
262
- {
263
- if (date!=null)
264
- {
265
- var a = date.split("/");
266
- return Date.parse(a[1]+"/"+a[0]+"/"+a[2]);
267
- }
268
- },
269
-
270
- toInt : function (size)
271
- {
272
- if (size!=null)
273
- {
274
- return parseInt(size);
275
- }
276
- }
277
-
278
- };
279
-
280
-
281
-
282
-
283
-
284
-
285
- // Cookies Tanımlamaları
286
- Cookies.getCookie("FCFINDER_size_show")==""?Cookies.setCookie("FCFINDER_size_show","false",60*60*24*365):'';
287
- Cookies.getCookie("FCFINDER_date_show")==""?Cookies.setCookie("FCFINDER_date_show","false",60*60*24*365):'';
288
- Cookies.getCookie("FCFINDER_sortable")==""?Cookies.setCookie("FCFINDER_sortable","kind",60*60*24*365):'';
289
- Cookies.getCookie("FCFINDER_view_type")==""?Cookies.setCookie("FCFINDER_view_type","icon",60*60*24*365):'';
290
-
291
-
292
-
293
- //HTML'yi Yükle
294
- $("body").append("<img src='fcfinder/copy.png' />");
295
- fcfinder.append('<div class="left"><div id="all_folders">'+
296
- '<ul class="folders">'+
297
- '<li><a><span class="folder">'+opts.i18n.loading+'<span class="load"></span></span>'+
298
- '</a></li>'+
299
- '</div></div>'+
300
- '<div class="right">'+
301
- '<ul class="widget">'+
302
- '<li><a href="fcfinder:up" title="'+opts.i18n.widget_menu.up_folder+'" class="up_folder passive">'+opts.i18n.widget_menu.up_folder+'</a></li>'+
303
- '<li><a title="'+opts.i18n.widget_menu.upload+'" class="upload">'+
304
- '<form style="opacity:0;" id="file_upload" method="post" action="" enctype="multipart/form-data">'+
305
- '<input class="upload_field" name="fcfinder[upload][]" style="height:31px" multiple="multiple" type="file">'+
306
- '<input name="fcfinder[type]" value="upload" type="hidden">'+
307
- '<input name="fcfinder[path]" value="" type="hidden">'+
308
- '</form>'+
309
- '</a></li>'+
310
- '<li><a href="fcfinder:newfolder" title="'+opts.i18n.widget_menu.new_folder+'" class="new_folder">'+opts.i18n.widget_menu.new_folder+'</a></li>'+
311
- '<li><a href="fcfinder:refresh" title="'+opts.i18n.widget_menu.refresh+'" class="refresh">'+opts.i18n.widget_menu.refresh+'</a></li>'+
312
- '<li><a href="" title="'+opts.i18n.widget_menu.download+'" class="download passive">'+opts.i18n.widget_menu.download+'</a></li>'+
313
- '<li><a href="fcfinder:info" title="'+opts.i18n.widget_menu.info+'" class="info passive">'+opts.i18n.widget_menu.info+'</a><div>'+
314
- '<ul>'+
315
- '<li><a href="fcfinder:preview" title="'+opts.i18n.widget_menu.preview+'" class="preview passive">'+opts.i18n.widget_menu.preview+'</a></li>'+
316
- '</ul>'+
317
- '</div></li>'+
318
- '<li><a href="fcfinder:edit" title="'+opts.i18n.widget_menu.edit+'" class="edit passive">'+opts.i18n.widget_menu.edit+'</a><div>'+
319
- '<ul>'+
320
- '<li><a href="fcfinder:copy" title="'+opts.i18n.widget_menu.copy+'" class="copy passive">'+opts.i18n.widget_menu.copy+'</a></li>'+
321
- '<li><a href="fcfinder:cut" title="'+opts.i18n.widget_menu.cut+'" class="cut passive">'+opts.i18n.widget_menu.cut+'</a></li>'+
322
- '<li><a href="fcfinder:paste" title="'+opts.i18n.widget_menu.paste+'" class="paste passive">'+opts.i18n.widget_menu.paste+'</a></li>'+
323
- '<li><a href="fcfinder:duplicate" title="'+opts.i18n.widget_menu.duplicate+'" class="duplicate passive">'+opts.i18n.widget_menu.duplicate+'</a></li>'+
324
- '<li><a href="fcfinder:rename" title="'+opts.i18n.widget_menu.rename+'" class="rename passive">'+opts.i18n.widget_menu.rename+'</a></li>'+
325
- '<li><a href="fcfinder:edit" title="'+opts.i18n.widget_menu.edit+'" class="edit passive">'+opts.i18n.widget_menu.edit+'</a></li>'+
326
- '</ul>'+
327
- '</div></li>'+
328
- '<li><a href="fcfinder:delete" title="'+opts.i18n.widget_menu.delete+'" class="delete passive">'+opts.i18n.widget_menu.delete+'</a></li>'+
329
- '<li><a href="fcfinder:settings" title="'+opts.i18n.widget_menu.settings+'" class="settings">'+opts.i18n.widget_menu.settings+'</a><div>'+
330
- '<ul>'+
331
- '<li><a href="fcfinder:iconview" title="'+opts.i18n.widget_menu.icon_view+'" class="icon_view">'+opts.i18n.widget_menu.icon_view+'</a></li>'+
332
- '<li><a href="fcfinder:listview" title="'+opts.i18n.widget_menu.list_view+'" class="list_view">'+opts.i18n.widget_menu.list_view+'</a></li>'+
333
- '<li><a data-show="'+Cookies.getCookie("FCFINDER_size_show")+'" href="fcfinder:showsize" title="'+opts.i18n.widget_menu.show_size+'" class="show_size">'+opts.i18n.widget_menu.show_size+'</a></li>'+
334
- '<li><a data-show="'+Cookies.getCookie("FCFINDER_date_show")+'" href="fcfinder:showdate" title="'+opts.i18n.widget_menu.show_date+'" class="show_date">'+opts.i18n.widget_menu.show_date+'</a></li>'+
335
- '</ul>'+
336
- '</div></li>'+
337
- '<li><a href="fcfinder:sorting" title="'+opts.i18n.widget_menu.sort+'" class="sort">'+opts.i18n.widget_menu.sort+'</a><div>'+
338
- '<ul>'+
339
- '<li><a href="fcfinder:namesorter" title="'+opts.i18n.widget_menu.name_sorter+'" class="name_sorter">'+opts.i18n.widget_menu.name_sorter+'</a></li>'+
340
- '<li><a href="fcfinder:sizesorter" title="'+opts.i18n.widget_menu.size_sorter+'" class="size_sorter">'+opts.i18n.widget_menu.size_sorter+'</a></li>'+
341
- '<li><a href="fcfinder:datesorter" title="'+opts.i18n.widget_menu.date_sorter+'" class="date_sorter">'+opts.i18n.widget_menu.date_sorter+'</a></li>'+
342
- '<li><a href="fcfinder:kindsorter" title="'+opts.i18n.widget_menu.kind_sorter+'" class="kind_sorter">'+opts.i18n.widget_menu.kind_sorter+'</a></li>'+
343
- '</ul>'+
344
- '</div></li>'+
345
- '<li><a href="fcfinder:settings" title="'+opts.i18n.widget_menu.about+'" class="about">'+opts.i18n.widget_menu.about+'</a></li>'+
346
- '</ul>'+
347
- '<ul class="wrapper">'+
348
- '<li>'+opts.i18n.loading+'<span class="load"></span></li>'+
349
- '</ul>'+
350
- '</div>'+
351
- '<div class="clear"></div>'+
352
- '<ul class="bottom">'+opts.i18n.loading+'<span class="load"></span></ul>');
353
-
354
- //Görünüm Tipini Seç
355
- if (Cookies.getCookie("FCFINDER_view_type")=="icon"){
356
- fcfinder.find(".right ul.widget li a.icon_view").addClass("passive");
357
- fcfinder.find(".right ul.wrapper").addClass("icon_view");
358
- }
359
- else{
360
- fcfinder.find(".right ul.widget li a.list_view").addClass("passive");
361
- fcfinder.find(".right ul.wrapper").addClass("list_view");
362
- }
363
-
364
-
365
-
366
- //Dosya Boyutu ve Tarihi Görünüyormu
367
- var is_show_size = Cookies.getCookie("FCFINDER_size_show")=="true"?" style=\"display:block;\"":"";
368
- var is_show_date = Cookies.getCookie("FCFINDER_date_show")=="true"?" style=\"display:block;\"":"";
369
-
370
-
371
-
372
-
373
- //Çok Kullanılan Elementler
374
- var ul_folders = fcfinder.children(".left").children("#all_folders").children("ul.folders");
375
- var ul_wrapper = fcfinder.children(".right").children("ul.wrapper");
376
-
377
-
378
-
379
- //Dosyaları Yükle
380
- $.ajax({url:opts.url,dataType:'json',type:'POST',success:function(_data) {
381
- //İzin Yoksa Hata Ver
382
- if (_data == "Access not allowed!") {
383
-
384
- fnc.prepend_dialog(opts.i18n.access_not_head,opts.i18n.access_not_content,{type:"p",dialog_class:'noclose danger',scope_class:'noclose'});
385
- fcfinder.find(".left #all_folders").html("");
386
- fcfinder.find(".right ul.wrapper").html("");
387
- fcfinder.find("ul.bottom").html("");
388
- }
389
- else{
390
- //İzin Varsa Dosyaları Yükle
391
- if (fcfinder.find("ul.bottom li[data-path='fcdir:/']").size()===0){
392
- fcfinder.find("ul.bottom").html("").append('<li data-path="fcdir:/">'+opts.i18n.bottom_file.format(_data[1],_data[2])+'</li>');}
393
- var data = _data[0];
394
- var main_file_path = data.main_file.path;
395
-
396
- var main_class = data.main_file.sub_dir ? " opened " : " ";
397
- ul_folders.html("").append('<li><a id="true" href="fcdir:/" data-show="true" class="active">' +
398
- '<span class="braca'+main_class+'"></span>'+
399
- '<span class="folder">'+main_file_path+'</span>'+
400
- '</a></li>');
401
-
402
- if($.isEmptyObject(data.directory) && $.isEmptyObject(data.file))
403
- {
404
- ul_wrapper.html("").append('<li class="file_wrapper" data-show="true" data-path="fcdir:/">'+opts.i18n.empty_file+'</li>');
405
- }else
406
- {
407
- ul_wrapper.html("").append('<li class="file_wrapper" data-show="true" data-path="fcdir:/"></li>');
408
- }
409
-
410
- ul_folders.children("li").append('<ul class="folders"></ul>');
411
-
412
-
413
- $.each(data.directory,function(key,val){
414
- ul_wrapper.find(".file_wrapper:first").append('<div data-path="'+val.path+'" data-name="'+key+'" data-size="'+val.size+'" data-size_2="'+val.size_2+'" data-date="'+val.ctime+'" data-kind="'+val.type+'" class="directory"><span class="file_name">'+key+'</span><span class="file_size"'+is_show_size+'>'+val.size+'</span><span class="file_date"'+is_show_date+'>'+val.ctime+'</span></div>');
415
-
416
- var ths_cls = val.sub_dir? " closed " : "";
417
- ul_folders.children("li").children("ul.folders").append('<li><a href="'+val.path+'">'+
418
- '<span class="braca'+ths_cls+'"></span>'+
419
- '<span class="folder">'+key+'</span>'+
420
- '</a></li>');
421
- });
422
- fnc.appendFiles(data);
423
- fnc.sortable(Cookies.getCookie("FCFINDER_sortable"));
424
- if (Cookies.getCookie("FCFINDER_view_type")=="list"){fcfinder.find(".right ul.wrapper li[data-show='true']").prepend('<div class="list_head"><span class="file_name">'+opts.i18n.file_name+'</span><span class="file_size">'+opts.i18n.file_size+'</span><span class="file_date">'+opts.i18n.file_cdate+'</span></div>');}
425
- if (fcfinder.find(".left #all_folders ul.folders li a.active").attr("href")!="fcdir:/"){ fcfinder.find(".right ul.widget li a.up_folder").removeClass("passive");}
426
- else{fcfinder.find(".right ul.widget li a.up_folder").addClass("passive");}
427
- }
428
-
429
-
430
- }});
431
-
432
-
433
-
434
- //Yükleme İnputu Seçilince Formu Submit Et
435
- $body.on("change",fcfinder_selector+" input.upload_field",function(){
436
- fcfinder.find("input[name='fcfinder[path]']").val(fcfinder.find(".left #all_folders ul li a.active").attr("href"));
437
- $(this).closest('form').trigger('submit');
438
- });
439
-
440
-
441
-
442
-
443
- //Form Submit Ediliyor
444
- $body.on("submit",fcfinder_selector+" form#file_upload",function(){
445
- var formData = new FormData(this);
446
- $.ajax({url:opts.url,dataType:'json',processData: false,contentType: false,type:'POST',data:formData,
447
- xhr: function () {
448
- var xhr = new window.XMLHttpRequest();
449
- xhr.upload.addEventListener("progress", function (evt) {
450
- if (evt.lengthComputable) {
451
- var percentComplete = evt.loaded / evt.total;
452
- if (fcfinder.find("#progress").length === 0) {
453
- fcfinder.prepend($("<div><dt/><dd/></div>").attr("id", "progress"));
454
- }
455
- fcfinder.find("#progress").css({width: percentComplete * 100 + '%'});
456
- if (percentComplete === 1) {
457
- fcfinder.find("#progress").width("101%").delay(100).fadeOut(300, function() {
458
- $(this).remove();
459
- });
460
- }
461
- }
462
- }, false);
463
- xhr.addEventListener("progress", function (evt) {
464
- if (evt.lengthComputable) {
465
- var percentComplete = evt.loaded / evt.total;
466
- fcfinder.find('#progress').css({
467
- width: percentComplete * 100 + '%'
468
- });
469
- }
470
- }, false);
471
- return xhr;
472
- },
473
- success:function(data) {
474
- if (data[0]=="true"){
475
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
476
- }else{
477
- if (data[1]=="0"){
478
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.large_file.format(data[2]),{type:"p",dialog_class:'danger'});
479
- }
480
- if (data[1]=="-1"){
481
- var txt = [];
482
- $.each(data[2],function(k,v){
483
- txt.push(v[0]);
484
- });
485
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.error_type.format(txt.join(", ")),{type:"p",dialog_class:'danger'});
486
- }
487
- else{
488
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.load_error.format(data[2]),{type:"p",dialog_class:'danger'});
489
- }
490
- }
491
- }
492
- });
493
-
494
- //upload_files
495
- return false;
496
- });
497
-
498
-
499
- //Dosyalar Çift Tıklandığında (Seçilme İşlemi)
500
- $body.on("dblclick",fcfinder_selector+" .right ul.wrapper li div",function(){
501
- var path = $(this).attr("data-path");
502
- if (fcfinder.find(".left #all_folders ul.folders li a[href='"+path+"']").size()>0){
503
- fcfinder.find(".left #all_folders ul.folders li a[href='"+path+"']").trigger("click");
504
- }else{
505
- var data = 'fcfinder[path]='+path+'&fcfinder[type]=path_to_url';
506
- $.ajax({url:opts.url,dataType:'json',type:'POST',data:data,success:function(data) {
507
- if (data[0]=="true"){ var url = "//"+data[1];
508
- //CKEditor ise
509
- var funcNum = fnc.getUrlParam('CKEditorFuncNum');
510
- if (funcNum>0)
511
- {
512
- window.opener.CKEDITOR.tools.callFunction(funcNum, url);
513
- window.close();
514
- }else
515
- {
516
- //Değilse getFileCallback Fonksiyonunu Çağır
517
- if (typeof (opts.getFileCallback) == "function" && opts.getFileCallback)
518
- {
519
- opts.getFileCallback(url);
520
- }
521
- }
522
- }
523
- else{
524
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.select_file_error,{type:"p",dialog_class:'danger'});
525
- }
526
- }});
527
- }
528
- if (fcfinder.find(".left #all_folders ul.folders li a.active").attr("href")!="fcdir:/"){ fcfinder.find(".right ul.widget li a.up_folder").removeClass("passive");}
529
- else{fcfinder.find(".right ul.widget li a.up_folder").addClass("passive");}
530
- });
531
-
532
-
533
-
534
-
535
- //Klasör Ağacından Klasör Seçildiğinde
536
- $body.on("click",fcfinder_selector+" ul.folders a",function(){
537
- var ths = $(this);
538
- var url = ths.attr("href");
539
- var id = ths.attr("id");
540
- var data_path = ths.attr("href");
541
-
542
-
543
- fcfinder.find(".right ul.wrapper li.file_wrapper").attr("data-show","false").hide();
544
- fcfinder.find(".right ul.wrapper li.file_wrapper[data-path='" + data_path + "']").attr("data-show","true").show();
545
- fcfinder.find("ul.folders li a").removeClass("active");
546
- ths.addClass("active").attr("data-show","true");
547
- fcfinder.find("ul.bottom li").hide();
548
- fcfinder.find("ul.bottom li[data-path='"+url+"']").show();
549
-
550
-
551
-
552
- if (id!="true" && id!="false"){
553
-
554
- if (ths.children("span.braca").hasClass("closed")){
555
- ths.children("span.braca").removeClass("closed").addClass("opened");
556
- }
557
-
558
- ths.parent("li").append('<span class="folder_load">'+opts.i18n.load_directory+'</span>');
559
-
560
- var data = 'fcfinder[url]='+url+'&fcfinder[type]=all_file_list';
561
- $.ajax({url:opts.url,dataType:'json',type:'POST',data:data,success:function(_data) {
562
-
563
- if (fcfinder.find("ul.bottom li[data-path='"+url+"']").size()===0){
564
- fcfinder.find("ul.bottom").append('<li data-path="'+url+'">'+opts.i18n.bottom_file.format(_data[1],_data[2])+'</li>');}
565
- else { fcfinder.find("ul.bottom li").hide(); fcfinder.find("ul.bottom li[data-path='"+url+"']").show();}
566
-
567
- var data = _data[0];
568
- if (!$.isEmptyObject(data.directory))
569
- {
570
- ths.parent("li").append("<ul class=\"folders\"></ul>");
571
- $.each(data.directory,function(key,val){
572
- var ths_cls = val.sub_dir? " closed " : "";
573
- ths.parent("li").children("ul.folders").append('<li><a href="'+val.path+'">'+
574
- '<span class="braca '+ths_cls+'"></span>'+
575
- '<span class="folder">'+key+'</span>'+
576
- '</a></li>');
577
- });
578
- }
579
-
580
- if ($.isEmptyObject(data.directory) && $.isEmptyObject(data.file))
581
- {
582
- fcfinder.find(".right ul.wrapper li.file_wrapper").hide();
583
- if (ul_wrapper.find("li.file_wrapper[data-path='"+data_path+"']").size()=="0"){
584
- ul_wrapper.append('<li class="file_wrapper" data-show="true" data-path="'+data_path+'">'+opts.i18n.empty_dir+'</li>').show();
585
- }else{
586
- ul_wrapper.find("li.file_wrapper[data-path='"+data_path+"']").show();
587
- }
588
- ths.removeAttr("id").removeAttr("data-show");
589
- }else {
590
- fcfinder.find(".right ul.wrapper li.file_wrapper").hide();
591
- if (ul_wrapper.find("li.file_wrapper[data-path='"+data_path+"']").size()=="0"){
592
- ul_wrapper.append('<li class="file_wrapper" data-show="true" data-path="'+data_path+'"></li>').show();
593
- }else{
594
- ul_wrapper.find("li.file_wrapper[data-path='"+data_path+"']").show();
595
- }
596
-
597
- if (ul_wrapper.find(".file_wrapper:last").html()!=""){ul_wrapper.find(".file_wrapper:last").html("");}
598
- $.each(data.directory,function(key,val){
599
- ul_wrapper.find(".file_wrapper:last").append('<div data-path="'+val.path+'" data-name="'+key+'" data-size="'+val.size+'" data-size_2="'+val.size_2+'" data-kind="'+val.type+'" data-date="'+val.ctime+'" class="directory"><span class="file_name">'+key+'</span><span class"file_size"'+is_show_size+'>'+val.size+'</span><span class="file_date"'+is_show_date+'>'+val.ctime+'</span></div>');
600
- });
601
-
602
- fnc.appendFiles(data);
603
- fnc.sortable(Cookies.getCookie("FCFINDER_sortable"));
604
- if (Cookies.getCookie("FCFINDER_view_type")=="list"){fcfinder.find(".right ul.wrapper li[data-show='true']").prepend('<div class="list_head"><span class="file_name">'+opts.i18n.file_name+'</span><span class="file_size">'+opts.i18n.file_size+'</span><span class="file_date">'+opts.i18n.file_cdate+'</span></div>');}
605
- }
606
-
607
- ths.next("span.folder_load").remove();
608
-
609
- }});
610
- ths.attr("id","true");
611
- }
612
-
613
- if (fcfinder.find(".left #all_folders ul.folders li a.active").attr("href")!="fcdir:/"){ fcfinder.find(".right ul.widget li a.up_folder").removeClass("passive");}
614
- else{fcfinder.find(".right ul.widget li a.up_folder").addClass("passive");}
615
- return false;
616
- });
617
-
618
-
619
- //Dosyaya yada Klasöre Tıklandığında
620
- $body.on("click",fcfinder_selector+" .right ul.wrapper li div",function(){
621
- var ths = $(this);
622
- if (ths.attr("class")!="list_head"){
623
- fcfinder.find(".right ul.wrapper li div").removeClass("active");
624
- ths.addClass("active");
625
-
626
- if (fcfinder.find("ul.bottom li[data-name='"+ths.attr("data-path")+"']").size()===0){
627
- fcfinder.find("ul.bottom li").hide();
628
- fcfinder.find("ul.bottom").append('<li style="display:block;" data-name="'+ths.attr("data-path")+'">'+ths.attr("data-name")+' ( '+ths.attr("data-size")+', '+ths.attr("data-date")+' )</li>');}
629
- else { fcfinder.find("ul.bottom li").hide(); fcfinder.find("ul.bottom li[data-name='"+ths.attr("data-path")+"']").show();}
630
-
631
- if (fcfinder.find(".right ul.wrapper li div.active").attr("data-new")!="new_folder")
632
- {if (fcfinder.find(".right ul.wrapper li div.active").attr("data-kind")=="image_file"){fcfinder.find(".right ul.widget li a.edit").removeClass("passive"); }
633
- fcfinder.find(".right ul.widget li a.download , " +
634
- ".right ul.widget li a.info , " +
635
- ".right ul.widget li a.preview , " +
636
- //".right ul.widget li a.edit , " +
637
- ".right ul.widget li a.copy , " +
638
- ".right ul.widget li a.cut , " +
639
- //".right ul.widget li a.paste , " +
640
- ".right ul.widget li a.duplicate , " +
641
- ".right ul.widget li a.rename , " +
642
- ".right ul.widget li a.delete").removeClass("passive");
643
- }
644
- }
645
-
646
- });
647
-
648
- //Klasör Ağacında Artı yada Eksiye Basıldığında
649
- $body.on("click",fcfinder_selector+' .left #all_folders ul.folders li a span.braca',function(){
650
-
651
- var ths = $(this);
652
- var _ths = $(this).parent("a");
653
- var id = _ths.attr("id");
654
-
655
-
656
- if (id=="true"){
657
- _ths.next("ul.folders").hide();
658
- _ths.attr("id","false");
659
-
660
-
661
- }
662
- else if(id=="false"){
663
- _ths.next("ul.folders").show();
664
- _ths.attr("id","true");
665
-
666
- }
667
-
668
-
669
- fcfinder.find("ul.folders li a").removeClass("active");
670
- _ths.addClass("active");
671
-
672
- if (ths.hasClass("closed")){
673
- ths.removeClass("closed").addClass("opened");
674
- }else {
675
- ths.removeClass("opened").addClass("closed");
676
- }
677
-
678
- if (fcfinder.find(".left #all_folders ul.folders li a.active").attr("href")!="fcdir:/"){ fcfinder.find(".right ul.widget li a.up_folder").removeClass("passive");}
679
- else{fcfinder.find(".right ul.widget li a.up_folder").addClass("passive");}
680
- });
681
-
682
-
683
- //Dosya Boyutu Göster / Gizle
684
- $body.on("click",fcfinder_selector+" .right ul.widget li a.show_size",function(){
685
- if (Cookies.getCookie('FCFINDER_view_type')=="icon"){
686
- var show = $(this).attr("data-show");
687
- if (show=="false") {
688
- fcfinder.find(".right ul.wrapper li div span.file_size").css({"display":"block"});
689
- fcfinder.find(".right ul.wrapper li div").height(fcfinder.find(".right ul.wrapper li div").height()+16);
690
- $(this).attr("data-show","true");
691
- Cookies.setCookie("FCFINDER_size_show","true",60*60*24*365);
692
- is_show_size = fcfinder.find(".right ul.widget li a.show_size").attr("data-show")=="true"?" style=\"display:block;\"":"";
693
- }
694
- else {
695
- fcfinder.find(".right ul.wrapper li div span.file_size").hide();
696
- fcfinder.find(".right ul.wrapper li div").height(fcfinder.find(".right ul.wrapper li div").height()-16);
697
- $(this).attr("data-show","false");
698
- Cookies.setCookie("FCFINDER_size_show","false",60*60*24*365);
699
- is_show_size = fcfinder.find(".right ul.widget li a.show_size").attr("data-show")=="false"?" style=\"display:block;\"":"";
700
- }
701
- }
702
- return false;
703
- });
704
-
705
-
706
- //Dosya Tarihi Göster / Gizle
707
- $body.on("click",fcfinder_selector+" .right ul.widget li a.show_date",function(){
708
- if (Cookies.getCookie('FCFINDER_view_type')=="icon"){
709
- var show = $(this).attr("data-show");
710
- if (show=="false") {
711
- fcfinder.find(".right ul.wrapper li div span.file_date").css({"display":"block"});
712
- fcfinder.find(".right ul.wrapper li div").height(fcfinder.find(".right ul.wrapper li div").height()+32);
713
- $(this).attr("data-show","true");
714
- Cookies.setCookie("FCFINDER_date_show","true",60*60*24*365);
715
- is_show_date = fcfinder.find(".right ul.widget li a.show_date").attr("data-show")=="true"?" style=\"display:block;\"":"";
716
-
717
- }
718
- else {
719
- fcfinder.find(".right ul.wrapper li div span.file_date").hide();
720
- fcfinder.find(".right ul.wrapper li div").height(fcfinder.find(".right ul.wrapper li div").height()-32);
721
- $(this).attr("data-show","false");
722
- Cookies.setCookie("FCFINDER_date_show","false",60*60*24*365);
723
- is_show_date = fcfinder.find(".right ul.widget li a.show_date").attr("data-show")=="false"?" style=\"display:block;\"":"";
724
- }
725
- }
726
- return false;
727
- });
728
-
729
- //Yeni Klasör Oluşturma
730
- $body.on("click",fcfinder_selector+" .right ul.widget li a.new_folder",function(){
731
- var dir = fcfinder.find(".right ul.wrapper li[data-show='true']");
732
- if (dir.html()==opts.i18n.empty_dir){dir.html("");}
733
- fcfinder.find(".right ul.wrapper li div").removeClass("active");
734
- var html = '<div data-new="new_folder" data-path="" data-name="" data-size="0" data-size_2="0" data-date="" data-kind="_directory" class="active directory"><span class="file_name"><form id="new_directory"><input type="text" name="fcfinder[directory_name]" /><input type="hidden" name="fcfinder[type]" value="create_directory"/> <input type="hidden" name="fcfinder[path]" value="'+dir.attr("data-path")+'"></form></span><span class="file_size"></span><span class="file_date"></span></div>';
735
- if (Cookies.getCookie('FCFINDER_view_type')=="list"){
736
- dir.find(".list_head").after(html);
737
- }else {
738
- dir.prepend(html);
739
- }
740
- dir.find("input").select();
741
-
742
- return false;
743
- });
744
-
745
- //Sayfa Yenileme
746
- $body.on("click",fcfinder_selector+" .right ul.widget li a.refresh",function(){
747
- var left_wrapper = fcfinder.find(".left #all_folders ul li a.active");
748
- var right_wrapper = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']");
749
- if (right_wrapper.attr("data-path") == left_wrapper.attr("href")){
750
- var path = right_wrapper.attr("data-path");
751
- var data = "fcfinder[type]=refresh&fcfinder[path]="+path;
752
- left_wrapper.next("ul").html("")
753
- right_wrapper.html("")
754
- $.ajax({url:opts.url,dataType:'json',type:'POST',data:data,success:function(data) {
755
-
756
- if ($.isEmptyObject(data.directory) && $.isEmptyObject(data.file))
757
- {
758
- right_wrapper.html(opts.i18n.empty_dir);
759
- }else {
760
- if (right_wrapper.html()!=""){right_wrapper.html("");}
761
- $.each(data.directory,function(key,val){
762
- var ths_cls = val.sub_dir? " closed " : "";
763
- left_wrapper.next("ul.folders").append('<li><a href="'+val.path+'">'+
764
- '<span class="braca '+ths_cls+'"></span>'+
765
- '<span class="folder">'+key+'</span>'+
766
- '</a></li>');
767
-
768
- right_wrapper.append('<div data-path="'+val.path+'" data-kind="'+val.type+'" data-name="'+key+'" data-size="'+val.size+'" data-size_2="'+val.size_2+'" data-date="'+val.ctime+'" class="directory"><span class="file_name">'+key+'</span><span class="file_size"'+is_show_size+'>'+val.size+'</span><span class="file_date"'+is_show_date+'>'+val.ctime+'</span></div>');
769
- });
770
-
771
- fnc.appendFiles(data,right_wrapper);
772
- fnc.sortable(Cookies.getCookie("FCFINDER_sortable"));
773
- if (Cookies.getCookie("FCFINDER_view_type")=="list"){fcfinder.find(".right ul.wrapper li[data-show='true']").prepend('<div class="list_head"><span class="file_name">'+opts.i18n.file_name+'</span><span class="file_size">'+opts.i18n.file_size+'</span><span class="file_date">'+opts.i18n.file_cdate+'</span></div>');}
774
- }
775
- }});
776
- }else {
777
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.error_msg,{type:"p",dialog_class:'danger'});
778
- }
779
-
780
- return false;
781
- });
782
-
783
-
784
-
785
- //Dosya İndirme
786
- $body.on("click",fcfinder_selector+" .right ul.widget li a.download",function(){
787
- if (!$(this).hasClass("passive")){
788
- var path = fcfinder.find(".right ul.wrapper li div.active").attr("data-path").replace("fcdir:/","");
789
- var data = "fcfinder[type]=download&fcfinder[path]="+fcfinder.find(".right ul.wrapper li div.active").attr("data-path");
790
- $.ajax({
791
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
792
-
793
- if (data[0]=="false"){
794
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.download_error.format(data[2]),{type:"p",dialog_class:'danger'});
795
- }
796
- else{
797
- window.open(location+"/download/"+data.file);
798
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
799
- }
800
- }});
801
- }
802
- return false;
803
- });
804
-
805
-
806
-
807
-
808
-
809
- //Üst Dizin'e Çıkma
810
- $body.on("click",fcfinder_selector+" .right ul.widget li a.up_folder",function(){
811
- if (!$(this).hasClass("passive")){
812
- var up_path = fcfinder.find(".left #all_folders ul.folders li a.active").attr("href").split("/");
813
- up_path.pop();
814
- var data_path = up_path.length > 1 ? up_path.join("/") : up_path[0]+"/";
815
- var ths = fcfinder.find(".left #all_folders ul.folders li a[href='"+data_path+"']");
816
- if (data_path=="fcdir:/"){$(this).addClass("passive");}
817
- fcfinder.find(".right ul.wrapper li.file_wrapper").attr("data-show","false").hide();
818
- fcfinder.find(".right ul.wrapper li.file_wrapper[data-path='" + data_path + "']").attr("data-show","true").show();
819
- fcfinder.find("ul.folders li a").removeClass("active");
820
- ths.addClass("active").attr("data-show","true");
821
-
822
- if (fcfinder.find("ul.bottom li[data-path='"+data_path+"']").size()===0){
823
- fcfinder.find("ul.bottom li").hide();}
824
- else { fcfinder.find("ul.bottom li").hide(); fcfinder.find("ul.bottom li[data-path='"+data_path+"']").show();}
825
-
826
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
827
- }
828
- return false;
829
- });
830
-
831
-
832
-
833
- //Dosya Bilgilerini Göster
834
- $body.on("click",fcfinder_selector+" .right ul.widget li a.info",function(){
835
- if (!$(this).hasClass("passive")){
836
- var file = fcfinder.find(".right ul.wrapper li div.active");
837
- var kind = file.attr("data-kind");
838
- var data = "fcfinder[type]=info&fcfinder[file]="+file.attr("data-path")+"&kind="+kind;
839
- fnc.prepend_dialog(opts.i18n.dialog.info_h,opts.i18n.loading,{type:"p"});
840
- $.ajax({
841
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
842
-
843
- var permissions="";
844
- var _class = "";
845
- if (data.permissions.read == "true"){ permissions = opts.i18n.read_permission; }
846
- if (data.permissions.write == "true"){ permissions = opts.i18n.write_permission; }
847
- if (data.permissions.write == "true" && data.permissions.read == "true"){ permissions = opts.i18n.read_write_permission; }
848
- if (data.mime_type == "directory") { data.mime_type = opts.i18n.directory; _class = " directory"; }
849
- else { _class = " "+file.removeClass("active").attr("class");
850
- file.addClass("active");}
851
- $(fcfinder_selector).find(".dialog").html('<h1>'+opts.i18n.dialog.info_h+'</h1>' +
852
- '<div class="file_bg'+_class+'" style=\''+file.attr("style")+'\'></div>'+
853
- '<span class="file_name">'+file.attr("data-name")+'</span><span class="file_type">'+data.mime_type+'</span>'+
854
- '<ul class="file_info">' +
855
- '<li><span>'+opts.i18n.dialog.info_size+'</span>'+data.size+'</li>' +
856
- '<li><span>'+opts.i18n.dialog.info_addres+'</span>'+data.path+'</li>' +
857
- '<li><span>'+opts.i18n.dialog.info_url+'</span><a target="_blank" href="//'+data.url+'">'+file.attr("data-name")+'</a></li>' +
858
- '<li><span>'+opts.i18n.dialog.info_cdate+'</span>'+data.ctime+'</li>' +
859
- '<li><span>'+opts.i18n.dialog.info_mdate+'</span>'+data.mtime+'</li>' +
860
- '<li><span>'+opts.i18n.dialog.info_file_permission+'</span>'+permissions+'</li>' +
861
- '</ul>' +
862
- '<a href="#" class="close">'+opts.i18n.dialog.close+'</a>');
863
- fnc.fcfinderresize();
864
- }});
865
- }
866
- return false;
867
- });
868
-
869
-
870
- //Dosyayı Önizle
871
- $body.on("click",fcfinder_selector+" .right ul.widget li a.preview",function(){
872
- if (!$(this).hasClass("passive")){
873
- var file = fcfinder.find(".right ul.wrapper li div.active");
874
- var kind = file.attr("data-kind");
875
- var data = "fcfinder[type]=preview&fcfinder[file]="+file.attr("data-path")+"&kind="+kind;
876
- $(fcfinder_selector).prepend('<div class="dialog-scope"></div>' +
877
- '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.preview_h+'</h1>' +
878
- '<p>'+opts.i18n.loading+'<span class="load"></span> </p>' +
879
- '</div>');
880
- fcfinder.find(".dialog").fadeIn(300);
881
- $.ajax({
882
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
883
-
884
- var _class = "";
885
- if (data.mime_type == "directory") { data.mime_type = opts.i18n.directory; _class = " directory"; }
886
- else { _class = " "+file.removeClass("active").attr("class");
887
- file.addClass("active");}
888
-
889
- if (kind == "image_file"){
890
- $(fcfinder_selector).find(".dialog").html('<h1>'+file.attr("data-name")+'</h1>' +
891
- '<img style="width:'+$(window).width()/4+'px;" class="preview" src="//'+data.url+'" />' +
892
- '<div class="clear"></div>'+
893
- '<a href="#" class="close">'+opts.i18n.dialog.close+'</a>' +
894
- '<div class="clear"></div>');
895
- var img_width = fcfinder.find(".dialog img").width();
896
- fcfinder.find(".dialog").css({"width":img_width+100+"px"});
897
- fcfinder.find(".dialog").ortala();
898
- }
899
- else{
900
- $(fcfinder_selector).find(".dialog").html('<h1>'+opts.i18n.dialog.preview_h+'</h1>' +
901
- '<div class="file_bg'+_class+'" style="'+file.attr("style")+'"></div>'+
902
- '<span class="file_name">'+file.attr("data-name")+'</span><span class="file_type">'+data.mime_type+'</span>'+
903
- '<ul class="file_info">' +
904
- '<li><span>'+opts.i18n.dialog.preview_size+'</span>'+data.size+'</li>' +
905
- '<li><span>'+opts.i18n.dialog.preview_addres+'</span>'+data.path+'</li>' +
906
- '<li><span>'+opts.i18n.dialog.preview_url+'</span><a target="_blank" href="//'+data.url+'">'+file.attr("data-name")+'</a></li>' +
907
- '<li><span>'+opts.i18n.dialog.preview_cdate+'</span>'+data.ctime+'</li>' +
908
- '<li><span>'+opts.i18n.dialog.preview_mdate+'</span>'+data.mtime+'</li>' +
909
- '</ul>' +
910
- '<a href="#" class="close">'+opts.i18n.dialog.close+'</a>');
911
- fcfinder.find(".dialog").ortala();
912
- }
913
- }});
914
- fnc.fcfinderresize();
915
- }
916
- return false;
917
- });
918
-
919
- //Dosya Kopyala
920
- $body.on("click",fcfinder_selector+" .right ul.widget li a.copy",function(){
921
- if (!$(this).hasClass("passive")){
922
- var file = fcfinder.find(".right ul.wrapper li div.active");
923
- var copy_file_path = file.attr("data-path");
924
- if (fcfinder.find("#copy_form").size()>0){ fcfinder.find("#copy_form").remove(); }
925
- fcfinder.append('<form id="copy_form"><input type="hidden" name="copy_file_path" value="'+copy_file_path+'" /><input type="hidden" name="copy_type" value="copy" /></form>');
926
- fcfinder.find(".right ul.widget li a.paste").removeClass("passive");
927
- }
928
- return false;
929
- });
930
-
931
-
932
- //Dosya Kesme
933
- $body.on("click",fcfinder_selector+" .right ul.widget li a.cut",function(){
934
- if (!$(this).hasClass("passive")){
935
- fcfinder.find(".right ul.wrapper li div").removeClass("cutting");
936
- var file = fcfinder.find(".right ul.wrapper li div.active");
937
- file.addClass("cutting");
938
- var copy_file_path = file.attr("data-path");
939
- if (fcfinder.find("#copy_form").size()>0){ fcfinder.find("#copy_form").remove(); }
940
- fcfinder.append('<form id="copy_form"><input type="hidden" name="copy_file_path" value="'+copy_file_path+'" /><input type="hidden" name="copy_type" value="cut" /></form>');
941
- fcfinder.find(".right ul.widget li a.paste").removeClass("passive");
942
- }
943
- return false;
944
- });
945
-
946
- //Dosya Yapıştırma
947
- $body.on("click",fcfinder_selector+" .right ul.widget li a.paste",function(){
948
- var $ths = $(this);
949
- if (!$ths.hasClass("passive")){
950
- var $input = fcfinder.find("input[name='copy_file_path']");
951
- var $type = fcfinder.find("input[name='copy_type']").val();
952
- var copy_file_path = $input.val();
953
- var this_folder_path = fcfinder.find(".left #all_folders ul.folders li a.active").attr("href");
954
- var data;
955
- var data_input;
956
- if ($type=="copy"){
957
- data = "fcfinder[type]=copy&fcfinder[copy_file_path]="+copy_file_path+"&fcfinder[this_folder_path]="+this_folder_path;
958
- data_input = "fcfinder[type]=copy!&fcfinder[copy_file_path]="+copy_file_path+"&fcfinder[this_folder_path]="+this_folder_path;
959
- }
960
- if ($type=="cut") {
961
- data = "fcfinder[type]=cut&fcfinder[cut_file_path]="+copy_file_path+"&fcfinder[this_folder_path]="+this_folder_path;
962
- data_input = "fcfinder[type]=cut!&fcfinder[cut_file_path]="+copy_file_path+"&fcfinder[this_folder_path]="+this_folder_path;
963
- }
964
-
965
- $.ajax({
966
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data){
967
-
968
- if (data[0]=="true")
969
- {if (fcfinder.find(".right ul.wrapper li div.cutting")){fcfinder.find(".right ul.wrapper li div.cutting").remove(); }
970
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
971
- }else {
972
- if (data[1] == "0"){
973
- $(fcfinder_selector).prepend('<div class="dialog-scope"></div>' +
974
- '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.file_replace_h+'</h1>' +
975
- '<p>'+opts.i18n.dialog.file_replace_content.format(copy_file_path.split("/").pop()) +
976
- '<input type="hidden" name="data_input" value="'+data_input+'" /> </p>' +
977
- '<a class="close" href="#">'+opts.i18n.dialog.cancel+'</a>' +
978
- '<a class="btn file_copy_ok" href="#">'+opts.i18n.dialog.ok+'</a>' +
979
- '</div>');
980
- fcfinder.find(".dialog").fadeIn(300);
981
- fcfinder.find(".dialog").ortala();
982
- }
983
- else{
984
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.copy_error.format(data[2]),{type:"p",dialog_class:'danger'});
985
- }
986
- }
987
- }});
988
- $input.remove();
989
- $ths.addClass("passive");
990
-
991
- }
992
- return false;
993
- });
994
-
995
-
996
- //Dosya Yapıştırma (Aynı İsimde Dosya Değiştirme)
997
- $body.on("click",fcfinder_selector+" .dialog a.file_copy_ok",function(){
998
- var data = fcfinder.find(".dialog input[name='data_input']").val();
999
- $.ajax({
1000
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data){
1001
-
1002
- if (data[0]=="true")
1003
- {if (fcfinder.find(".right ul.wrapper li div.cutting")){fcfinder.find(".right ul.wrapper li div.cutting").remove(); }
1004
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1005
- }else {
1006
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.replace_error.format(data[2]),{type:"p",dialog_class:'danger'});
1007
- }
1008
- }});
1009
- return false;
1010
- });
1011
-
1012
-
1013
-
1014
- //Dosya Kopyasını Oluşturma
1015
- $body.on("click",fcfinder_selector+" .right ul.widget li a.duplicate",function(){
1016
- if (!$(this).hasClass("passive")){
1017
- var file_path = fcfinder.find(".right ul.wrapper li div.active").attr("data-path");
1018
- var data = "fcfinder[type]=duplicate&fcfinder[file_path]="+file_path;
1019
- $.ajax({
1020
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data){
1021
-
1022
- if (data[0]=="true")
1023
- {
1024
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1025
- }else
1026
- {
1027
- //Kopyası Oluşmadı
1028
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.duplicate_error.format(data[2]),{type:"p",dialog_class:'danger'});
1029
- }
1030
- }});
1031
-
1032
- }
1033
- return false;
1034
- });
1035
-
1036
-
1037
-
1038
- //Dosya Yeniden Adlandırma
1039
- $body.on("click",fcfinder_selector+" .right ul.widget li a.rename",function(){
1040
- if (!$(this).hasClass("passive")){
1041
- var file = fcfinder.find(".right ul.wrapper li div.active");
1042
- file.attr("data-rename","true");
1043
- file.children("span.file_name").html('<form id="file_rename"><input type="text" id=\"file_name\" data-value="'+file.children("span.file_name").html()+'" name="fcfinder[file_name]" value="'+file.children("span.file_name").html()+'" /><input type="hidden" name="fcfinder[type]" value="file_rename"/> <input type="hidden" name="fcfinder[path]" value="'+file.attr("data-path")+'"></form>');
1044
-
1045
- var field = file.find("span.file_name form input[name='fcfinder[file_name]']");
1046
- if (file.hasClass("directory")){
1047
- field.select();
1048
- }else{
1049
-
1050
- field[0].focus();
1051
- field[0].setSelectionRange(0,(field.val().length-(field.val().split(".").slice(-1).toString().length+1)));
1052
- }
1053
-
1054
-
1055
- }
1056
- return false;
1057
- });
1058
-
1059
-
1060
-
1061
- //Dosya Yeniden Adlandırma Form Submit
1062
- $body.on("submit",fcfinder_selector+" #file_rename",function(){
1063
- var data = $(this).serialize();
1064
- $.ajax({
1065
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
1066
- if (data[0]=="true"){
1067
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1068
- }else {
1069
- //Bir hata meydana geldi adı değiştirilemedi
1070
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.rename_error.format(data[2]),{type:"p",dialog_class:'danger'});
1071
- }
1072
- }});
1073
- return false;
1074
- });
1075
-
1076
-
1077
- //Dosya Düzenleme (pixlr)
1078
- $body.on("click",fcfinder_selector+" .right ul.widget li a.edit",function(){
1079
- if (!$(this).hasClass("passive")){
1080
- var data = "fcfinder[type]=edit_file&fcfinder[file_path]="+fcfinder.find(".right ul.wrapper li div.active").attr("data-path");
1081
- $.ajax({
1082
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
1083
-
1084
- if (data[0]=="false"){
1085
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.edit_error,{type:"p",dialog_class:'danger'});
1086
- }else {
1087
- window.open("http://apps.pixlr.com/editor/?s=c&image="+encodeURIComponent(data.url)+"&title="+encodeURIComponent(data.title));
1088
- }
1089
- }});
1090
- }
1091
- return false;
1092
- });
1093
-
1094
-
1095
-
1096
- //Dosya Silme
1097
- $body.on("click",fcfinder_selector+" .right ul.widget li a.delete",function(){
1098
- if (!$(this).hasClass("passive")){
1099
- var file = fcfinder.find(".right ul.wrapper li div.active");
1100
- var file_path = file.attr("data-path");
1101
- if (fcfinder.find("form#delete_file_form").size()>0){fcfinder.find("form#delete_file_form").remove();}
1102
- fcfinder.append('<form id="delete_file_form"><input name="file_path" value="'+file_path+'" type="hidden" /></form>');
1103
- $(fcfinder_selector).prepend('<div class="dialog-scope"></div>' +
1104
- '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.delete_h.format(file.attr("data-name"))+'</h1>' +
1105
- '<p>'+opts.i18n.dialog.delete_content.format(file.attr("data-name"))+'</p>'+
1106
- '<a class="close" href="#">'+opts.i18n.dialog.close+'</a>' +
1107
- '<a class="btn file_delete" href="#">'+opts.i18n.dialog.delete+'</a>' +
1108
- '</div>');
1109
- fcfinder.find(".dialog").fadeIn(300);
1110
- fcfinder.find(".dialog").ortala();
1111
- }
1112
- return false;
1113
- });
1114
-
1115
-
1116
- //Dosya Silme Onayı
1117
- $body.on("click",fcfinder_selector+" .dialog a.file_delete",function(){
1118
- var file_path = fcfinder.find("form#delete_file_form input[name='file_path']").val();
1119
- var data = "fcfinder[type]=delete&fcfinder[file_path]="+file_path;
1120
- fcfinder.find(".dialog a.close").trigger("click");
1121
- $.ajax({
1122
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
1123
- if (data[0]=="true"){
1124
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1125
- }else {
1126
- if (data[1]=="0"){
1127
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.delete_error_0,{type:"p",dialog_class:'danger'});
1128
- }
1129
- else {
1130
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.delete_error_1.format(data[2]),{type:"p",dialog_class:'danger'});
1131
- }
1132
- }
1133
- }});
1134
- return false;
1135
- });
1136
-
1137
-
1138
-
1139
-
1140
- //Ada Göre Dosya Listeleme
1141
- $body.on("click",fcfinder_selector+" .right ul.widget li a.name_sorter",function(){
1142
- if (!$(this).hasClass("passive")){
1143
- var $ul = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']"),
1144
- $li = $ul.find("div");
1145
- if (!$(this).hasClass("z_a"))
1146
- {
1147
- $li.sort(function(a,b){
1148
- var an = a.getAttribute('data-name'),
1149
- bn = b.getAttribute('data-name');
1150
- if(an > bn) { return 1;}
1151
- if(an < bn) {return -1;}
1152
- return 0;
1153
- });
1154
- $li.detach().appendTo($ul);
1155
- $(this).removeClass("a_z").addClass("z_a");
1156
- }else {
1157
- $li.sort(function(a,b){
1158
- var an = a.getAttribute('data-name'),
1159
- bn = b.getAttribute('data-name');
1160
- if(an < bn) { return 1;}
1161
- if(an > bn) {return -1;}
1162
- return 0;
1163
- });
1164
- $li.detach().appendTo($ul);
1165
- $(this).removeClass("z_a").addClass("a_z");
1166
- }
1167
- }
1168
- Cookies.setCookie("FCFINDER_sortable","name",60*60*24*365);
1169
- return false;
1170
- });
1171
-
1172
-
1173
-
1174
- //Boyuta Göre Dosya Listeleme
1175
- $body.on("click",fcfinder_selector+" .right ul.widget li a.size_sorter",function(){
1176
- if (!$(this).hasClass("passive")){
1177
- var $ul = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']"),
1178
- $li = $ul.find("div");
1179
- if (!$(this).hasClass("z_a"))
1180
- {
1181
- $li.sort(function(a,b){
1182
- var an = fnc.toInt(a.getAttribute('data-size_2')),
1183
- bn = fnc.toInt(b.getAttribute('data-size_2'));
1184
- if(an < bn) { return 1;}
1185
- if(an > bn) {return -1;}
1186
- return 0;
1187
- });
1188
- $li.detach().appendTo($ul);
1189
- $(this).removeClass("a_z").addClass("z_a");
1190
- }else {
1191
- $li.sort(function(a,b){
1192
- var an = fnc.toInt(a.getAttribute('data-size_2')),
1193
- bn = fnc.toInt(b.getAttribute('data-size_2'));
1194
- if(an > bn) { return 1;}
1195
- if(an < bn) {return -1;}
1196
- return 0;
1197
- });
1198
- $li.detach().appendTo($ul);
1199
- $(this).removeClass("z_a").addClass("a_z");
1200
- }
1201
- }
1202
- Cookies.setCookie("FCFINDER_sortable","size",60*60*24*365);
1203
- return false;
1204
- });
1205
-
1206
-
1207
-
1208
- //Tarihine Göre Dosya Listeleme
1209
- $body.on("click",fcfinder_selector+" .right ul.widget li a.date_sorter",function(){
1210
- if (!$(this).hasClass("passive")){
1211
- var $ul = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']"),
1212
- $li = $ul.find("div");
1213
- if (!$(this).hasClass("z_a"))
1214
- {
1215
- $li.sort(function(a,b){
1216
- var an = fnc.toDate(a.getAttribute('data-date')),
1217
- bn = fnc.toDate(b.getAttribute('data-date'));
1218
- if(an > bn) { return 1;}
1219
- if(an < bn) {return -1;}
1220
- return 0;
1221
- });
1222
- $li.detach().appendTo($ul);
1223
- $(this).removeClass("a_z").addClass("z_a");
1224
- }else {
1225
- $li.sort(function(a,b){
1226
- var an = fnc.toDate(a.getAttribute('data-date')),
1227
- bn = fnc.toDate(b.getAttribute('data-date'));
1228
- if(an < bn) { return 1;}
1229
- if(an > bn) {return -1;}
1230
- return 0;
1231
- });
1232
- $li.detach().appendTo($ul);
1233
- $(this).removeClass("z_a").addClass("a_z");
1234
- }
1235
- }
1236
- Cookies.setCookie("FCFINDER_sortable","date",60*60*24*365);
1237
- return false;
1238
- });
1239
-
1240
- //Türüne Göre Dosya Listeleme
1241
- $body.on("click",fcfinder_selector+" .right ul.widget li a.kind_sorter",function(){
1242
- if (!$(this).hasClass("passive")){
1243
- var $ul = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']"),
1244
- $li = $ul.find("div");
1245
- if (!$(this).hasClass("z_a"))
1246
- {
1247
- $li.sort(function(a,b){
1248
- var an = a.getAttribute('data-kind'),
1249
- bn = b.getAttribute('data-kind');
1250
- if(an > bn) { return 1;}
1251
- if(an < bn) {return -1;}
1252
- return 0;
1253
- });
1254
- $li.detach().appendTo($ul);
1255
- $(this).removeClass("a_z").addClass("z_a");
1256
- }else {
1257
- $li.sort(function(a,b){
1258
- var an = a.getAttribute('data-kind'),
1259
- bn = b.getAttribute('data-kind');
1260
- if(an < bn) { return 1;}
1261
- if(an > bn) {return -1;}
1262
- return 0;
1263
- });
1264
- $li.detach().appendTo($ul);
1265
- $(this).removeClass("z_a").addClass("a_z");
1266
- }
1267
- }
1268
- Cookies.setCookie("FCFINDER_sortable","kind",60*60*24*365);
1269
- return false;
1270
- });
1271
-
1272
-
1273
-
1274
-
1275
- //Simge Görünümü
1276
- $body.on("click",fcfinder_selector+" .right ul.widget li a.icon_view",function(){
1277
- if (!$(this).hasClass("passive")) {
1278
- fcfinder.find(".right ul.wrapper").removeClass("list_view").addClass("icon_view");
1279
- Cookies.setCookie("FCFINDER_view_type","icon",60*60*24*365);
1280
- $(this).addClass("passive");
1281
- fcfinder.find(".right ul.widget li a.list_view").removeClass("passive");
1282
- fcfinder.find(".right ul.wrapper li div.list_head").remove();
1283
- }
1284
- return false;
1285
- });
1286
-
1287
- //Liste Görünümü
1288
- $body.on("click",fcfinder_selector+" .right ul.widget li a.list_view",function(){
1289
- if (!$(this).hasClass("passive")) {
1290
- fcfinder.find(".right ul.wrapper li[data-show='true']").prepend('<div class="list_head"><span class="file_name">'+opts.i18n.file_name+'</span><span class="file_size">'+opts.i18n.file_size+'</span><span class="file_date">'+opts.i18n.file_cdate+'</span></div>');
1291
- fcfinder.find(".right ul.wrapper").removeClass("icon_view").addClass("list_view");
1292
- Cookies.setCookie("FCFINDER_view_type","list",60*60*24*365);
1293
- $(this).addClass("passive");
1294
- fcfinder.find(".right ul.widget li a.icon_view").removeClass("passive");
1295
- }
1296
- return false;
1297
- });
1298
-
1299
-
1300
-
1301
-
1302
-
1303
-
1304
- //Ayarlar Menüsü
1305
- $body.on("click",fcfinder_selector+" .right ul.widget li a.settings",function(){
1306
- if (!$(this).hasClass("passive")){
1307
- var list_type = Cookies.getCookie("FCFINDER_view_type");
1308
- var size_show = Cookies.getCookie("FCFINDER_size_show");
1309
- var date_show = Cookies.getCookie("FCFINDER_date_show");
1310
-
1311
- var dialog_text = '<div class="dialog-scope"></div>' +
1312
- '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.settings_h+'</h1>' +
1313
- '<div class="content">';
1314
- dialog_text += '<div><label><input type="radio" name="view" value="icon"';
1315
- dialog_text += list_type == "icon" ? ' checked="checked" ' : '';
1316
- dialog_text += ' /> '+opts.i18n.dialog.settings_icon_view+' </label></div>';
1317
- dialog_text += '<div><label><input type="radio" name="view" value="list"';
1318
- dialog_text += list_type == "list" ? ' checked="checked" ' : ''
1319
- dialog_text += ' /> '+opts.i18n.dialog.settings_list_view+' </label></div>'
1320
- dialog_text += '<div><label><input type="checkbox" name="size_show" value="true"'
1321
- dialog_text += size_show == "true" ? ' checked="checked" ' : ''
1322
- dialog_text +=' /> '+opts.i18n.dialog.settings_show_size+' </label></div>'
1323
- dialog_text +='<div><label><input type="checkbox" name="date_show" value="true"'
1324
- dialog_text += date_show == "true" ? ' checked="checked" ' : ''
1325
- dialog_text +=' /> '+opts.i18n.dialog.settings_show_date+' </label></div>' +
1326
- '</div>' +
1327
- '<a class="close" href="#">'+opts.i18n.dialog.close+'</a>' +
1328
- '</div>';
1329
- $(fcfinder_selector).prepend(dialog_text);
1330
- fcfinder.find(".dialog").fadeIn(300);
1331
- fcfinder.find(".dialog").ortala();
1332
- }
1333
- return false;
1334
- });
1335
-
1336
-
1337
- //Ayarlar -> Tarih Göster İnputu Seçilirse
1338
- $body.on("change",fcfinder_selector+" .dialog div.content div label input[name='date_show']",function(){
1339
- fcfinder.find(".right ul.widget li a.show_date").trigger('click');
1340
- });
1341
-
1342
- //Ayarlar -> Boyut Göster İnputu Seçilirse
1343
- $body.on("change",fcfinder_selector+" .dialog div.content div label input[name='size_show']",function(){
1344
- fcfinder.find(".right ul.widget li a.show_size").trigger('click');
1345
- });
1346
-
1347
- //Ayarlar -> Görünüm Tipi Seçimi (Liste|Simge)
1348
- $body.on("change",fcfinder_selector+" .dialog div.content div label input[name='view']",function(){
1349
- var view_type = $(this).val();
1350
- if (view_type=="icon"){ fcfinder.find(".right ul.widget li a.icon_view").trigger("click"); }
1351
- if (view_type=="list"){ fcfinder.find(".right ul.widget li a.list_view").trigger("click");}
1352
- });
1353
-
1354
-
1355
-
1356
-
1357
- //Sıralama Menüsü
1358
- $body.on("click",fcfinder_selector+" .right ul.widget li a.sort",function(){
1359
- if (!$(this).hasClass("passive")){
1360
- var sortable_type = Cookies.getCookie("FCFINDER_sortable");
1361
- var dialog_text = '<div class="dialog-scope"></div>' +
1362
- '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.sorter_h+'</h1>' +
1363
- '<div class="content">';
1364
- dialog_text += '<div><label><input type="radio" name="sortable" value="name"';
1365
- dialog_text += sortable_type == "name" ? ' checked="checked" ' : '';
1366
- dialog_text += ' /> '+opts.i18n.dialog.sorter_name+' </label></div>';
1367
- dialog_text += '<div><label><input type="radio" name="sortable" value="size"';
1368
- dialog_text += sortable_type == "size" ? ' checked="checked" ' : ''
1369
- dialog_text += ' /> '+opts.i18n.dialog.sorter_size+' </label></div>'
1370
- dialog_text += '<div><label><input type="radio" name="sortable" value="date"'
1371
- dialog_text +=sortable_type == "date" ? ' checked="checked" ' : ''
1372
- dialog_text +=' /> '+opts.i18n.dialog.sorter_date+' </label></div>'
1373
- dialog_text +='<div><label><input type="radio" name="sortable" value="kind"'
1374
- dialog_text +=sortable_type == "kind" ? ' checked="checked" ' : ''
1375
- dialog_text +=' /> '+opts.i18n.dialog.sorter_kind+' </label></div>' +
1376
- '</div>' +
1377
- '<a class="close" href="#">'+opts.i18n.dialog.close+'</a>' +
1378
- '</div>';
1379
- $(fcfinder_selector).prepend(dialog_text);
1380
- fcfinder.find(".dialog").fadeIn(300);
1381
- fcfinder.find(".dialog").ortala();
1382
- }
1383
- return false;
1384
- });
1385
-
1386
-
1387
- //Sıralama -> Sıralama Yöntemi Seçimi (İsim|Botur|Tarih|Tür)
1388
- $body.on("change",fcfinder_selector+" .dialog div.content div label input[name='sortable']",function(){
1389
- var sort_type = $(this).val();
1390
- Cookies.setCookie("FCFINDER_sortable",sort_type,60*60*24*365);
1391
- fnc.sortable(sort_type);
1392
- return false;
1393
- });
1394
-
1395
-
1396
-
1397
- //Klavye Kontrolleri
1398
- $(document).keyup(function(e) {
1399
- //ESC Press
1400
- if (e.keyCode == 27) {
1401
- if (fcfinder.find(".dialog").size() > 0 || fcfinder.find(".dialog-scope").size() > 0)
1402
- {
1403
- fcfinder.find(".dialog").fadeOut(300, function(){ fcfinder.find(".dialog-scope , .dialog").remove(); });
1404
- }
1405
- fcfinder.find("#ctxMenu").remove();
1406
- fcfinder.find(".right ul.wrapper li[data-show='true'] div[data-new='new_folder']").remove();
1407
- if (fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']").html()==""){fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']").html(opts.i18n.empty_dir);}
1408
- var file = fcfinder.find(".right ul.wrapper li[data-show='true'] div[data-rename='true']");
1409
- file.removeAttr("data-rename");
1410
- file.children("span.file_name").html(file.find("form#file_rename input[name='fcfinder[file_name]']").attr("data-value"));
1411
- }
1412
- //F2 Press
1413
- if(e.which == 113) {
1414
- if (fcfinder.find(".right ul.wrapper li div.active")){
1415
- fcfinder.find(".right ul.widget li a.rename").trigger('click');
1416
- }
1417
- return false;
1418
- }
1419
-
1420
- });
1421
-
1422
- //Hedef Dışı Tıklama Kontrolleri
1423
- $("*").click(function(e){
1424
-
1425
- if (!$(e.target).is(fcfinder_selector+" ul#ctxMenu") && !$(e.target).is(fcfinder_selector+" ul#ctxMenu *") )
1426
- {
1427
- fcfinder.find("#ctxMenu").remove();
1428
- }
1429
-
1430
- if (!$(e.target).is(fcfinder_selector+" .dialog") && !$(e.target).is(fcfinder_selector+" .dialog *") &&
1431
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.icon_view") &&
1432
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.list_view") &&
1433
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.show_size") &&
1434
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.show_date") &&
1435
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.name_sorter") &&
1436
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.size_sorter") &&
1437
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.date_sorter") &&
1438
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.kind_sorter") &&
1439
- !$(e.target).is(fcfinder_selector+" "))
1440
- {
1441
- if (!fcfinder.find(".dialog").hasClass("noclose")){
1442
- fcfinder.find(".dialog").fadeOut(300, function(){ fcfinder.find(".dialog-scope , .dialog").remove(); });
1443
- }
1444
- }
1445
-
1446
- if (!$(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true'] div[data-new='new_folder']") && !$(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true'] div[data-new='new_folder'] *"))
1447
- {
1448
- fcfinder.find(".right ul.wrapper li[data-show='true'] div[data-new='new_folder']").remove();
1449
- if (fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']").html()==""){fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']").html(opts.i18n.empty_dir);}
1450
- }
1451
-
1452
-
1453
- if (!$(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true'] div[data-rename='true']") && !$(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true'] div[data-rename='true'] *"))
1454
- {
1455
- var file = fcfinder.find(".right ul.wrapper li[data-show='true'] div[data-rename='true']");
1456
- file.removeAttr("data-rename");
1457
- file.children("span.file_name").html(file.find("form#file_rename input[name='fcfinder[file_name]']").attr("data-value"));
1458
- }
1459
-
1460
- if (
1461
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.download") &&
1462
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.info") &&
1463
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.preview") &&
1464
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.edit") &&
1465
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.copy") &&
1466
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.cut") &&
1467
- //!$(e.target).is(fcfinder_selector+" .right ul.widget li a.paste") &&
1468
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.duplicate") &&
1469
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.rename") &&
1470
- !$(e.target).is(fcfinder_selector+" .right ul.widget li a.delete") &&
1471
-
1472
- !$(e.target).is(fcfinder_selector+" ul#ctxMenu li") &&
1473
- !$(e.target).is(fcfinder_selector+" ul#ctxMenu li *") &&
1474
-
1475
-
1476
- !$(e.target).is(fcfinder_selector+" .right ul.wrapper li div") && !$(e.target).is(fcfinder_selector+" .right ul.wrapper li div *"))
1477
- {
1478
- fcfinder.find(".right ul.wrapper li div").removeClass("active");
1479
- fcfinder.find(".right ul.widget li a.download , " +
1480
- ".right ul.widget li a.info , " +
1481
- ".right ul.widget li a.preview , " +
1482
- //".right ul.widget li a.edit , " +
1483
- ".right ul.widget li a.copy , " +
1484
- ".right ul.widget li a.cut , " +
1485
- //".right ul.widget li a.paste , " +
1486
- ".right ul.widget li a.duplicate , " +
1487
- ".right ul.widget li a.rename , " +
1488
- ".right ul.widget li a.delete").addClass("passive");
1489
-
1490
- }
1491
-
1492
- });
1493
-
1494
-
1495
- //Sağ Tıklama Ayarı
1496
- $("*").contextmenu(function(e){
1497
- fcfinder.find("#ctxMenu").remove();
1498
- if (!$(e.target).is(fcfinder_selector+" .right ul.wrapper li div.list_head") && !$(e.target).is(fcfinder_selector+" .right ul.wrapper li div.list_head *")){
1499
- if ($(e.target).is(fcfinder_selector+" .right ul.wrapper li div") || $(e.target).is(fcfinder_selector+" .right ul.wrapper li div *")) {
1500
- if (typeof $(e.target).parent("div").attr("data-name") === "undefined") {
1501
- var file = $(e.target);
1502
- }else {
1503
- var file = $(e.target).parent("div");
1504
- }
1505
- file.trigger("click");
1506
- fcfinder.prepend('<ul id="ctxMenu"></ul>');
1507
- var ctxMenu = fcfinder.find("#ctxMenu");
1508
- var x = parseInt(e.pageX) - 20;
1509
- var y = parseInt(e.pageY) - 30;
1510
- var d_x = $(document).width();
1511
- var d_y = $(document).height();
1512
- var ctxW_x = ctxMenu.width();
1513
- var ctxH_y = ctxMenu.height();
1514
-
1515
- if (x >= d_x - ctxW_x - 50) { x = d_x - ctxW_x - 50; }
1516
- if (y >= d_y - ctxH_y - 40) { y = d_y - ctxH_y - 40;}
1517
-
1518
- //
1519
- ctxMenu.html('<li><a class="none">' + file.attr("data-name") + '</a></li><li class="hr">&nbsp;</li>'+
1520
- '<li><a href="fcfinder:open">'+opts.i18n.contextmenu.file_open+'</a></li>'+
1521
- '<li><a href="fcfinder:preview">'+opts.i18n.contextmenu.file_preview+'</a></li>'+
1522
- '<li><a href="fcfinder:download">'+opts.i18n.contextmenu.file_download+'</a></li>'+
1523
- '<li class="hr">&nbsp;</li>'+
1524
- '<li><a href="fcfinder:copy">'+opts.i18n.contextmenu.file_copy+'</a></li>'+
1525
- '<li><a href="fcfinder:cut">'+opts.i18n.contextmenu.file_cut+'</a></li>'+
1526
- '<li><a href="fcfinder:duplicate">'+opts.i18n.contextmenu.file_duplicate+'</a></li>'+
1527
- '<li><a href="fcfinder:rename">'+opts.i18n.contextmenu.file_rename+'</a></li>'+
1528
- '<li><a href="fcfinder:delete">'+opts.i18n.contextmenu.file_delete+'</a></li>'+
1529
- '<li class="hr">&nbsp;</li>'+
1530
- '<li><a href="fcfinder:info">'+opts.i18n.contextmenu.file_info+'</a></li>');
1531
-
1532
- ctxMenu.css({"left": x + "px", "top": y + "px"});
1533
- }
1534
-
1535
- if ($(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true']") || $(e.target).is(fcfinder_selector+" .right ul.wrapper")) {
1536
-
1537
- fcfinder.prepend('<ul id="ctxMenu"></ul>');
1538
- var ctxMenu = fcfinder.find("#ctxMenu");
1539
- var x = parseInt(e.pageX) - 20;
1540
- var y = parseInt(e.pageY) - 30;
1541
- var d_x = $(document).width();
1542
- var d_y = $(document).height();
1543
- var ctxW_x = ctxMenu.width();
1544
- var ctxH_y = ctxMenu.height();
1545
-
1546
- if (x >= d_x - ctxW_x - 50) { x = d_x - ctxW_x - 50; }
1547
- if (y >= d_y - ctxH_y - 40) { y = d_y - ctxH_y - 40;}
1548
-
1549
-
1550
- var paste;
1551
- if (fcfinder.find(".right ul.widget li a.paste").hasClass("passive")){
1552
- paste = '<li><a class="none" href="fcfinder:paste">'+opts.i18n.contextmenu.wrapper_paste+'</a></li>';
1553
- }else{paste = '<li><a href="fcfinder:paste">'+opts.i18n.contextmenu.wrapper_paste+'</a></li>';}
1554
-
1555
- var view;
1556
- if (Cookies.getCookie("FCFINDER_view_type")=="icon"){
1557
- view = '<li><a href="fcfinder:list_view">'+opts.i18n.contextmenu.wrapper_list_view+'</a></li>';
1558
- }else{
1559
- view = '<li><a href="fcfinder:icon_view">'+opts.i18n.contextmenu.wrapper_icon_view+'</a></li>';
1560
- }
1561
-
1562
- ctxMenu.html('<li><a class="none">' + fcfinder.find(".right ul.wrapper li[data-show='true']").attr("data-path") + '</a></li><li class="hr">&nbsp;</li>'+
1563
- '<li><a href="fcfinder:upload">'+opts.i18n.contextmenu.wrapper_upload+'</a></li>'+
1564
- '<li><a href="fcfinder:newfolder">'+opts.i18n.contextmenu.wrapper_newfolder+'</a></li>'+
1565
- '<li><a href="fcfinder:refresh">'+opts.i18n.contextmenu.wrapper_refresh+'</a></li>'+
1566
- paste+
1567
- '<li class="hr">&nbsp;</li>'+
1568
- view+
1569
- '<li class="hr">&nbsp;</li>'+
1570
- '<li><a href="fcfinder:showsize">'+opts.i18n.contextmenu.wrapper_show_size+'</a></li>'+
1571
- '<li><a href="fcfinder:showdate">'+opts.i18n.contextmenu.wrapper_show_size+'</a></li>'+
1572
- '<li class="hr">&nbsp;</li>'+
1573
- '<li><a href="fcfinder:namesorter">'+opts.i18n.contextmenu.wrapper_namesorter+'</a></li>'+
1574
- '<li><a href="fcfinder:sizesorter">'+opts.i18n.contextmenu.wrapper_sizesorter+'</a></li>'+
1575
- '<li><a href="fcfinder:datesorter">'+opts.i18n.contextmenu.wrapper_datesorter+'</a></li>'+
1576
- '<li><a href="fcfinder:kindsorter">'+opts.i18n.contextmenu.wrapper_kindsorter+'</a></li>');
1577
-
1578
-
1579
- ctxMenu.css({"left": x + "px", "top": y + "px"});
1580
- }
1581
- }
1582
- return false;
1583
- });
1584
-
1585
-
1586
-
1587
- //Sağ Tıklama Menü Link Seçimi
1588
- $body.on("click",fcfinder_selector+" ul#ctxMenu li a",function(){
1589
- if ($(this).attr("class")=="none"){ return false; }else {
1590
- fcfinder.find("ul#ctxMenu").remove();
1591
- if ($(this).attr("href")=="fcfinder:open"){ fcfinder.find(".right ul.wrapper li div.active").trigger("dblclick");}
1592
- if ($(this).attr("href")=="fcfinder:preview"){ fcfinder.find(".right ul.widget li a.preview").trigger("click"); }
1593
- if ($(this).attr("href")=="fcfinder:download"){fcfinder.find(".right ul.widget li a.download").trigger("click");}
1594
- if ($(this).attr("href")=="fcfinder:copy"){fcfinder.find(".right ul.widget li a.copy").trigger("click");}
1595
- if ($(this).attr("href")=="fcfinder:cut"){fcfinder.find(".right ul.widget li a.cut").trigger("click");}
1596
- if ($(this).attr("href")=="fcfinder:duplicate"){fcfinder.find(".right ul.widget li a.duplicate").trigger("click");}
1597
- if ($(this).attr("href")=="fcfinder:rename"){fcfinder.find(".right ul.widget li a.rename").trigger("click");}
1598
- if ($(this).attr("href")=="fcfinder:delete"){fcfinder.find(".right ul.widget li a.delete").trigger("click");}
1599
- if ($(this).attr("href")=="fcfinder:info"){fcfinder.find(".right ul.widget li a.info").trigger("click");}
1600
-
1601
- if ($(this).attr("href")=="fcfinder:upload"){ fcfinder.find(".right ul.widget li a.upload input.upload_field").trigger("click");}
1602
- if ($(this).attr("href")=="fcfinder:newfolder"){ fcfinder.find(".right ul.widget li a.new_folder").trigger("click");}
1603
- if ($(this).attr("href")=="fcfinder:refresh"){ fcfinder.find(".right ul.widget li a.refresh").trigger("click");}
1604
- if ($(this).attr("href")=="fcfinder:paste"){ fcfinder.find(".right ul.widget li a.paste").trigger("click");}
1605
- if ($(this).attr("href")=="fcfinder:list_view"){ fcfinder.find(".right ul.widget li a.list_view").trigger("click");}
1606
- if ($(this).attr("href")=="fcfinder:icon_view"){ fcfinder.find(".right ul.widget li a.icon_view").trigger("click");}
1607
-
1608
- if ($(this).attr("href")=="fcfinder:showdate"){ fcfinder.find(".right ul.widget li a.show_date").trigger("click");}
1609
- if ($(this).attr("href")=="fcfinder:showsize"){ fcfinder.find(".right ul.widget li a.show_size").trigger("click");}
1610
-
1611
- if ($(this).attr("href")=="fcfinder:namesorter"){ fcfinder.find(".right ul.widget li a.name_sorter").trigger("click");}
1612
- if ($(this).attr("href")=="fcfinder:sizesorter"){ fcfinder.find(".right ul.widget li a.size_sorter").trigger("click");}
1613
- if ($(this).attr("href")=="fcfinder:datesorter"){ fcfinder.find(".right ul.widget li a.date_sorter").trigger("click");}
1614
- if ($(this).attr("href")=="fcfinder:kindsorter"){ fcfinder.find(".right ul.widget li a.kind_sorter").trigger("click");}
1615
-
1616
-
1617
- return false;
1618
- }
1619
-
1620
- });
1621
-
1622
-
1623
-
1624
- //Yeni Klasör Form Submit
1625
- $body.on("submit",fcfinder_selector+" #new_directory",function(){
1626
- var data = $(this).serialize();
1627
- $.ajax({
1628
- url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
1629
-
1630
- if (data[0]=="true"){
1631
- fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1632
- fcfinder.find(".left #all_folders ul.folders li a[href='"+data[1].top_dir+"']").trigger("click");
1633
- fcfinder.find(".left #all_folders ul.folders li a[href='"+data[1].top_dir+"']").children("span.braca").addClass("closed");
1634
- }else {
1635
- if (data[1]=="-1"){
1636
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.new_directory_error_1,{type:"p",dialog_class:'danger'});
1637
- }
1638
- else {
1639
- fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.new_directory_error_0.format(data[2]),{type:"p",dialog_class:'danger'});
1640
- }
1641
- }
1642
- }
1643
- });
1644
- return false;
1645
- });
1646
-
1647
- //Dialog Kapatma Butonu
1648
- $body.on("click",fcfinder_selector+" .dialog a.close",function(){
1649
- fcfinder.find(".dialog").fadeOut(300, function(){ fcfinder.find(".dialog-scope , .dialog").remove(); });
1650
- fnc.fcfinderresize();
1651
- return false;
1652
- });
1653
-
1654
-
1655
-
1656
-
1657
- //Hakkında Sayfası
1658
- $body.on("click",fcfinder_selector+" .right ul.widget li a.about",function(){
1659
- return false;
1660
- });
1661
-
1662
-
1663
-
1664
-
1665
- //Görüntü Yükseklik Genişlik Ayarları
1666
- fnc.fcfinderresize();
1667
- $(window).resize(function(){ fnc.fcfinderresize(); fcfinder.find(".dialog").ortala(); });
1668
-
1669
- //Tıklama Efekti Ayarı
1670
- fnc.ripleClick(fcfinder_selector+" .right ul.widget li a ,"+fcfinder_selector+" .right ul.wrapper li div ,"+fcfinder_selector+" .left #all_folders ul.folders li a span.folder");
1671
-
1672
-
1673
-
1674
-
1675
-
1676
-
1677
- //String Objesi Metod Ekleme
1678
- String.prototype.format = function() {
1679
- var formatted = this;
1680
- for (var i = 0; i < arguments.length; i++) {
1681
- var regexp = new RegExp('\\{'+i+'\\}', 'gi');
1682
- formatted = formatted.replace(regexp, arguments[i]);
1683
- }
1684
- return formatted;
1685
- };
1686
-
1687
- //$ Genişletme Yeni Metod Ekleme
1688
- $().__proto__.ortala = function(){
1689
- this.css({
1690
- left: ($(window).width()/2)-(this.width()/2),
1691
- top: ($(window).height()/2)-(this.height()/2)
1692
- });
1693
-
1694
- };
1695
-
1696
- };
1697
-
1698
- })(jQuery);
1
+ ;(function($){
2
+ $.fn.fcFinder = function(opts) {
3
+
4
+ //Ana Seçiciler
5
+ var fcfinder = $(this);
6
+ var fcfinder_selector = fcfinder.selector;
7
+ var $body = $("body");
8
+
9
+ //Selector Ayarı
10
+ if(fcfinder_selector!="#fcfinder"){
11
+ $(this).css({"margin":"0","padding":"0","display": "block","height": "100%","width": "100%"}).append('<div id="fcfinder"></div>');
12
+ fcfinder = fcfinder.find("#fcfinder");
13
+ fcfinder_selector = fcfinder.selector
14
+ }
15
+
16
+ // Varsayılan Metinler
17
+ var i18n = {
18
+ empty_dir : 'Dizin Boş',
19
+ empty_file : 'Dosya Boş',
20
+ loading : 'Yükleniyor...',
21
+ file_size : 'Dosya Boyutu',
22
+ file_name : 'Dosya Adı',
23
+ file_cdate : 'Dosya Oluşturulma Tarihi',
24
+ faild_process : 'İşlem Gerçekleşemedi',
25
+ access_not_head : 'Erişim İzni Yok',
26
+ access_not_content : 'Erişim İzniniz Yok Lütfen Giriş Yapmayı Deneyiniz Hala Bu Sorunla Karşılaşırsanız Lüftfen Yönetici İle Görüşünüz.',
27
+ bottom_file : '{0} Dosya ( {1} )',
28
+ load_directory : 'Dizinler Yükleniyor',
29
+ read_permission : 'Okuma İzni',
30
+ write_permission : 'Yazma İzni',
31
+ read_write_permission : 'Yazma ve Okuma İzni',
32
+ directory : 'Klasör',
33
+
34
+ error :
35
+ {
36
+ large_file : 'Dosya Boyutu İzin Verilen Dosya Boyutundan Fazla \n İzin Verilen Dosya Boyutu: {0}',
37
+ error_type : 'Yüklemeye Çalıştığınız Dosya Türüne İzin Verilmemiş \n İzin Verilen Dosya Türü(leri):\n {0}.',
38
+ load_error : 'Bir Hata Meydana Geldi ve Dosya Yüklenemedi Hata Sebebi: "{0}" Olabilir.',
39
+ select_file_error : 'Bir Hata Meydana Geldi ve Dosya Açılamadı, Açmaya Çalıştığınız Dosya Sunucuda Olmayabilir.',
40
+ error_msg : 'Beklenmedik Bir Hata Meydana Geldi',
41
+ download_error : 'Bir Hata Meydana Geldi ve Dosya İndirilemiyor Hata Sebebi: "{0}" Olabilir. \n Dosya Arşive Eklenirken Hata Oluşmuş Olabilir Klasor Adıyla Aynı Arşiv Dosyası Olmadığından Emin Olun',
42
+ copy_error : 'Bir Hata Meydana Geldi ve Koyalama İşlemi Gerçekleştirilemedi Hata Sebebi "{0}" Olabilir.',
43
+ replace_error : 'Bir Hata Meydana Geldi ve Dosya Değiştirilemedi İşlem İptal Edildi, Hata Sebebi "{0}" Olabilir.',
44
+ duplicate_error : 'Bir Hata Meydana Geldi ve Seçtiğiniz Dosyanın Kopyası Oluşturulamadı Hata Sebebi: "{0}" Olabilir.',
45
+ rename_error : 'Bir Hata Meydana Geldi ve Dosya Adı Değiştirilemedi Hata Sebebi: "{0}" Olabilir.',
46
+ edit_error : 'Bir Hata Meydana Geldi, Açmaya Çalıştığınız Dosyanın Sunucuda Olmaya Bilir.',
47
+ delete_error_0 : 'Silmeye Çalıştığınız Dosyaya Erişilemiyor Dosya Olmayabilir.',
48
+ delete_error_1 : 'Bir Hata Meydana Geldi ve Dosya Silme İşlemi Gerçekleştirilemedi Hata Sebebi: "{0}" Olabilir.',
49
+ new_directory_error_1 : 'Bu İsimde Dosya Var',
50
+ new_directory_error_0 : 'Bir Hata Meydana Geldi ve Klasör Oluşturulamadı, Hata Sebebi: "{0}" Olabilir.'
51
+ },
52
+
53
+ dialog :
54
+ {
55
+ info_h : 'Bilgiler',
56
+ info_size : 'Boyutu:',
57
+ info_addres : 'Adresi:',
58
+ info_url : 'Link:',
59
+ info_cdate : 'Oluşturulma Tarihi:',
60
+ info_mdate : 'Son Değişiklik Tarihi:',
61
+ info_file_permission : 'Dosya İzinleri:',
62
+ preview_h : 'Önizle',
63
+ preview_size : 'Boyutu:',
64
+ preview_addres : 'Adresi:',
65
+ preview_url : 'Link:',
66
+ preview_cdate : 'Oluşturulma Tarihi:',
67
+ preview_mdate : 'Son Değişiklik Tarihi:',
68
+ file_replace_h : 'Dosya Değiştir veya Atla',
69
+ file_replace_content : 'Hedefte Zaten "{0}" Adında Bir Dosya Var Üzerine Yazılsınmı?',
70
+ cancel : 'İptal Et',
71
+ ok : 'Evet',
72
+ close : 'Kapat',
73
+ delete : 'Sil',
74
+ delete_h : '{0} Sil',
75
+ delete_content : '{0} Kalıcı Olarak Silmek İstediğinize Eminmisiniz?',
76
+ settings_h : 'Ayarlar',
77
+ settings_icon_view : 'Simge Görünümü',
78
+ settings_list_view : 'Liste Görünümü',
79
+ settings_show_size : 'Dosya Boyutunu Göster',
80
+ settings_show_date : 'Dosya Oluşturulma Tarihini Göster',
81
+ sorter_h : 'Sıralama Düzenle',
82
+ sorter_name : 'Ada Göre Sırala',
83
+ sorter_size : 'Boyutuna Göre Sırala',
84
+ sorter_date : 'Tarihe Göre Sırala',
85
+ sorter_kind : 'Dosya Türüne Göre Sırala'
86
+ },
87
+
88
+ contextmenu :
89
+ {
90
+ file_open : 'Aç',
91
+ file_preview : 'Önizle',
92
+ file_download : 'İndir',
93
+ file_copy : 'Kopyala',
94
+ file_cut : 'Kes',
95
+ file_duplicate : 'Kopyasını Oluştur',
96
+ file_rename : 'Yeniden Adlandır',
97
+ file_delete : 'Sil',
98
+ file_info : 'Bilgiler',
99
+ wrapper_paste : 'Yapıştır',
100
+ wrapper_list_view : 'Liste Görünümü',
101
+ wrapper_icon_view : 'Simge Görünümü',
102
+ wrapper_upload : 'Dosya Yükle',
103
+ wrapper_newfolder : 'Yeni Klasör',
104
+ wrapper_refresh : 'Yenile',
105
+ wrapper_show_size : 'Boyutu Göster / Gizle',
106
+ wrapper_show_date : 'Tarihi Göster / Gizle',
107
+ wrapper_namesorter : 'Ada Göre Sırala',
108
+ wrapper_sizesorter : 'Boyuta Göre Sırala',
109
+ wrapper_datesorter : 'Tarihe Göre Sırala',
110
+ wrapper_kindsorter : 'Türüne Göre Sırala'
111
+ },
112
+
113
+ widget_menu :
114
+ {
115
+ up_folder : 'Üst Klasor',
116
+ upload : 'Yükle',
117
+ new_folder : 'Yeni Klasor',
118
+ refresh : 'Yenile',
119
+ download : 'İndir',
120
+ info : 'Bilgiler',
121
+ preview : 'Ön İzle',
122
+ edit : 'Düzenle',
123
+ copy : 'Kopyala',
124
+ cut : 'Kes',
125
+ paste : 'Yapıştır',
126
+ duplicate : 'Kopyasını Oluştur',
127
+ rename : 'Yeniden Adlandır',
128
+ delete : 'Sil',
129
+ settings : 'Ayarlar',
130
+ icon_view : 'Simge Görünümü',
131
+ list_view : 'Liste Görünümü',
132
+ show_size : 'Boyutu Göster',
133
+ show_date : 'Oluşturulma Tarihini Göster',
134
+ sort : 'Sırala',
135
+ name_sorter : 'Ada Göre Sırala',
136
+ size_sorter : 'Boyuta Göre Sırala',
137
+ date_sorter : 'Tarihe Göre Sırala',
138
+ kind_sorter : 'Türüne Göre Sırala',
139
+ about : 'Hakkında'
140
+ }
141
+ };
142
+
143
+
144
+ //Dil Seçimi
145
+ if (typeof(opts.i18n)=="object"){
146
+ opts.i18n = fnc.merge_options(i18n,opts.i18n);
147
+ }else {opts.i18n = i18n; }
148
+
149
+
150
+ //Cookies Objesi
151
+ var Cookies = {
152
+ setCookie : function (cname, cvalue, exdays) {
153
+ var d = new Date();
154
+ d.setTime(d.getTime() + (exdays*1000));
155
+ var expires = "expires="+d.toUTCString();
156
+ document.cookie = cname + "=" + cvalue + "; " + expires;
157
+ },
158
+
159
+ getCookie :function (cname) {
160
+ var name = cname + "=";
161
+ var ca = document.cookie.split(';');
162
+ for(var i=0; i<ca.length; i++) {
163
+ var c = ca[i];
164
+ while (c.charAt(0)==' ') c = c.substring(1);
165
+ if (c.indexOf(name) == 0) return c.substring(name.length,c.length);
166
+ }
167
+ return "";
168
+ }
169
+
170
+ };
171
+
172
+
173
+ //Sabit Fonksiyonlar Objesi
174
+ var fnc = {
175
+ ajax_fnc : {
176
+
177
+ },
178
+ //fnc.prepend_dialog(opts.i18n.access_not_head,opts.i18n.access_not_content,{type:"p",dialog_class:'noclose danger',scope_class:'noclose'});
179
+ prepend_dialog : function(head,content,opt){
180
+ opt = opt || {};
181
+ opt.scope_class = typeof (opt.scope_class)==="undefined" ? "" : " "+opt.scope_class;
182
+ opt.dialog_class = typeof (opt.dialog_class)==="undefined" ? "" : " "+opt.dialog_class;
183
+ var html = '<div class="dialog-scope'+opt.scope_class+'"></div><div style="display:none;" class="dialog'+opt.dialog_class+'"><h1>'+head+'</h1>';
184
+ if (opt.type=="p"){html += '<p>'+content+'</p>'; }
185
+ html += '</div>';
186
+ fcfinder.prepend(html);
187
+ fcfinder.find(".dialog").fadeIn(300);
188
+ fcfinder.find(".dialog").ortala();
189
+ },
190
+
191
+ ripleClick : function (_class)
192
+ {
193
+ var ink, d, x, y;
194
+ $body.on("click",_class,function(e){
195
+ if($(this).find(".ink").length === 0){
196
+ $(this).prepend("<span class='ink'></span>");
197
+ }
198
+ ink = $(this).find(".ink");
199
+ ink.removeClass("animate");
200
+ if(!ink.height() && !ink.width()){
201
+ d = Math.max($(this).outerWidth(), $(this).outerHeight());
202
+ ink.css({height: d, width: d});
203
+ }
204
+ x = e.pageX - $(this).offset().left - ink.width()/2;
205
+ y = e.pageY - $(this).offset().top - ink.height()/2;
206
+ ink.css({top: y+'px', left: x+'px'}).addClass("animate");
207
+ setTimeout(function(){ ink.remove(); fcfinder.find("span.ink").remove(); },600);
208
+ });
209
+ },
210
+
211
+ merge_options : function(obj1,obj2){
212
+ var obj3 = {};
213
+ for (var attrname in obj1) { obj3[attrname] = obj1[attrname]; }
214
+ for (var attrname in obj2) { obj3[attrname] = obj2[attrname]; }
215
+ return obj3;
216
+ },
217
+
218
+ fcfinderresize : function()
219
+ {
220
+ fcfinder.find(".right").width(fcfinder.width()-fcfinder.find(".left").width()-15);
221
+ fcfinder.find(".right .wrapper , .right .widget").width(fcfinder.find(".right").width()-10);
222
+ fcfinder.find(".right").children(".wrapper").height(($body.height()-fcfinder.find(".widget").height())-43);
223
+ fcfinder.find(".left").height($body.height()-35);
224
+ },
225
+
226
+ appendFiles : function(data,type){
227
+ type = type || "";
228
+ if (type==""){
229
+ var element =ul_wrapper.find(".file_wrapper:last");
230
+ }
231
+ else{var element =type;}
232
+
233
+ $.each(data.file,function(key,val){
234
+ var _style_type = "";
235
+ if (val.type == "image_file") { _style_type = "style=\"background:url('//"+val.url.replace("uploads","uploads/.thumbs")+"') no-repeat center 5px / 65% 60px \""; }
236
+ element.append('<div '+_style_type+' data-kind="'+val.type+'" data-date="'+val.ctime+'" data-size="'+val.size+'" data-size_2="'+val.size_2+'" data-name="'+key+'" data-path="'+val.path+'" class="'+val.type+'"><span class="file_name">'+key+'</span><span class="file_size"'+is_show_size+'>'+val.size+'</span><span class="file_date"'+is_show_date+'>'+val.ctime+'</span></div>');
237
+ });
238
+
239
+
240
+ if (is_show_date == " style=\"display:block;\"" ){fcfinder.find(".right ul.wrapper li div").height(80+32+10);}
241
+ if (is_show_size == " style=\"display:block;\"" ){fcfinder.find(".right ul.wrapper li div").height(80+16+10);}
242
+ if (is_show_date == " style=\"display:block;\"" && is_show_size == " style=\"display:block;\"" ){fcfinder.find(".right ul.wrapper li div").height(80+16+32+10);}
243
+
244
+ },
245
+
246
+ getUrlParam : function(paramName) {
247
+ var reParam = new RegExp('(?:[\?&]|&)' + paramName + '=([^&]+)', 'i') ;
248
+ var match = window.location.search.match(reParam) ;
249
+
250
+ return (match && match.length > 1) ? match[1] : '' ;
251
+ },
252
+
253
+ sortable : function(type)
254
+ {
255
+ if (type=="name"){ fcfinder.find(".right ul.widget li a.name_sorter").removeClass("z_a").removeClass("a_z").trigger('click'); }
256
+ if (type=="size"){ fcfinder.find(".right ul.widget li a.size_sorter").removeClass("z_a").removeClass("a_z").trigger('click'); }
257
+ if (type=="date"){ fcfinder.find(".right ul.widget li a.date_sorter").removeClass("z_a").removeClass("a_z").trigger('click'); }
258
+ if (type=="kind"){ fcfinder.find(".right ul.widget li a.kind_sorter").removeClass("z_a").removeClass("a_z").trigger('click'); }
259
+ },
260
+
261
+ toDate : function(date)
262
+ {
263
+ if (date!=null)
264
+ {
265
+ var a = date.split("/");
266
+ return Date.parse(a[1]+"/"+a[0]+"/"+a[2]);
267
+ }
268
+ },
269
+
270
+ toInt : function (size)
271
+ {
272
+ if (size!=null)
273
+ {
274
+ return parseInt(size);
275
+ }
276
+ }
277
+
278
+ };
279
+
280
+
281
+
282
+
283
+
284
+
285
+ // Cookies Tanımlamaları
286
+ Cookies.getCookie("FCFINDER_size_show")==""?Cookies.setCookie("FCFINDER_size_show","false",60*60*24*365):'';
287
+ Cookies.getCookie("FCFINDER_date_show")==""?Cookies.setCookie("FCFINDER_date_show","false",60*60*24*365):'';
288
+ Cookies.getCookie("FCFINDER_sortable")==""?Cookies.setCookie("FCFINDER_sortable","kind",60*60*24*365):'';
289
+ Cookies.getCookie("FCFINDER_view_type")==""?Cookies.setCookie("FCFINDER_view_type","icon",60*60*24*365):'';
290
+
291
+
292
+
293
+ //HTML'yi Yükle
294
+ $("body").append("<img src='fcfinder/copy.png' />");
295
+ fcfinder.append('<div class="left"><div id="all_folders">'+
296
+ '<ul class="folders">'+
297
+ '<li><a><span class="folder">'+opts.i18n.loading+'<span class="load"></span></span>'+
298
+ '</a></li>'+
299
+ '</div></div>'+
300
+ '<div class="right">'+
301
+ '<ul class="widget">'+
302
+ '<li><a href="fcfinder:up" title="'+opts.i18n.widget_menu.up_folder+'" class="up_folder passive">'+opts.i18n.widget_menu.up_folder+'</a></li>'+
303
+ '<li><a title="'+opts.i18n.widget_menu.upload+'" class="upload">'+
304
+ '<form style="opacity:0;" id="file_upload" method="post" action="" enctype="multipart/form-data">'+
305
+ '<input class="upload_field" name="fcfinder[upload][]" style="height:31px" multiple="multiple" type="file">'+
306
+ '<input name="fcfinder[type]" value="upload" type="hidden">'+
307
+ '<input name="fcfinder[path]" value="" type="hidden">'+
308
+ '</form>'+
309
+ '</a></li>'+
310
+ '<li><a href="fcfinder:newfolder" title="'+opts.i18n.widget_menu.new_folder+'" class="new_folder">'+opts.i18n.widget_menu.new_folder+'</a></li>'+
311
+ '<li><a href="fcfinder:refresh" title="'+opts.i18n.widget_menu.refresh+'" class="refresh">'+opts.i18n.widget_menu.refresh+'</a></li>'+
312
+ '<li><a href="" title="'+opts.i18n.widget_menu.download+'" class="download passive">'+opts.i18n.widget_menu.download+'</a></li>'+
313
+ '<li><a href="fcfinder:info" title="'+opts.i18n.widget_menu.info+'" class="info passive">'+opts.i18n.widget_menu.info+'</a><div>'+
314
+ '<ul>'+
315
+ '<li><a href="fcfinder:preview" title="'+opts.i18n.widget_menu.preview+'" class="preview passive">'+opts.i18n.widget_menu.preview+'</a></li>'+
316
+ '</ul>'+
317
+ '</div></li>'+
318
+ '<li><a href="fcfinder:edit" title="'+opts.i18n.widget_menu.edit+'" class="edit passive">'+opts.i18n.widget_menu.edit+'</a><div>'+
319
+ '<ul>'+
320
+ '<li><a href="fcfinder:copy" title="'+opts.i18n.widget_menu.copy+'" class="copy passive">'+opts.i18n.widget_menu.copy+'</a></li>'+
321
+ '<li><a href="fcfinder:cut" title="'+opts.i18n.widget_menu.cut+'" class="cut passive">'+opts.i18n.widget_menu.cut+'</a></li>'+
322
+ '<li><a href="fcfinder:paste" title="'+opts.i18n.widget_menu.paste+'" class="paste passive">'+opts.i18n.widget_menu.paste+'</a></li>'+
323
+ '<li><a href="fcfinder:duplicate" title="'+opts.i18n.widget_menu.duplicate+'" class="duplicate passive">'+opts.i18n.widget_menu.duplicate+'</a></li>'+
324
+ '<li><a href="fcfinder:rename" title="'+opts.i18n.widget_menu.rename+'" class="rename passive">'+opts.i18n.widget_menu.rename+'</a></li>'+
325
+ '<li><a href="fcfinder:edit" title="'+opts.i18n.widget_menu.edit+'" class="edit passive">'+opts.i18n.widget_menu.edit+'</a></li>'+
326
+ '</ul>'+
327
+ '</div></li>'+
328
+ '<li><a href="fcfinder:delete" title="'+opts.i18n.widget_menu.delete+'" class="delete passive">'+opts.i18n.widget_menu.delete+'</a></li>'+
329
+ '<li><a href="fcfinder:settings" title="'+opts.i18n.widget_menu.settings+'" class="settings">'+opts.i18n.widget_menu.settings+'</a><div>'+
330
+ '<ul>'+
331
+ '<li><a href="fcfinder:iconview" title="'+opts.i18n.widget_menu.icon_view+'" class="icon_view">'+opts.i18n.widget_menu.icon_view+'</a></li>'+
332
+ '<li><a href="fcfinder:listview" title="'+opts.i18n.widget_menu.list_view+'" class="list_view">'+opts.i18n.widget_menu.list_view+'</a></li>'+
333
+ '<li><a data-show="'+Cookies.getCookie("FCFINDER_size_show")+'" href="fcfinder:showsize" title="'+opts.i18n.widget_menu.show_size+'" class="show_size">'+opts.i18n.widget_menu.show_size+'</a></li>'+
334
+ '<li><a data-show="'+Cookies.getCookie("FCFINDER_date_show")+'" href="fcfinder:showdate" title="'+opts.i18n.widget_menu.show_date+'" class="show_date">'+opts.i18n.widget_menu.show_date+'</a></li>'+
335
+ '</ul>'+
336
+ '</div></li>'+
337
+ '<li><a href="fcfinder:sorting" title="'+opts.i18n.widget_menu.sort+'" class="sort">'+opts.i18n.widget_menu.sort+'</a><div>'+
338
+ '<ul>'+
339
+ '<li><a href="fcfinder:namesorter" title="'+opts.i18n.widget_menu.name_sorter+'" class="name_sorter">'+opts.i18n.widget_menu.name_sorter+'</a></li>'+
340
+ '<li><a href="fcfinder:sizesorter" title="'+opts.i18n.widget_menu.size_sorter+'" class="size_sorter">'+opts.i18n.widget_menu.size_sorter+'</a></li>'+
341
+ '<li><a href="fcfinder:datesorter" title="'+opts.i18n.widget_menu.date_sorter+'" class="date_sorter">'+opts.i18n.widget_menu.date_sorter+'</a></li>'+
342
+ '<li><a href="fcfinder:kindsorter" title="'+opts.i18n.widget_menu.kind_sorter+'" class="kind_sorter">'+opts.i18n.widget_menu.kind_sorter+'</a></li>'+
343
+ '</ul>'+
344
+ '</div></li>'+
345
+ '<li><a href="fcfinder:settings" title="'+opts.i18n.widget_menu.about+'" class="about">'+opts.i18n.widget_menu.about+'</a></li>'+
346
+ '</ul>'+
347
+ '<ul class="wrapper">'+
348
+ '<li>'+opts.i18n.loading+'<span class="load"></span></li>'+
349
+ '</ul>'+
350
+ '</div>'+
351
+ '<div class="clear"></div>'+
352
+ '<ul class="bottom">'+opts.i18n.loading+'<span class="load"></span></ul>');
353
+
354
+ //Görünüm Tipini Seç
355
+ if (Cookies.getCookie("FCFINDER_view_type")=="icon"){
356
+ fcfinder.find(".right ul.widget li a.icon_view").addClass("passive");
357
+ fcfinder.find(".right ul.wrapper").addClass("icon_view");
358
+ }
359
+ else{
360
+ fcfinder.find(".right ul.widget li a.list_view").addClass("passive");
361
+ fcfinder.find(".right ul.wrapper").addClass("list_view");
362
+ }
363
+
364
+
365
+
366
+ //Dosya Boyutu ve Tarihi Görünüyormu
367
+ var is_show_size = Cookies.getCookie("FCFINDER_size_show")=="true"?" style=\"display:block;\"":"";
368
+ var is_show_date = Cookies.getCookie("FCFINDER_date_show")=="true"?" style=\"display:block;\"":"";
369
+
370
+
371
+
372
+
373
+ //Çok Kullanılan Elementler
374
+ var ul_folders = fcfinder.children(".left").children("#all_folders").children("ul.folders");
375
+ var ul_wrapper = fcfinder.children(".right").children("ul.wrapper");
376
+
377
+
378
+
379
+ //Dosyaları Yükle
380
+ $.ajax({url:opts.url,dataType:'json',type:'POST',success:function(_data) {
381
+ //İzin Yoksa Hata Ver
382
+ if (_data == "Access not allowed!") {
383
+
384
+ fnc.prepend_dialog(opts.i18n.access_not_head,opts.i18n.access_not_content,{type:"p",dialog_class:'noclose danger',scope_class:'noclose'});
385
+ fcfinder.find(".left #all_folders").html("");
386
+ fcfinder.find(".right ul.wrapper").html("");
387
+ fcfinder.find("ul.bottom").html("");
388
+ }
389
+ else{
390
+ //İzin Varsa Dosyaları Yükle
391
+ if (fcfinder.find("ul.bottom li[data-path='fcdir:/']").size()===0){
392
+ fcfinder.find("ul.bottom").html("").append('<li data-path="fcdir:/">'+opts.i18n.bottom_file.format(_data[1],_data[2])+'</li>');}
393
+ var data = _data[0];
394
+ var main_file_path = data.main_file.path;
395
+
396
+ var main_class = data.main_file.sub_dir ? " opened " : " ";
397
+ ul_folders.html("").append('<li><a id="true" href="fcdir:/" data-show="true" class="active">' +
398
+ '<span class="braca'+main_class+'"></span>'+
399
+ '<span class="folder">'+main_file_path+'</span>'+
400
+ '</a></li>');
401
+
402
+ if($.isEmptyObject(data.directory) && $.isEmptyObject(data.file))
403
+ {
404
+ ul_wrapper.html("").append('<li class="file_wrapper" data-show="true" data-path="fcdir:/">'+opts.i18n.empty_file+'</li>');
405
+ }else
406
+ {
407
+ ul_wrapper.html("").append('<li class="file_wrapper" data-show="true" data-path="fcdir:/"></li>');
408
+ }
409
+
410
+ ul_folders.children("li").append('<ul class="folders"></ul>');
411
+
412
+
413
+ $.each(data.directory,function(key,val){
414
+ ul_wrapper.find(".file_wrapper:first").append('<div data-path="'+val.path+'" data-name="'+key+'" data-size="'+val.size+'" data-size_2="'+val.size_2+'" data-date="'+val.ctime+'" data-kind="'+val.type+'" class="directory"><span class="file_name">'+key+'</span><span class="file_size"'+is_show_size+'>'+val.size+'</span><span class="file_date"'+is_show_date+'>'+val.ctime+'</span></div>');
415
+
416
+ var ths_cls = val.sub_dir? " closed " : "";
417
+ ul_folders.children("li").children("ul.folders").append('<li><a href="'+val.path+'">'+
418
+ '<span class="braca'+ths_cls+'"></span>'+
419
+ '<span class="folder">'+key+'</span>'+
420
+ '</a></li>');
421
+ });
422
+ fnc.appendFiles(data);
423
+ fnc.sortable(Cookies.getCookie("FCFINDER_sortable"));
424
+ if (Cookies.getCookie("FCFINDER_view_type")=="list"){fcfinder.find(".right ul.wrapper li[data-show='true']").prepend('<div class="list_head"><span class="file_name">'+opts.i18n.file_name+'</span><span class="file_size">'+opts.i18n.file_size+'</span><span class="file_date">'+opts.i18n.file_cdate+'</span></div>');}
425
+ if (fcfinder.find(".left #all_folders ul.folders li a.active").attr("href")!="fcdir:/"){ fcfinder.find(".right ul.widget li a.up_folder").removeClass("passive");}
426
+ else{fcfinder.find(".right ul.widget li a.up_folder").addClass("passive");}
427
+ }
428
+
429
+
430
+ }});
431
+
432
+
433
+
434
+ //Yükleme İnputu Seçilince Formu Submit Et
435
+ $body.on("change",fcfinder_selector+" input.upload_field",function(){
436
+ fcfinder.find("input[name='fcfinder[path]']").val(fcfinder.find(".left #all_folders ul li a.active").attr("href"));
437
+ $(this).closest('form').trigger('submit');
438
+ });
439
+
440
+
441
+
442
+
443
+ //Form Submit Ediliyor
444
+ $body.on("submit",fcfinder_selector+" form#file_upload",function(){
445
+ var formData = new FormData(this);
446
+ $.ajax({url:opts.url,dataType:'json',processData: false,contentType: false,type:'POST',data:formData,
447
+ xhr: function () {
448
+ var xhr = new window.XMLHttpRequest();
449
+ xhr.upload.addEventListener("progress", function (evt) {
450
+ if (evt.lengthComputable) {
451
+ var percentComplete = evt.loaded / evt.total;
452
+ if (fcfinder.find("#progress").length === 0) {
453
+ fcfinder.prepend($("<div><dt/><dd/></div>").attr("id", "progress"));
454
+ }
455
+ fcfinder.find("#progress").css({width: percentComplete * 100 + '%'});
456
+ if (percentComplete === 1) {
457
+ fcfinder.find("#progress").width("101%").delay(100).fadeOut(300, function() {
458
+ $(this).remove();
459
+ });
460
+ }
461
+ }
462
+ }, false);
463
+ xhr.addEventListener("progress", function (evt) {
464
+ if (evt.lengthComputable) {
465
+ var percentComplete = evt.loaded / evt.total;
466
+ fcfinder.find('#progress').css({
467
+ width: percentComplete * 100 + '%'
468
+ });
469
+ }
470
+ }, false);
471
+ return xhr;
472
+ },
473
+ success:function(data) {
474
+ if (data[0]=="true"){
475
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
476
+ }else{
477
+ if (data[1]=="0"){
478
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.large_file.format(data[2]),{type:"p",dialog_class:'danger'});
479
+ }
480
+ if (data[1]=="-1"){
481
+ var txt = [];
482
+ $.each(data[2],function(k,v){
483
+ txt.push(v[0]);
484
+ });
485
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.error_type.format(txt.join(", ")),{type:"p",dialog_class:'danger'});
486
+ }
487
+ else{
488
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.load_error.format(data[2]),{type:"p",dialog_class:'danger'});
489
+ }
490
+ }
491
+ }
492
+ });
493
+
494
+ //upload_files
495
+ return false;
496
+ });
497
+
498
+
499
+ //Dosyalar Çift Tıklandığında (Seçilme İşlemi)
500
+ $body.on("dblclick",fcfinder_selector+" .right ul.wrapper li div",function(){
501
+ var path = $(this).attr("data-path");
502
+ if (fcfinder.find(".left #all_folders ul.folders li a[href='"+path+"']").size()>0){
503
+ fcfinder.find(".left #all_folders ul.folders li a[href='"+path+"']").trigger("click");
504
+ }else{
505
+ var data = 'fcfinder[path]='+path+'&fcfinder[type]=path_to_url';
506
+ $.ajax({url:opts.url,dataType:'json',type:'POST',data:data,success:function(data) {
507
+ if (data[0]=="true"){ var url = "//"+data[1];
508
+ //CKEditor ise
509
+ var funcNum = fnc.getUrlParam('CKEditorFuncNum');
510
+ if (funcNum>0)
511
+ {
512
+ window.opener.CKEDITOR.tools.callFunction(funcNum, url);
513
+ window.close();
514
+ }else
515
+ {
516
+ //Değilse getFileCallback Fonksiyonunu Çağır
517
+ if (typeof (opts.getFileCallback) == "function" && opts.getFileCallback)
518
+ {
519
+ opts.getFileCallback(url);
520
+ }
521
+ }
522
+ }
523
+ else{
524
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.select_file_error,{type:"p",dialog_class:'danger'});
525
+ }
526
+ }});
527
+ }
528
+ if (fcfinder.find(".left #all_folders ul.folders li a.active").attr("href")!="fcdir:/"){ fcfinder.find(".right ul.widget li a.up_folder").removeClass("passive");}
529
+ else{fcfinder.find(".right ul.widget li a.up_folder").addClass("passive");}
530
+ });
531
+
532
+
533
+
534
+
535
+ //Klasör Ağacından Klasör Seçildiğinde
536
+ $body.on("click",fcfinder_selector+" ul.folders a",function(){
537
+ var ths = $(this);
538
+ var url = ths.attr("href");
539
+ var id = ths.attr("id");
540
+ var data_path = ths.attr("href");
541
+
542
+
543
+ fcfinder.find(".right ul.wrapper li.file_wrapper").attr("data-show","false").hide();
544
+ fcfinder.find(".right ul.wrapper li.file_wrapper[data-path='" + data_path + "']").attr("data-show","true").show();
545
+ fcfinder.find("ul.folders li a").removeClass("active");
546
+ ths.addClass("active").attr("data-show","true");
547
+ fcfinder.find("ul.bottom li").hide();
548
+ fcfinder.find("ul.bottom li[data-path='"+url+"']").show();
549
+
550
+
551
+
552
+ if (id!="true" && id!="false"){
553
+
554
+ if (ths.children("span.braca").hasClass("closed")){
555
+ ths.children("span.braca").removeClass("closed").addClass("opened");
556
+ }
557
+
558
+ ths.parent("li").append('<span class="folder_load">'+opts.i18n.load_directory+'</span>');
559
+
560
+ var data = 'fcfinder[url]='+url+'&fcfinder[type]=all_file_list';
561
+ $.ajax({url:opts.url,dataType:'json',type:'POST',data:data,success:function(_data) {
562
+
563
+ if (fcfinder.find("ul.bottom li[data-path='"+url+"']").size()===0){
564
+ fcfinder.find("ul.bottom").append('<li data-path="'+url+'">'+opts.i18n.bottom_file.format(_data[1],_data[2])+'</li>');}
565
+ else { fcfinder.find("ul.bottom li").hide(); fcfinder.find("ul.bottom li[data-path='"+url+"']").show();}
566
+
567
+ var data = _data[0];
568
+ if (!$.isEmptyObject(data.directory))
569
+ {
570
+ ths.parent("li").append("<ul class=\"folders\"></ul>");
571
+ $.each(data.directory,function(key,val){
572
+ var ths_cls = val.sub_dir? " closed " : "";
573
+ ths.parent("li").children("ul.folders").append('<li><a href="'+val.path+'">'+
574
+ '<span class="braca '+ths_cls+'"></span>'+
575
+ '<span class="folder">'+key+'</span>'+
576
+ '</a></li>');
577
+ });
578
+ }
579
+
580
+ if ($.isEmptyObject(data.directory) && $.isEmptyObject(data.file))
581
+ {
582
+ fcfinder.find(".right ul.wrapper li.file_wrapper").hide();
583
+ if (ul_wrapper.find("li.file_wrapper[data-path='"+data_path+"']").size()=="0"){
584
+ ul_wrapper.append('<li class="file_wrapper" data-show="true" data-path="'+data_path+'">'+opts.i18n.empty_dir+'</li>').show();
585
+ }else{
586
+ ul_wrapper.find("li.file_wrapper[data-path='"+data_path+"']").show();
587
+ }
588
+ ths.removeAttr("id").removeAttr("data-show");
589
+ }else {
590
+ fcfinder.find(".right ul.wrapper li.file_wrapper").hide();
591
+ if (ul_wrapper.find("li.file_wrapper[data-path='"+data_path+"']").size()=="0"){
592
+ ul_wrapper.append('<li class="file_wrapper" data-show="true" data-path="'+data_path+'"></li>').show();
593
+ }else{
594
+ ul_wrapper.find("li.file_wrapper[data-path='"+data_path+"']").show();
595
+ }
596
+
597
+ if (ul_wrapper.find(".file_wrapper:last").html()!=""){ul_wrapper.find(".file_wrapper:last").html("");}
598
+ $.each(data.directory,function(key,val){
599
+ ul_wrapper.find(".file_wrapper:last").append('<div data-path="'+val.path+'" data-name="'+key+'" data-size="'+val.size+'" data-size_2="'+val.size_2+'" data-kind="'+val.type+'" data-date="'+val.ctime+'" class="directory"><span class="file_name">'+key+'</span><span class"file_size"'+is_show_size+'>'+val.size+'</span><span class="file_date"'+is_show_date+'>'+val.ctime+'</span></div>');
600
+ });
601
+
602
+ fnc.appendFiles(data);
603
+ fnc.sortable(Cookies.getCookie("FCFINDER_sortable"));
604
+ if (Cookies.getCookie("FCFINDER_view_type")=="list"){fcfinder.find(".right ul.wrapper li[data-show='true']").prepend('<div class="list_head"><span class="file_name">'+opts.i18n.file_name+'</span><span class="file_size">'+opts.i18n.file_size+'</span><span class="file_date">'+opts.i18n.file_cdate+'</span></div>');}
605
+ }
606
+
607
+ ths.next("span.folder_load").remove();
608
+
609
+ }});
610
+ ths.attr("id","true");
611
+ }
612
+
613
+ if (fcfinder.find(".left #all_folders ul.folders li a.active").attr("href")!="fcdir:/"){ fcfinder.find(".right ul.widget li a.up_folder").removeClass("passive");}
614
+ else{fcfinder.find(".right ul.widget li a.up_folder").addClass("passive");}
615
+ return false;
616
+ });
617
+
618
+
619
+ //Dosyaya yada Klasöre Tıklandığında
620
+ $body.on("click",fcfinder_selector+" .right ul.wrapper li div",function(){
621
+ var ths = $(this);
622
+ if (ths.attr("class")!="list_head"){
623
+ fcfinder.find(".right ul.wrapper li div").removeClass("active");
624
+ ths.addClass("active");
625
+
626
+ if (fcfinder.find("ul.bottom li[data-name='"+ths.attr("data-path")+"']").size()===0){
627
+ fcfinder.find("ul.bottom li").hide();
628
+ fcfinder.find("ul.bottom").append('<li style="display:block;" data-name="'+ths.attr("data-path")+'">'+ths.attr("data-name")+' ( '+ths.attr("data-size")+', '+ths.attr("data-date")+' )</li>');}
629
+ else { fcfinder.find("ul.bottom li").hide(); fcfinder.find("ul.bottom li[data-name='"+ths.attr("data-path")+"']").show();}
630
+
631
+ if (fcfinder.find(".right ul.wrapper li div.active").attr("data-new")!="new_folder")
632
+ {if (fcfinder.find(".right ul.wrapper li div.active").attr("data-kind")=="image_file"){fcfinder.find(".right ul.widget li a.edit").removeClass("passive"); }
633
+ fcfinder.find(".right ul.widget li a.download , " +
634
+ ".right ul.widget li a.info , " +
635
+ ".right ul.widget li a.preview , " +
636
+ //".right ul.widget li a.edit , " +
637
+ ".right ul.widget li a.copy , " +
638
+ ".right ul.widget li a.cut , " +
639
+ //".right ul.widget li a.paste , " +
640
+ ".right ul.widget li a.duplicate , " +
641
+ ".right ul.widget li a.rename , " +
642
+ ".right ul.widget li a.delete").removeClass("passive");
643
+ }
644
+ }
645
+
646
+ });
647
+
648
+ //Klasör Ağacında Artı yada Eksiye Basıldığında
649
+ $body.on("click",fcfinder_selector+' .left #all_folders ul.folders li a span.braca',function(){
650
+
651
+ var ths = $(this);
652
+ var _ths = $(this).parent("a");
653
+ var id = _ths.attr("id");
654
+
655
+
656
+ if (id=="true"){
657
+ _ths.next("ul.folders").hide();
658
+ _ths.attr("id","false");
659
+
660
+
661
+ }
662
+ else if(id=="false"){
663
+ _ths.next("ul.folders").show();
664
+ _ths.attr("id","true");
665
+
666
+ }
667
+
668
+
669
+ fcfinder.find("ul.folders li a").removeClass("active");
670
+ _ths.addClass("active");
671
+
672
+ if (ths.hasClass("closed")){
673
+ ths.removeClass("closed").addClass("opened");
674
+ }else {
675
+ ths.removeClass("opened").addClass("closed");
676
+ }
677
+
678
+ if (fcfinder.find(".left #all_folders ul.folders li a.active").attr("href")!="fcdir:/"){ fcfinder.find(".right ul.widget li a.up_folder").removeClass("passive");}
679
+ else{fcfinder.find(".right ul.widget li a.up_folder").addClass("passive");}
680
+ });
681
+
682
+
683
+ //Dosya Boyutu Göster / Gizle
684
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.show_size",function(){
685
+ if (Cookies.getCookie('FCFINDER_view_type')=="icon"){
686
+ var show = $(this).attr("data-show");
687
+ if (show=="false") {
688
+ fcfinder.find(".right ul.wrapper li div span.file_size").css({"display":"block"});
689
+ fcfinder.find(".right ul.wrapper li div").height(fcfinder.find(".right ul.wrapper li div").height()+16);
690
+ $(this).attr("data-show","true");
691
+ Cookies.setCookie("FCFINDER_size_show","true",60*60*24*365);
692
+ is_show_size = fcfinder.find(".right ul.widget li a.show_size").attr("data-show")=="true"?" style=\"display:block;\"":"";
693
+ }
694
+ else {
695
+ fcfinder.find(".right ul.wrapper li div span.file_size").hide();
696
+ fcfinder.find(".right ul.wrapper li div").height(fcfinder.find(".right ul.wrapper li div").height()-16);
697
+ $(this).attr("data-show","false");
698
+ Cookies.setCookie("FCFINDER_size_show","false",60*60*24*365);
699
+ is_show_size = fcfinder.find(".right ul.widget li a.show_size").attr("data-show")=="false"?" style=\"display:block;\"":"";
700
+ }
701
+ }
702
+ return false;
703
+ });
704
+
705
+
706
+ //Dosya Tarihi Göster / Gizle
707
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.show_date",function(){
708
+ if (Cookies.getCookie('FCFINDER_view_type')=="icon"){
709
+ var show = $(this).attr("data-show");
710
+ if (show=="false") {
711
+ fcfinder.find(".right ul.wrapper li div span.file_date").css({"display":"block"});
712
+ fcfinder.find(".right ul.wrapper li div").height(fcfinder.find(".right ul.wrapper li div").height()+32);
713
+ $(this).attr("data-show","true");
714
+ Cookies.setCookie("FCFINDER_date_show","true",60*60*24*365);
715
+ is_show_date = fcfinder.find(".right ul.widget li a.show_date").attr("data-show")=="true"?" style=\"display:block;\"":"";
716
+
717
+ }
718
+ else {
719
+ fcfinder.find(".right ul.wrapper li div span.file_date").hide();
720
+ fcfinder.find(".right ul.wrapper li div").height(fcfinder.find(".right ul.wrapper li div").height()-32);
721
+ $(this).attr("data-show","false");
722
+ Cookies.setCookie("FCFINDER_date_show","false",60*60*24*365);
723
+ is_show_date = fcfinder.find(".right ul.widget li a.show_date").attr("data-show")=="false"?" style=\"display:block;\"":"";
724
+ }
725
+ }
726
+ return false;
727
+ });
728
+
729
+ //Yeni Klasör Oluşturma
730
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.new_folder",function(){
731
+ var dir = fcfinder.find(".right ul.wrapper li[data-show='true']");
732
+ if (dir.html()==opts.i18n.empty_dir){dir.html("");}
733
+ fcfinder.find(".right ul.wrapper li div").removeClass("active");
734
+ var html = '<div data-new="new_folder" data-path="" data-name="" data-size="0" data-size_2="0" data-date="" data-kind="_directory" class="active directory"><span class="file_name"><form id="new_directory"><input type="text" name="fcfinder[directory_name]" /><input type="hidden" name="fcfinder[type]" value="create_directory"/> <input type="hidden" name="fcfinder[path]" value="'+dir.attr("data-path")+'"></form></span><span class="file_size"></span><span class="file_date"></span></div>';
735
+ if (Cookies.getCookie('FCFINDER_view_type')=="list"){
736
+ dir.find(".list_head").after(html);
737
+ }else {
738
+ dir.prepend(html);
739
+ }
740
+ dir.find("input").select();
741
+
742
+ return false;
743
+ });
744
+
745
+ //Sayfa Yenileme
746
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.refresh",function(){
747
+ var left_wrapper = fcfinder.find(".left #all_folders ul li a.active");
748
+ var right_wrapper = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']");
749
+ if (right_wrapper.attr("data-path") == left_wrapper.attr("href")){
750
+ var path = right_wrapper.attr("data-path");
751
+ var data = "fcfinder[type]=refresh&fcfinder[path]="+path;
752
+ left_wrapper.next("ul").html("")
753
+ right_wrapper.html("")
754
+ $.ajax({url:opts.url,dataType:'json',type:'POST',data:data,success:function(data) {
755
+
756
+ if ($.isEmptyObject(data.directory) && $.isEmptyObject(data.file))
757
+ {
758
+ right_wrapper.html(opts.i18n.empty_dir);
759
+ }else {
760
+ if (right_wrapper.html()!=""){right_wrapper.html("");}
761
+ $.each(data.directory,function(key,val){
762
+ var ths_cls = val.sub_dir? " closed " : "";
763
+ left_wrapper.next("ul.folders").append('<li><a href="'+val.path+'">'+
764
+ '<span class="braca '+ths_cls+'"></span>'+
765
+ '<span class="folder">'+key+'</span>'+
766
+ '</a></li>');
767
+
768
+ right_wrapper.append('<div data-path="'+val.path+'" data-kind="'+val.type+'" data-name="'+key+'" data-size="'+val.size+'" data-size_2="'+val.size_2+'" data-date="'+val.ctime+'" class="directory"><span class="file_name">'+key+'</span><span class="file_size"'+is_show_size+'>'+val.size+'</span><span class="file_date"'+is_show_date+'>'+val.ctime+'</span></div>');
769
+ });
770
+
771
+ fnc.appendFiles(data,right_wrapper);
772
+ fnc.sortable(Cookies.getCookie("FCFINDER_sortable"));
773
+ if (Cookies.getCookie("FCFINDER_view_type")=="list"){fcfinder.find(".right ul.wrapper li[data-show='true']").prepend('<div class="list_head"><span class="file_name">'+opts.i18n.file_name+'</span><span class="file_size">'+opts.i18n.file_size+'</span><span class="file_date">'+opts.i18n.file_cdate+'</span></div>');}
774
+ }
775
+ }});
776
+ }else {
777
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.error_msg,{type:"p",dialog_class:'danger'});
778
+ }
779
+
780
+ return false;
781
+ });
782
+
783
+
784
+
785
+ //Dosya İndirme
786
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.download",function(){
787
+ if (!$(this).hasClass("passive")){
788
+ var path = fcfinder.find(".right ul.wrapper li div.active").attr("data-path").replace("fcdir:/","");
789
+ var data = "fcfinder[type]=download&fcfinder[path]="+fcfinder.find(".right ul.wrapper li div.active").attr("data-path");
790
+ $.ajax({
791
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
792
+
793
+ if (data[0]=="false"){
794
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.download_error.format(data[2]),{type:"p",dialog_class:'danger'});
795
+ }
796
+ else{
797
+ window.open(location+"/download/"+data.file);
798
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
799
+ }
800
+ }});
801
+ }
802
+ return false;
803
+ });
804
+
805
+
806
+
807
+
808
+
809
+ //Üst Dizin'e Çıkma
810
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.up_folder",function(){
811
+ if (!$(this).hasClass("passive")){
812
+ var up_path = fcfinder.find(".left #all_folders ul.folders li a.active").attr("href").split("/");
813
+ up_path.pop();
814
+ var data_path = up_path.length > 1 ? up_path.join("/") : up_path[0]+"/";
815
+ var ths = fcfinder.find(".left #all_folders ul.folders li a[href='"+data_path+"']");
816
+ if (data_path=="fcdir:/"){$(this).addClass("passive");}
817
+ fcfinder.find(".right ul.wrapper li.file_wrapper").attr("data-show","false").hide();
818
+ fcfinder.find(".right ul.wrapper li.file_wrapper[data-path='" + data_path + "']").attr("data-show","true").show();
819
+ fcfinder.find("ul.folders li a").removeClass("active");
820
+ ths.addClass("active").attr("data-show","true");
821
+
822
+ if (fcfinder.find("ul.bottom li[data-path='"+data_path+"']").size()===0){
823
+ fcfinder.find("ul.bottom li").hide();}
824
+ else { fcfinder.find("ul.bottom li").hide(); fcfinder.find("ul.bottom li[data-path='"+data_path+"']").show();}
825
+
826
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
827
+ }
828
+ return false;
829
+ });
830
+
831
+
832
+
833
+ //Dosya Bilgilerini Göster
834
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.info",function(){
835
+ if (!$(this).hasClass("passive")){
836
+ var file = fcfinder.find(".right ul.wrapper li div.active");
837
+ var kind = file.attr("data-kind");
838
+ var data = "fcfinder[type]=info&fcfinder[file]="+file.attr("data-path")+"&kind="+kind;
839
+ fnc.prepend_dialog(opts.i18n.dialog.info_h,opts.i18n.loading,{type:"p"});
840
+ $.ajax({
841
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
842
+
843
+ var permissions="";
844
+ var _class = "";
845
+ if (data.permissions.read == "true"){ permissions = opts.i18n.read_permission; }
846
+ if (data.permissions.write == "true"){ permissions = opts.i18n.write_permission; }
847
+ if (data.permissions.write == "true" && data.permissions.read == "true"){ permissions = opts.i18n.read_write_permission; }
848
+ if (data.mime_type == "directory") { data.mime_type = opts.i18n.directory; _class = " directory"; }
849
+ else { _class = " "+file.removeClass("active").attr("class");
850
+ file.addClass("active");}
851
+ $(fcfinder_selector).find(".dialog").html('<h1>'+opts.i18n.dialog.info_h+'</h1>' +
852
+ '<div class="file_bg'+_class+'" style=\''+file.attr("style")+'\'></div>'+
853
+ '<span class="file_name">'+file.attr("data-name")+'</span><span class="file_type">'+data.mime_type+'</span>'+
854
+ '<ul class="file_info">' +
855
+ '<li><span>'+opts.i18n.dialog.info_size+'</span>'+data.size+'</li>' +
856
+ '<li><span>'+opts.i18n.dialog.info_addres+'</span>'+data.path+'</li>' +
857
+ '<li><span>'+opts.i18n.dialog.info_url+'</span><a target="_blank" href="//'+data.url+'">'+file.attr("data-name")+'</a></li>' +
858
+ '<li><span>'+opts.i18n.dialog.info_cdate+'</span>'+data.ctime+'</li>' +
859
+ '<li><span>'+opts.i18n.dialog.info_mdate+'</span>'+data.mtime+'</li>' +
860
+ '<li><span>'+opts.i18n.dialog.info_file_permission+'</span>'+permissions+'</li>' +
861
+ '</ul>' +
862
+ '<a href="#" class="close">'+opts.i18n.dialog.close+'</a>');
863
+ fnc.fcfinderresize();
864
+ }});
865
+ }
866
+ return false;
867
+ });
868
+
869
+
870
+ //Dosyayı Önizle
871
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.preview",function(){
872
+ if (!$(this).hasClass("passive")){
873
+ var file = fcfinder.find(".right ul.wrapper li div.active");
874
+ var kind = file.attr("data-kind");
875
+ var data = "fcfinder[type]=preview&fcfinder[file]="+file.attr("data-path")+"&kind="+kind;
876
+ $(fcfinder_selector).prepend('<div class="dialog-scope"></div>' +
877
+ '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.preview_h+'</h1>' +
878
+ '<p>'+opts.i18n.loading+'<span class="load"></span> </p>' +
879
+ '</div>');
880
+ fcfinder.find(".dialog").fadeIn(300);
881
+ $.ajax({
882
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
883
+
884
+ var _class = "";
885
+ if (data.mime_type == "directory") { data.mime_type = opts.i18n.directory; _class = " directory"; }
886
+ else { _class = " "+file.removeClass("active").attr("class");
887
+ file.addClass("active");}
888
+
889
+ if (kind == "image_file"){
890
+ $(fcfinder_selector).find(".dialog").html('<h1>'+file.attr("data-name")+'</h1>' +
891
+ '<img style="width:'+$(window).width()/4+'px;" class="preview" src="//'+data.url+'" />' +
892
+ '<div class="clear"></div>'+
893
+ '<a href="#" class="close">'+opts.i18n.dialog.close+'</a>' +
894
+ '<div class="clear"></div>');
895
+ var img_width = fcfinder.find(".dialog img").width();
896
+ fcfinder.find(".dialog").css({"width":img_width+100+"px"});
897
+ fcfinder.find(".dialog").ortala();
898
+ }
899
+ else{
900
+ $(fcfinder_selector).find(".dialog").html('<h1>'+opts.i18n.dialog.preview_h+'</h1>' +
901
+ '<div class="file_bg'+_class+'" style="'+file.attr("style")+'"></div>'+
902
+ '<span class="file_name">'+file.attr("data-name")+'</span><span class="file_type">'+data.mime_type+'</span>'+
903
+ '<ul class="file_info">' +
904
+ '<li><span>'+opts.i18n.dialog.preview_size+'</span>'+data.size+'</li>' +
905
+ '<li><span>'+opts.i18n.dialog.preview_addres+'</span>'+data.path+'</li>' +
906
+ '<li><span>'+opts.i18n.dialog.preview_url+'</span><a target="_blank" href="//'+data.url+'">'+file.attr("data-name")+'</a></li>' +
907
+ '<li><span>'+opts.i18n.dialog.preview_cdate+'</span>'+data.ctime+'</li>' +
908
+ '<li><span>'+opts.i18n.dialog.preview_mdate+'</span>'+data.mtime+'</li>' +
909
+ '</ul>' +
910
+ '<a href="#" class="close">'+opts.i18n.dialog.close+'</a>');
911
+ fcfinder.find(".dialog").ortala();
912
+ }
913
+ }});
914
+ fnc.fcfinderresize();
915
+ }
916
+ return false;
917
+ });
918
+
919
+ //Dosya Kopyala
920
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.copy",function(){
921
+ if (!$(this).hasClass("passive")){
922
+ var file = fcfinder.find(".right ul.wrapper li div.active");
923
+ var copy_file_path = file.attr("data-path");
924
+ if (fcfinder.find("#copy_form").size()>0){ fcfinder.find("#copy_form").remove(); }
925
+ fcfinder.append('<form id="copy_form"><input type="hidden" name="copy_file_path" value="'+copy_file_path+'" /><input type="hidden" name="copy_type" value="copy" /></form>');
926
+ fcfinder.find(".right ul.widget li a.paste").removeClass("passive");
927
+ }
928
+ return false;
929
+ });
930
+
931
+
932
+ //Dosya Kesme
933
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.cut",function(){
934
+ if (!$(this).hasClass("passive")){
935
+ fcfinder.find(".right ul.wrapper li div").removeClass("cutting");
936
+ var file = fcfinder.find(".right ul.wrapper li div.active");
937
+ file.addClass("cutting");
938
+ var copy_file_path = file.attr("data-path");
939
+ if (fcfinder.find("#copy_form").size()>0){ fcfinder.find("#copy_form").remove(); }
940
+ fcfinder.append('<form id="copy_form"><input type="hidden" name="copy_file_path" value="'+copy_file_path+'" /><input type="hidden" name="copy_type" value="cut" /></form>');
941
+ fcfinder.find(".right ul.widget li a.paste").removeClass("passive");
942
+ }
943
+ return false;
944
+ });
945
+
946
+ //Dosya Yapıştırma
947
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.paste",function(){
948
+ var $ths = $(this);
949
+ if (!$ths.hasClass("passive")){
950
+ var $input = fcfinder.find("input[name='copy_file_path']");
951
+ var $type = fcfinder.find("input[name='copy_type']").val();
952
+ var copy_file_path = $input.val();
953
+ var this_folder_path = fcfinder.find(".left #all_folders ul.folders li a.active").attr("href");
954
+ var data;
955
+ var data_input;
956
+ if ($type=="copy"){
957
+ data = "fcfinder[type]=copy&fcfinder[copy_file_path]="+copy_file_path+"&fcfinder[this_folder_path]="+this_folder_path;
958
+ data_input = "fcfinder[type]=copy!&fcfinder[copy_file_path]="+copy_file_path+"&fcfinder[this_folder_path]="+this_folder_path;
959
+ }
960
+ if ($type=="cut") {
961
+ data = "fcfinder[type]=cut&fcfinder[cut_file_path]="+copy_file_path+"&fcfinder[this_folder_path]="+this_folder_path;
962
+ data_input = "fcfinder[type]=cut!&fcfinder[cut_file_path]="+copy_file_path+"&fcfinder[this_folder_path]="+this_folder_path;
963
+ }
964
+
965
+ $.ajax({
966
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data){
967
+
968
+ if (data[0]=="true")
969
+ {if (fcfinder.find(".right ul.wrapper li div.cutting")){fcfinder.find(".right ul.wrapper li div.cutting").remove(); }
970
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
971
+ }else {
972
+ if (data[1] == "0"){
973
+ $(fcfinder_selector).prepend('<div class="dialog-scope"></div>' +
974
+ '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.file_replace_h+'</h1>' +
975
+ '<p>'+opts.i18n.dialog.file_replace_content.format(copy_file_path.split("/").pop()) +
976
+ '<input type="hidden" name="data_input" value="'+data_input+'" /> </p>' +
977
+ '<a class="close" href="#">'+opts.i18n.dialog.cancel+'</a>' +
978
+ '<a class="btn file_copy_ok" href="#">'+opts.i18n.dialog.ok+'</a>' +
979
+ '</div>');
980
+ fcfinder.find(".dialog").fadeIn(300);
981
+ fcfinder.find(".dialog").ortala();
982
+ }
983
+ else{
984
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.copy_error.format(data[2]),{type:"p",dialog_class:'danger'});
985
+ }
986
+ }
987
+ }});
988
+ $input.remove();
989
+ $ths.addClass("passive");
990
+
991
+ }
992
+ return false;
993
+ });
994
+
995
+
996
+ //Dosya Yapıştırma (Aynı İsimde Dosya Değiştirme)
997
+ $body.on("click",fcfinder_selector+" .dialog a.file_copy_ok",function(){
998
+ var data = fcfinder.find(".dialog input[name='data_input']").val();
999
+ $.ajax({
1000
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data){
1001
+
1002
+ if (data[0]=="true")
1003
+ {if (fcfinder.find(".right ul.wrapper li div.cutting")){fcfinder.find(".right ul.wrapper li div.cutting").remove(); }
1004
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1005
+ }else {
1006
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.replace_error.format(data[2]),{type:"p",dialog_class:'danger'});
1007
+ }
1008
+ }});
1009
+ return false;
1010
+ });
1011
+
1012
+
1013
+
1014
+ //Dosya Kopyasını Oluşturma
1015
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.duplicate",function(){
1016
+ if (!$(this).hasClass("passive")){
1017
+ var file_path = fcfinder.find(".right ul.wrapper li div.active").attr("data-path");
1018
+ var data = "fcfinder[type]=duplicate&fcfinder[file_path]="+file_path;
1019
+ $.ajax({
1020
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data){
1021
+
1022
+ if (data[0]=="true")
1023
+ {
1024
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1025
+ }else
1026
+ {
1027
+ //Kopyası Oluşmadı
1028
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.duplicate_error.format(data[2]),{type:"p",dialog_class:'danger'});
1029
+ }
1030
+ }});
1031
+
1032
+ }
1033
+ return false;
1034
+ });
1035
+
1036
+
1037
+
1038
+ //Dosya Yeniden Adlandırma
1039
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.rename",function(){
1040
+ if (!$(this).hasClass("passive")){
1041
+ var file = fcfinder.find(".right ul.wrapper li div.active");
1042
+ file.attr("data-rename","true");
1043
+ file.children("span.file_name").html('<form id="file_rename"><input type="text" id=\"file_name\" data-value="'+file.children("span.file_name").html()+'" name="fcfinder[file_name]" value="'+file.children("span.file_name").html()+'" /><input type="hidden" name="fcfinder[type]" value="file_rename"/> <input type="hidden" name="fcfinder[path]" value="'+file.attr("data-path")+'"></form>');
1044
+
1045
+ var field = file.find("span.file_name form input[name='fcfinder[file_name]']");
1046
+ if (file.hasClass("directory")){
1047
+ field.select();
1048
+ }else{
1049
+
1050
+ field[0].focus();
1051
+ field[0].setSelectionRange(0,(field.val().length-(field.val().split(".").slice(-1).toString().length+1)));
1052
+ }
1053
+
1054
+
1055
+ }
1056
+ return false;
1057
+ });
1058
+
1059
+
1060
+
1061
+ //Dosya Yeniden Adlandırma Form Submit
1062
+ $body.on("submit",fcfinder_selector+" #file_rename",function(){
1063
+ var data = $(this).serialize();
1064
+ $.ajax({
1065
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
1066
+ if (data[0]=="true"){
1067
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1068
+ }else {
1069
+ //Bir hata meydana geldi adı değiştirilemedi
1070
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.rename_error.format(data[2]),{type:"p",dialog_class:'danger'});
1071
+ }
1072
+ }});
1073
+ return false;
1074
+ });
1075
+
1076
+
1077
+ //Dosya Düzenleme (pixlr)
1078
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.edit",function(){
1079
+ if (!$(this).hasClass("passive")){
1080
+ var data = "fcfinder[type]=edit_file&fcfinder[file_path]="+fcfinder.find(".right ul.wrapper li div.active").attr("data-path");
1081
+ $.ajax({
1082
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
1083
+
1084
+ if (data[0]=="false"){
1085
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.edit_error,{type:"p",dialog_class:'danger'});
1086
+ }else {
1087
+ window.open("http://apps.pixlr.com/editor/?s=c&image="+encodeURIComponent(data.url)+"&title="+encodeURIComponent(data.title));
1088
+ }
1089
+ }});
1090
+ }
1091
+ return false;
1092
+ });
1093
+
1094
+
1095
+
1096
+ //Dosya Silme
1097
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.delete",function(){
1098
+ if (!$(this).hasClass("passive")){
1099
+ var file = fcfinder.find(".right ul.wrapper li div.active");
1100
+ var file_path = file.attr("data-path");
1101
+ if (fcfinder.find("form#delete_file_form").size()>0){fcfinder.find("form#delete_file_form").remove();}
1102
+ fcfinder.append('<form id="delete_file_form"><input name="file_path" value="'+file_path+'" type="hidden" /></form>');
1103
+ $(fcfinder_selector).prepend('<div class="dialog-scope"></div>' +
1104
+ '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.delete_h.format(file.attr("data-name"))+'</h1>' +
1105
+ '<p>'+opts.i18n.dialog.delete_content.format(file.attr("data-name"))+'</p>'+
1106
+ '<a class="close" href="#">'+opts.i18n.dialog.close+'</a>' +
1107
+ '<a class="btn file_delete" href="#">'+opts.i18n.dialog.delete+'</a>' +
1108
+ '</div>');
1109
+ fcfinder.find(".dialog").fadeIn(300);
1110
+ fcfinder.find(".dialog").ortala();
1111
+ }
1112
+ return false;
1113
+ });
1114
+
1115
+
1116
+ //Dosya Silme Onayı
1117
+ $body.on("click",fcfinder_selector+" .dialog a.file_delete",function(){
1118
+ var file_path = fcfinder.find("form#delete_file_form input[name='file_path']").val();
1119
+ var data = "fcfinder[type]=delete&fcfinder[file_path]="+file_path;
1120
+ fcfinder.find(".dialog a.close").trigger("click");
1121
+ $.ajax({
1122
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
1123
+ if (data[0]=="true"){
1124
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1125
+ }else {
1126
+ if (data[1]=="0"){
1127
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.delete_error_0,{type:"p",dialog_class:'danger'});
1128
+ }
1129
+ else {
1130
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.delete_error_1.format(data[2]),{type:"p",dialog_class:'danger'});
1131
+ }
1132
+ }
1133
+ }});
1134
+ return false;
1135
+ });
1136
+
1137
+
1138
+
1139
+
1140
+ //Ada Göre Dosya Listeleme
1141
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.name_sorter",function(){
1142
+ if (!$(this).hasClass("passive")){
1143
+ var $ul = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']"),
1144
+ $li = $ul.find("div");
1145
+ if (!$(this).hasClass("z_a"))
1146
+ {
1147
+ $li.sort(function(a,b){
1148
+ var an = a.getAttribute('data-name'),
1149
+ bn = b.getAttribute('data-name');
1150
+ if(an > bn) { return 1;}
1151
+ if(an < bn) {return -1;}
1152
+ return 0;
1153
+ });
1154
+ $li.detach().appendTo($ul);
1155
+ $(this).removeClass("a_z").addClass("z_a");
1156
+ }else {
1157
+ $li.sort(function(a,b){
1158
+ var an = a.getAttribute('data-name'),
1159
+ bn = b.getAttribute('data-name');
1160
+ if(an < bn) { return 1;}
1161
+ if(an > bn) {return -1;}
1162
+ return 0;
1163
+ });
1164
+ $li.detach().appendTo($ul);
1165
+ $(this).removeClass("z_a").addClass("a_z");
1166
+ }
1167
+ }
1168
+ Cookies.setCookie("FCFINDER_sortable","name",60*60*24*365);
1169
+ return false;
1170
+ });
1171
+
1172
+
1173
+
1174
+ //Boyuta Göre Dosya Listeleme
1175
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.size_sorter",function(){
1176
+ if (!$(this).hasClass("passive")){
1177
+ var $ul = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']"),
1178
+ $li = $ul.find("div");
1179
+ if (!$(this).hasClass("z_a"))
1180
+ {
1181
+ $li.sort(function(a,b){
1182
+ var an = fnc.toInt(a.getAttribute('data-size_2')),
1183
+ bn = fnc.toInt(b.getAttribute('data-size_2'));
1184
+ if(an < bn) { return 1;}
1185
+ if(an > bn) {return -1;}
1186
+ return 0;
1187
+ });
1188
+ $li.detach().appendTo($ul);
1189
+ $(this).removeClass("a_z").addClass("z_a");
1190
+ }else {
1191
+ $li.sort(function(a,b){
1192
+ var an = fnc.toInt(a.getAttribute('data-size_2')),
1193
+ bn = fnc.toInt(b.getAttribute('data-size_2'));
1194
+ if(an > bn) { return 1;}
1195
+ if(an < bn) {return -1;}
1196
+ return 0;
1197
+ });
1198
+ $li.detach().appendTo($ul);
1199
+ $(this).removeClass("z_a").addClass("a_z");
1200
+ }
1201
+ }
1202
+ Cookies.setCookie("FCFINDER_sortable","size",60*60*24*365);
1203
+ return false;
1204
+ });
1205
+
1206
+
1207
+
1208
+ //Tarihine Göre Dosya Listeleme
1209
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.date_sorter",function(){
1210
+ if (!$(this).hasClass("passive")){
1211
+ var $ul = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']"),
1212
+ $li = $ul.find("div");
1213
+ if (!$(this).hasClass("z_a"))
1214
+ {
1215
+ $li.sort(function(a,b){
1216
+ var an = fnc.toDate(a.getAttribute('data-date')),
1217
+ bn = fnc.toDate(b.getAttribute('data-date'));
1218
+ if(an > bn) { return 1;}
1219
+ if(an < bn) {return -1;}
1220
+ return 0;
1221
+ });
1222
+ $li.detach().appendTo($ul);
1223
+ $(this).removeClass("a_z").addClass("z_a");
1224
+ }else {
1225
+ $li.sort(function(a,b){
1226
+ var an = fnc.toDate(a.getAttribute('data-date')),
1227
+ bn = fnc.toDate(b.getAttribute('data-date'));
1228
+ if(an < bn) { return 1;}
1229
+ if(an > bn) {return -1;}
1230
+ return 0;
1231
+ });
1232
+ $li.detach().appendTo($ul);
1233
+ $(this).removeClass("z_a").addClass("a_z");
1234
+ }
1235
+ }
1236
+ Cookies.setCookie("FCFINDER_sortable","date",60*60*24*365);
1237
+ return false;
1238
+ });
1239
+
1240
+ //Türüne Göre Dosya Listeleme
1241
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.kind_sorter",function(){
1242
+ if (!$(this).hasClass("passive")){
1243
+ var $ul = fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']"),
1244
+ $li = $ul.find("div");
1245
+ if (!$(this).hasClass("z_a"))
1246
+ {
1247
+ $li.sort(function(a,b){
1248
+ var an = a.getAttribute('data-kind'),
1249
+ bn = b.getAttribute('data-kind');
1250
+ if(an > bn) { return 1;}
1251
+ if(an < bn) {return -1;}
1252
+ return 0;
1253
+ });
1254
+ $li.detach().appendTo($ul);
1255
+ $(this).removeClass("a_z").addClass("z_a");
1256
+ }else {
1257
+ $li.sort(function(a,b){
1258
+ var an = a.getAttribute('data-kind'),
1259
+ bn = b.getAttribute('data-kind');
1260
+ if(an < bn) { return 1;}
1261
+ if(an > bn) {return -1;}
1262
+ return 0;
1263
+ });
1264
+ $li.detach().appendTo($ul);
1265
+ $(this).removeClass("z_a").addClass("a_z");
1266
+ }
1267
+ }
1268
+ Cookies.setCookie("FCFINDER_sortable","kind",60*60*24*365);
1269
+ return false;
1270
+ });
1271
+
1272
+
1273
+
1274
+
1275
+ //Simge Görünümü
1276
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.icon_view",function(){
1277
+ if (!$(this).hasClass("passive")) {
1278
+ fcfinder.find(".right ul.wrapper").removeClass("list_view").addClass("icon_view");
1279
+ Cookies.setCookie("FCFINDER_view_type","icon",60*60*24*365);
1280
+ $(this).addClass("passive");
1281
+ fcfinder.find(".right ul.widget li a.list_view").removeClass("passive");
1282
+ fcfinder.find(".right ul.wrapper li div.list_head").remove();
1283
+ }
1284
+ return false;
1285
+ });
1286
+
1287
+ //Liste Görünümü
1288
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.list_view",function(){
1289
+ if (!$(this).hasClass("passive")) {
1290
+ fcfinder.find(".right ul.wrapper li[data-show='true']").prepend('<div class="list_head"><span class="file_name">'+opts.i18n.file_name+'</span><span class="file_size">'+opts.i18n.file_size+'</span><span class="file_date">'+opts.i18n.file_cdate+'</span></div>');
1291
+ fcfinder.find(".right ul.wrapper").removeClass("icon_view").addClass("list_view");
1292
+ Cookies.setCookie("FCFINDER_view_type","list",60*60*24*365);
1293
+ $(this).addClass("passive");
1294
+ fcfinder.find(".right ul.widget li a.icon_view").removeClass("passive");
1295
+ }
1296
+ return false;
1297
+ });
1298
+
1299
+
1300
+
1301
+
1302
+
1303
+
1304
+ //Ayarlar Menüsü
1305
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.settings",function(){
1306
+ if (!$(this).hasClass("passive")){
1307
+ var list_type = Cookies.getCookie("FCFINDER_view_type");
1308
+ var size_show = Cookies.getCookie("FCFINDER_size_show");
1309
+ var date_show = Cookies.getCookie("FCFINDER_date_show");
1310
+
1311
+ var dialog_text = '<div class="dialog-scope"></div>' +
1312
+ '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.settings_h+'</h1>' +
1313
+ '<div class="content">';
1314
+ dialog_text += '<div><label><input type="radio" name="view" value="icon"';
1315
+ dialog_text += list_type == "icon" ? ' checked="checked" ' : '';
1316
+ dialog_text += ' /> '+opts.i18n.dialog.settings_icon_view+' </label></div>';
1317
+ dialog_text += '<div><label><input type="radio" name="view" value="list"';
1318
+ dialog_text += list_type == "list" ? ' checked="checked" ' : ''
1319
+ dialog_text += ' /> '+opts.i18n.dialog.settings_list_view+' </label></div>'
1320
+ dialog_text += '<div><label><input type="checkbox" name="size_show" value="true"'
1321
+ dialog_text += size_show == "true" ? ' checked="checked" ' : ''
1322
+ dialog_text +=' /> '+opts.i18n.dialog.settings_show_size+' </label></div>'
1323
+ dialog_text +='<div><label><input type="checkbox" name="date_show" value="true"'
1324
+ dialog_text += date_show == "true" ? ' checked="checked" ' : ''
1325
+ dialog_text +=' /> '+opts.i18n.dialog.settings_show_date+' </label></div>' +
1326
+ '</div>' +
1327
+ '<a class="close" href="#">'+opts.i18n.dialog.close+'</a>' +
1328
+ '</div>';
1329
+ $(fcfinder_selector).prepend(dialog_text);
1330
+ fcfinder.find(".dialog").fadeIn(300);
1331
+ fcfinder.find(".dialog").ortala();
1332
+ }
1333
+ return false;
1334
+ });
1335
+
1336
+
1337
+ //Ayarlar -> Tarih Göster İnputu Seçilirse
1338
+ $body.on("change",fcfinder_selector+" .dialog div.content div label input[name='date_show']",function(){
1339
+ fcfinder.find(".right ul.widget li a.show_date").trigger('click');
1340
+ });
1341
+
1342
+ //Ayarlar -> Boyut Göster İnputu Seçilirse
1343
+ $body.on("change",fcfinder_selector+" .dialog div.content div label input[name='size_show']",function(){
1344
+ fcfinder.find(".right ul.widget li a.show_size").trigger('click');
1345
+ });
1346
+
1347
+ //Ayarlar -> Görünüm Tipi Seçimi (Liste|Simge)
1348
+ $body.on("change",fcfinder_selector+" .dialog div.content div label input[name='view']",function(){
1349
+ var view_type = $(this).val();
1350
+ if (view_type=="icon"){ fcfinder.find(".right ul.widget li a.icon_view").trigger("click"); }
1351
+ if (view_type=="list"){ fcfinder.find(".right ul.widget li a.list_view").trigger("click");}
1352
+ });
1353
+
1354
+
1355
+
1356
+
1357
+ //Sıralama Menüsü
1358
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.sort",function(){
1359
+ if (!$(this).hasClass("passive")){
1360
+ var sortable_type = Cookies.getCookie("FCFINDER_sortable");
1361
+ var dialog_text = '<div class="dialog-scope"></div>' +
1362
+ '<div style="display: none;" class="dialog"><h1>'+opts.i18n.dialog.sorter_h+'</h1>' +
1363
+ '<div class="content">';
1364
+ dialog_text += '<div><label><input type="radio" name="sortable" value="name"';
1365
+ dialog_text += sortable_type == "name" ? ' checked="checked" ' : '';
1366
+ dialog_text += ' /> '+opts.i18n.dialog.sorter_name+' </label></div>';
1367
+ dialog_text += '<div><label><input type="radio" name="sortable" value="size"';
1368
+ dialog_text += sortable_type == "size" ? ' checked="checked" ' : ''
1369
+ dialog_text += ' /> '+opts.i18n.dialog.sorter_size+' </label></div>'
1370
+ dialog_text += '<div><label><input type="radio" name="sortable" value="date"'
1371
+ dialog_text +=sortable_type == "date" ? ' checked="checked" ' : ''
1372
+ dialog_text +=' /> '+opts.i18n.dialog.sorter_date+' </label></div>'
1373
+ dialog_text +='<div><label><input type="radio" name="sortable" value="kind"'
1374
+ dialog_text +=sortable_type == "kind" ? ' checked="checked" ' : ''
1375
+ dialog_text +=' /> '+opts.i18n.dialog.sorter_kind+' </label></div>' +
1376
+ '</div>' +
1377
+ '<a class="close" href="#">'+opts.i18n.dialog.close+'</a>' +
1378
+ '</div>';
1379
+ $(fcfinder_selector).prepend(dialog_text);
1380
+ fcfinder.find(".dialog").fadeIn(300);
1381
+ fcfinder.find(".dialog").ortala();
1382
+ }
1383
+ return false;
1384
+ });
1385
+
1386
+
1387
+ //Sıralama -> Sıralama Yöntemi Seçimi (İsim|Botur|Tarih|Tür)
1388
+ $body.on("change",fcfinder_selector+" .dialog div.content div label input[name='sortable']",function(){
1389
+ var sort_type = $(this).val();
1390
+ Cookies.setCookie("FCFINDER_sortable",sort_type,60*60*24*365);
1391
+ fnc.sortable(sort_type);
1392
+ return false;
1393
+ });
1394
+
1395
+
1396
+
1397
+ //Klavye Kontrolleri
1398
+ $(document).keyup(function(e) {
1399
+ //ESC Press
1400
+ if (e.keyCode == 27) {
1401
+ if (fcfinder.find(".dialog").size() > 0 || fcfinder.find(".dialog-scope").size() > 0)
1402
+ {
1403
+ fcfinder.find(".dialog").fadeOut(300, function(){ fcfinder.find(".dialog-scope , .dialog").remove(); });
1404
+ }
1405
+ fcfinder.find("#ctxMenu").remove();
1406
+ fcfinder.find(".right ul.wrapper li[data-show='true'] div[data-new='new_folder']").remove();
1407
+ if (fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']").html()==""){fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']").html(opts.i18n.empty_dir);}
1408
+ var file = fcfinder.find(".right ul.wrapper li[data-show='true'] div[data-rename='true']");
1409
+ file.removeAttr("data-rename");
1410
+ file.children("span.file_name").html(file.find("form#file_rename input[name='fcfinder[file_name]']").attr("data-value"));
1411
+ }
1412
+ //F2 Press
1413
+ if(e.which == 113) {
1414
+ if (fcfinder.find(".right ul.wrapper li div.active")){
1415
+ fcfinder.find(".right ul.widget li a.rename").trigger('click');
1416
+ }
1417
+ return false;
1418
+ }
1419
+
1420
+ });
1421
+
1422
+ //Hedef Dışı Tıklama Kontrolleri
1423
+ $("*").click(function(e){
1424
+
1425
+ if (!$(e.target).is(fcfinder_selector+" ul#ctxMenu") && !$(e.target).is(fcfinder_selector+" ul#ctxMenu *") )
1426
+ {
1427
+ fcfinder.find("#ctxMenu").remove();
1428
+ }
1429
+
1430
+ if (!$(e.target).is(fcfinder_selector+" .dialog") && !$(e.target).is(fcfinder_selector+" .dialog *") &&
1431
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.icon_view") &&
1432
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.list_view") &&
1433
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.show_size") &&
1434
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.show_date") &&
1435
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.name_sorter") &&
1436
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.size_sorter") &&
1437
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.date_sorter") &&
1438
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.kind_sorter") &&
1439
+ !$(e.target).is(fcfinder_selector+" "))
1440
+ {
1441
+ if (!fcfinder.find(".dialog").hasClass("noclose")){
1442
+ fcfinder.find(".dialog").fadeOut(300, function(){ fcfinder.find(".dialog-scope , .dialog").remove(); });
1443
+ }
1444
+ }
1445
+
1446
+ if (!$(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true'] div[data-new='new_folder']") && !$(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true'] div[data-new='new_folder'] *"))
1447
+ {
1448
+ fcfinder.find(".right ul.wrapper li[data-show='true'] div[data-new='new_folder']").remove();
1449
+ if (fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']").html()==""){fcfinder.find(".right ul.wrapper li.file_wrapper[data-show='true']").html(opts.i18n.empty_dir);}
1450
+ }
1451
+
1452
+
1453
+ if (!$(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true'] div[data-rename='true']") && !$(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true'] div[data-rename='true'] *"))
1454
+ {
1455
+ var file = fcfinder.find(".right ul.wrapper li[data-show='true'] div[data-rename='true']");
1456
+ file.removeAttr("data-rename");
1457
+ file.children("span.file_name").html(file.find("form#file_rename input[name='fcfinder[file_name]']").attr("data-value"));
1458
+ }
1459
+
1460
+ if (
1461
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.download") &&
1462
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.info") &&
1463
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.preview") &&
1464
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.edit") &&
1465
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.copy") &&
1466
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.cut") &&
1467
+ //!$(e.target).is(fcfinder_selector+" .right ul.widget li a.paste") &&
1468
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.duplicate") &&
1469
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.rename") &&
1470
+ !$(e.target).is(fcfinder_selector+" .right ul.widget li a.delete") &&
1471
+
1472
+ !$(e.target).is(fcfinder_selector+" ul#ctxMenu li") &&
1473
+ !$(e.target).is(fcfinder_selector+" ul#ctxMenu li *") &&
1474
+
1475
+
1476
+ !$(e.target).is(fcfinder_selector+" .right ul.wrapper li div") && !$(e.target).is(fcfinder_selector+" .right ul.wrapper li div *"))
1477
+ {
1478
+ fcfinder.find(".right ul.wrapper li div").removeClass("active");
1479
+ fcfinder.find(".right ul.widget li a.download , " +
1480
+ ".right ul.widget li a.info , " +
1481
+ ".right ul.widget li a.preview , " +
1482
+ //".right ul.widget li a.edit , " +
1483
+ ".right ul.widget li a.copy , " +
1484
+ ".right ul.widget li a.cut , " +
1485
+ //".right ul.widget li a.paste , " +
1486
+ ".right ul.widget li a.duplicate , " +
1487
+ ".right ul.widget li a.rename , " +
1488
+ ".right ul.widget li a.delete").addClass("passive");
1489
+
1490
+ }
1491
+
1492
+ });
1493
+
1494
+
1495
+ //Sağ Tıklama Ayarı
1496
+ $("*").contextmenu(function(e){
1497
+ fcfinder.find("#ctxMenu").remove();
1498
+ if (!$(e.target).is(fcfinder_selector+" .right ul.wrapper li div.list_head") && !$(e.target).is(fcfinder_selector+" .right ul.wrapper li div.list_head *")){
1499
+ if ($(e.target).is(fcfinder_selector+" .right ul.wrapper li div") || $(e.target).is(fcfinder_selector+" .right ul.wrapper li div *")) {
1500
+ if (typeof $(e.target).parent("div").attr("data-name") === "undefined") {
1501
+ var file = $(e.target);
1502
+ }else {
1503
+ var file = $(e.target).parent("div");
1504
+ }
1505
+ file.trigger("click");
1506
+ fcfinder.prepend('<ul id="ctxMenu"></ul>');
1507
+ var ctxMenu = fcfinder.find("#ctxMenu");
1508
+ var x = parseInt(e.pageX) - 20;
1509
+ var y = parseInt(e.pageY) - 30;
1510
+ var d_x = $(document).width();
1511
+ var d_y = $(document).height();
1512
+ var ctxW_x = ctxMenu.width();
1513
+ var ctxH_y = ctxMenu.height();
1514
+
1515
+ if (x >= d_x - ctxW_x - 50) { x = d_x - ctxW_x - 50; }
1516
+ if (y >= d_y - ctxH_y - 40) { y = d_y - ctxH_y - 40;}
1517
+
1518
+ //
1519
+ ctxMenu.html('<li><a class="none">' + file.attr("data-name") + '</a></li><li class="hr">&nbsp;</li>'+
1520
+ '<li><a href="fcfinder:open">'+opts.i18n.contextmenu.file_open+'</a></li>'+
1521
+ '<li><a href="fcfinder:preview">'+opts.i18n.contextmenu.file_preview+'</a></li>'+
1522
+ '<li><a href="fcfinder:download">'+opts.i18n.contextmenu.file_download+'</a></li>'+
1523
+ '<li class="hr">&nbsp;</li>'+
1524
+ '<li><a href="fcfinder:copy">'+opts.i18n.contextmenu.file_copy+'</a></li>'+
1525
+ '<li><a href="fcfinder:cut">'+opts.i18n.contextmenu.file_cut+'</a></li>'+
1526
+ '<li><a href="fcfinder:duplicate">'+opts.i18n.contextmenu.file_duplicate+'</a></li>'+
1527
+ '<li><a href="fcfinder:rename">'+opts.i18n.contextmenu.file_rename+'</a></li>'+
1528
+ '<li><a href="fcfinder:delete">'+opts.i18n.contextmenu.file_delete+'</a></li>'+
1529
+ '<li class="hr">&nbsp;</li>'+
1530
+ '<li><a href="fcfinder:info">'+opts.i18n.contextmenu.file_info+'</a></li>');
1531
+
1532
+ ctxMenu.css({"left": x + "px", "top": y + "px"});
1533
+ }
1534
+
1535
+ if ($(e.target).is(fcfinder_selector+" .right ul.wrapper li[data-show='true']") || $(e.target).is(fcfinder_selector+" .right ul.wrapper")) {
1536
+
1537
+ fcfinder.prepend('<ul id="ctxMenu"></ul>');
1538
+ var ctxMenu = fcfinder.find("#ctxMenu");
1539
+ var x = parseInt(e.pageX) - 20;
1540
+ var y = parseInt(e.pageY) - 30;
1541
+ var d_x = $(document).width();
1542
+ var d_y = $(document).height();
1543
+ var ctxW_x = ctxMenu.width();
1544
+ var ctxH_y = ctxMenu.height();
1545
+
1546
+ if (x >= d_x - ctxW_x - 50) { x = d_x - ctxW_x - 50; }
1547
+ if (y >= d_y - ctxH_y - 40) { y = d_y - ctxH_y - 40;}
1548
+
1549
+
1550
+ var paste;
1551
+ if (fcfinder.find(".right ul.widget li a.paste").hasClass("passive")){
1552
+ paste = '<li><a class="none" href="fcfinder:paste">'+opts.i18n.contextmenu.wrapper_paste+'</a></li>';
1553
+ }else{paste = '<li><a href="fcfinder:paste">'+opts.i18n.contextmenu.wrapper_paste+'</a></li>';}
1554
+
1555
+ var view;
1556
+ if (Cookies.getCookie("FCFINDER_view_type")=="icon"){
1557
+ view = '<li><a href="fcfinder:list_view">'+opts.i18n.contextmenu.wrapper_list_view+'</a></li>';
1558
+ }else{
1559
+ view = '<li><a href="fcfinder:icon_view">'+opts.i18n.contextmenu.wrapper_icon_view+'</a></li>';
1560
+ }
1561
+
1562
+ ctxMenu.html('<li><a class="none">' + fcfinder.find(".right ul.wrapper li[data-show='true']").attr("data-path") + '</a></li><li class="hr">&nbsp;</li>'+
1563
+ '<li><a href="fcfinder:upload">'+opts.i18n.contextmenu.wrapper_upload+'</a></li>'+
1564
+ '<li><a href="fcfinder:newfolder">'+opts.i18n.contextmenu.wrapper_newfolder+'</a></li>'+
1565
+ '<li><a href="fcfinder:refresh">'+opts.i18n.contextmenu.wrapper_refresh+'</a></li>'+
1566
+ paste+
1567
+ '<li class="hr">&nbsp;</li>'+
1568
+ view+
1569
+ '<li class="hr">&nbsp;</li>'+
1570
+ '<li><a href="fcfinder:showsize">'+opts.i18n.contextmenu.wrapper_show_size+'</a></li>'+
1571
+ '<li><a href="fcfinder:showdate">'+opts.i18n.contextmenu.wrapper_show_size+'</a></li>'+
1572
+ '<li class="hr">&nbsp;</li>'+
1573
+ '<li><a href="fcfinder:namesorter">'+opts.i18n.contextmenu.wrapper_namesorter+'</a></li>'+
1574
+ '<li><a href="fcfinder:sizesorter">'+opts.i18n.contextmenu.wrapper_sizesorter+'</a></li>'+
1575
+ '<li><a href="fcfinder:datesorter">'+opts.i18n.contextmenu.wrapper_datesorter+'</a></li>'+
1576
+ '<li><a href="fcfinder:kindsorter">'+opts.i18n.contextmenu.wrapper_kindsorter+'</a></li>');
1577
+
1578
+
1579
+ ctxMenu.css({"left": x + "px", "top": y + "px"});
1580
+ }
1581
+ }
1582
+ return false;
1583
+ });
1584
+
1585
+
1586
+
1587
+ //Sağ Tıklama Menü Link Seçimi
1588
+ $body.on("click",fcfinder_selector+" ul#ctxMenu li a",function(){
1589
+ if ($(this).attr("class")=="none"){ return false; }else {
1590
+ fcfinder.find("ul#ctxMenu").remove();
1591
+ if ($(this).attr("href")=="fcfinder:open"){ fcfinder.find(".right ul.wrapper li div.active").trigger("dblclick");}
1592
+ if ($(this).attr("href")=="fcfinder:preview"){ fcfinder.find(".right ul.widget li a.preview").trigger("click"); }
1593
+ if ($(this).attr("href")=="fcfinder:download"){fcfinder.find(".right ul.widget li a.download").trigger("click");}
1594
+ if ($(this).attr("href")=="fcfinder:copy"){fcfinder.find(".right ul.widget li a.copy").trigger("click");}
1595
+ if ($(this).attr("href")=="fcfinder:cut"){fcfinder.find(".right ul.widget li a.cut").trigger("click");}
1596
+ if ($(this).attr("href")=="fcfinder:duplicate"){fcfinder.find(".right ul.widget li a.duplicate").trigger("click");}
1597
+ if ($(this).attr("href")=="fcfinder:rename"){fcfinder.find(".right ul.widget li a.rename").trigger("click");}
1598
+ if ($(this).attr("href")=="fcfinder:delete"){fcfinder.find(".right ul.widget li a.delete").trigger("click");}
1599
+ if ($(this).attr("href")=="fcfinder:info"){fcfinder.find(".right ul.widget li a.info").trigger("click");}
1600
+
1601
+ if ($(this).attr("href")=="fcfinder:upload"){ fcfinder.find(".right ul.widget li a.upload input.upload_field").trigger("click");}
1602
+ if ($(this).attr("href")=="fcfinder:newfolder"){ fcfinder.find(".right ul.widget li a.new_folder").trigger("click");}
1603
+ if ($(this).attr("href")=="fcfinder:refresh"){ fcfinder.find(".right ul.widget li a.refresh").trigger("click");}
1604
+ if ($(this).attr("href")=="fcfinder:paste"){ fcfinder.find(".right ul.widget li a.paste").trigger("click");}
1605
+ if ($(this).attr("href")=="fcfinder:list_view"){ fcfinder.find(".right ul.widget li a.list_view").trigger("click");}
1606
+ if ($(this).attr("href")=="fcfinder:icon_view"){ fcfinder.find(".right ul.widget li a.icon_view").trigger("click");}
1607
+
1608
+ if ($(this).attr("href")=="fcfinder:showdate"){ fcfinder.find(".right ul.widget li a.show_date").trigger("click");}
1609
+ if ($(this).attr("href")=="fcfinder:showsize"){ fcfinder.find(".right ul.widget li a.show_size").trigger("click");}
1610
+
1611
+ if ($(this).attr("href")=="fcfinder:namesorter"){ fcfinder.find(".right ul.widget li a.name_sorter").trigger("click");}
1612
+ if ($(this).attr("href")=="fcfinder:sizesorter"){ fcfinder.find(".right ul.widget li a.size_sorter").trigger("click");}
1613
+ if ($(this).attr("href")=="fcfinder:datesorter"){ fcfinder.find(".right ul.widget li a.date_sorter").trigger("click");}
1614
+ if ($(this).attr("href")=="fcfinder:kindsorter"){ fcfinder.find(".right ul.widget li a.kind_sorter").trigger("click");}
1615
+
1616
+
1617
+ return false;
1618
+ }
1619
+
1620
+ });
1621
+
1622
+
1623
+
1624
+ //Yeni Klasör Form Submit
1625
+ $body.on("submit",fcfinder_selector+" #new_directory",function(){
1626
+ var data = $(this).serialize();
1627
+ $.ajax({
1628
+ url: opts.url, dataType: 'json', type: 'POST', data: data, success: function (data) {
1629
+
1630
+ if (data[0]=="true"){
1631
+ fcfinder.find(".right ul.widget li a.refresh").trigger("click");
1632
+ fcfinder.find(".left #all_folders ul.folders li a[href='"+data[1].top_dir+"']").trigger("click");
1633
+ fcfinder.find(".left #all_folders ul.folders li a[href='"+data[1].top_dir+"']").children("span.braca").addClass("closed");
1634
+ }else {
1635
+ if (data[1]=="-1"){
1636
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.new_directory_error_1,{type:"p",dialog_class:'danger'});
1637
+ }
1638
+ else {
1639
+ fnc.prepend_dialog(opts.i18n.faild_process,opts.i18n.error.new_directory_error_0.format(data[2]),{type:"p",dialog_class:'danger'});
1640
+ }
1641
+ }
1642
+ }
1643
+ });
1644
+ return false;
1645
+ });
1646
+
1647
+ //Dialog Kapatma Butonu
1648
+ $body.on("click",fcfinder_selector+" .dialog a.close",function(){
1649
+ fcfinder.find(".dialog").fadeOut(300, function(){ fcfinder.find(".dialog-scope , .dialog").remove(); });
1650
+ fnc.fcfinderresize();
1651
+ return false;
1652
+ });
1653
+
1654
+
1655
+
1656
+
1657
+ //Hakkında Sayfası
1658
+ $body.on("click",fcfinder_selector+" .right ul.widget li a.about",function(){
1659
+ return false;
1660
+ });
1661
+
1662
+
1663
+
1664
+
1665
+ //Görüntü Yükseklik Genişlik Ayarları
1666
+ fnc.fcfinderresize();
1667
+ $(window).resize(function(){ fnc.fcfinderresize(); fcfinder.find(".dialog").ortala(); });
1668
+
1669
+ //Tıklama Efekti Ayarı
1670
+ fnc.ripleClick(fcfinder_selector+" .right ul.widget li a ,"+fcfinder_selector+" .right ul.wrapper li div ,"+fcfinder_selector+" .left #all_folders ul.folders li a span.folder");
1671
+
1672
+
1673
+
1674
+
1675
+
1676
+
1677
+ //String Objesi Metod Ekleme
1678
+ String.prototype.format = function() {
1679
+ var formatted = this;
1680
+ for (var i = 0; i < arguments.length; i++) {
1681
+ var regexp = new RegExp('\\{'+i+'\\}', 'gi');
1682
+ formatted = formatted.replace(regexp, arguments[i]);
1683
+ }
1684
+ return formatted;
1685
+ };
1686
+
1687
+ //$ Genişletme Yeni Metod Ekleme
1688
+ $().__proto__.ortala = function(){
1689
+ this.css({
1690
+ left: ($(window).width()/2)-(this.width()/2),
1691
+ top: ($(window).height()/2)-(this.height()/2)
1692
+ });
1693
+
1694
+ };
1695
+
1696
+ };
1697
+
1698
+ })(jQuery);