Changeset 615301
- Timestamp:
- 10/21/2012 04:39:13 PM (13 years ago)
- Location:
- wp-filebase
- Files:
-
- 625 added
- 28 edited
-
tags/0.2.9.23/images/wpfb-icon.png (added)
-
tags/0.2.9.23/todo.txt (added)
-
tags/0.2.9.24 (added)
-
tags/0.2.9.24/classes (added)
-
tags/0.2.9.24/classes/Admin.php (added)
-
tags/0.2.9.24/classes/AdminGuiCats.php (added)
-
tags/0.2.9.24/classes/AdminGuiCss.php (added)
-
tags/0.2.9.24/classes/AdminGuiFiles.php (added)
-
tags/0.2.9.24/classes/AdminGuiManage.php (added)
-
tags/0.2.9.24/classes/AdminGuiSettings.php (added)
-
tags/0.2.9.24/classes/AdminGuiSupport.php (added)
-
tags/0.2.9.24/classes/AdminGuiTpls.php (added)
-
tags/0.2.9.24/classes/AdminHowToStart.php (added)
-
tags/0.2.9.24/classes/AdminLite.php (added)
-
tags/0.2.9.24/classes/Category.php (added)
-
tags/0.2.9.24/classes/Config.php (added)
-
tags/0.2.9.24/classes/Core.php (added)
-
tags/0.2.9.24/classes/Download.php (added)
-
tags/0.2.9.24/classes/File.php (added)
-
tags/0.2.9.24/classes/FileListTable.php (added)
-
tags/0.2.9.24/classes/GetID3.php (added)
-
tags/0.2.9.24/classes/Item.php (added)
-
tags/0.2.9.24/classes/ListTpl.php (added)
-
tags/0.2.9.24/classes/Output.php (added)
-
tags/0.2.9.24/classes/PLUpload.php (added)
-
tags/0.2.9.24/classes/ProgressReporter.php (added)
-
tags/0.2.9.24/classes/SWFUpload.php (added)
-
tags/0.2.9.24/classes/Search.php (added)
-
tags/0.2.9.24/classes/Setup.php (added)
-
tags/0.2.9.24/classes/Sync.php (added)
-
tags/0.2.9.24/classes/TplLib.php (added)
-
tags/0.2.9.24/classes/Widget.php (added)
-
tags/0.2.9.24/editor_plugin.php (added)
-
tags/0.2.9.24/extras (added)
-
tags/0.2.9.24/extras/ckeditor (added)
-
tags/0.2.9.24/extras/ckeditor/images (added)
-
tags/0.2.9.24/extras/ckeditor/images/btn.gif (added)
-
tags/0.2.9.24/extras/ckeditor/plugin.js (added)
-
tags/0.2.9.24/extras/flvplayer (added)
-
tags/0.2.9.24/extras/flvplayer/OSplayer.swf (added)
-
tags/0.2.9.24/extras/getid3 (added)
-
tags/0.2.9.24/extras/getid3/extension.cache.dbm.php (added)
-
tags/0.2.9.24/extras/getid3/extension.cache.mysql.php (added)
-
tags/0.2.9.24/extras/getid3/getid3.lib.php (added)
-
tags/0.2.9.24/extras/getid3/getid3.php (added)
-
tags/0.2.9.24/extras/getid3/helperapps (added)
-
tags/0.2.9.24/extras/getid3/helperapps/readme.helperapps.txt (added)
-
tags/0.2.9.24/extras/getid3/module.archive.gzip.php (added)
-
tags/0.2.9.24/extras/getid3/module.archive.rar.php (added)
-
tags/0.2.9.24/extras/getid3/module.archive.szip.php (added)
-
tags/0.2.9.24/extras/getid3/module.archive.tar.php (added)
-
tags/0.2.9.24/extras/getid3/module.archive.zip.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.asf.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.bink.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.flv.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.matroska.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.mpeg.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.nsv.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.quicktime.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.real.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.riff.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio-video.swf.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.aa.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.aac.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.ac3.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.au.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.avr.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.bonk.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.dss.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.dts.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.flac.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.la.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.lpac.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.midi.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.mod.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.monkey.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.mp3.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.mpc.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.ogg.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.optimfrog.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.rkau.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.shorten.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.tta.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.voc.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.vqf.php (added)
-
tags/0.2.9.24/extras/getid3/module.audio.wavpack.php (added)
-
tags/0.2.9.24/extras/getid3/module.graphic.bmp.php (added)
-
tags/0.2.9.24/extras/getid3/module.graphic.efax.php (added)
-
tags/0.2.9.24/extras/getid3/module.graphic.gif.php (added)
-
tags/0.2.9.24/extras/getid3/module.graphic.jpg.php (added)
-
tags/0.2.9.24/extras/getid3/module.graphic.pcd.php (added)
-
tags/0.2.9.24/extras/getid3/module.graphic.png.php (added)
-
tags/0.2.9.24/extras/getid3/module.graphic.svg.php (added)
-
tags/0.2.9.24/extras/getid3/module.graphic.tiff.php (added)
-
tags/0.2.9.24/extras/getid3/module.misc.cue.php (added)
-
tags/0.2.9.24/extras/getid3/module.misc.exe.php (added)
-
tags/0.2.9.24/extras/getid3/module.misc.iso.php (added)
-
tags/0.2.9.24/extras/getid3/module.misc.msoffice.php (added)
-
tags/0.2.9.24/extras/getid3/module.misc.par2.php (added)
-
tags/0.2.9.24/extras/getid3/module.misc.pdf.php (added)
-
tags/0.2.9.24/extras/getid3/module.tag.apetag.php (added)
-
tags/0.2.9.24/extras/getid3/module.tag.id3v1.php (added)
-
tags/0.2.9.24/extras/getid3/module.tag.id3v2.php (added)
-
tags/0.2.9.24/extras/getid3/module.tag.lyrics3.php (added)
-
tags/0.2.9.24/extras/getid3/module.tag.xmp.php (added)
-
tags/0.2.9.24/extras/getid3/write.apetag.php (added)
-
tags/0.2.9.24/extras/getid3/write.id3v1.php (added)
-
tags/0.2.9.24/extras/getid3/write.id3v2.php (added)
-
tags/0.2.9.24/extras/getid3/write.lyrics3.php (added)
-
tags/0.2.9.24/extras/getid3/write.metaflac.php (added)
-
tags/0.2.9.24/extras/getid3/write.php (added)
-
tags/0.2.9.24/extras/getid3/write.real.php (added)
-
tags/0.2.9.24/extras/getid3/write.vorbiscomment.php (added)
-
tags/0.2.9.24/extras/jquery (added)
-
tags/0.2.9.24/extras/jquery/contextmenu (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/cmenu-gloss-cyan-menu-item-hover.gif (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/cmenu-gloss-menu-item-hover.gif (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/cmenu-gloss-semitransparent-menu-item-hover.png (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/cmenu-human-menu-item-hover.gif (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/cmenu-osx-menu-item-hover.gif (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/cmenu-vista-bg.gif (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/cmenu-vista-menu-item-hover.gif (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/cmenu-xp-bg.gif (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/delete_icon.gif (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/jquery.contextmenu.css (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/jquery.contextmenu.js (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/page_white_delete.png (added)
-
tags/0.2.9.24/extras/jquery/contextmenu/page_white_edit.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables (added)
-
tags/0.2.9.24/extras/jquery/dataTables/css (added)
-
tags/0.2.9.24/extras/jquery/dataTables/css/demo_page.css (added)
-
tags/0.2.9.24/extras/jquery/dataTables/css/demo_table.css (added)
-
tags/0.2.9.24/extras/jquery/dataTables/css/demo_table_jui.css (added)
-
tags/0.2.9.24/extras/jquery/dataTables/css/jquery.dataTables.css (added)
-
tags/0.2.9.24/extras/jquery/dataTables/css/jquery.dataTables_themeroller.css (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/Sorting icons.psd (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/back_disabled.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/back_enabled.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/back_enabled_hover.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/favicon.ico (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/forward_disabled.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/forward_enabled.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/forward_enabled_hover.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/sort_asc.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/sort_asc_disabled.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/sort_both.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/sort_desc.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/images/sort_desc_disabled.png (added)
-
tags/0.2.9.24/extras/jquery/dataTables/js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/js/jquery.dataTables.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/js/jquery.dataTables.min.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/js/jquery.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/DataTables.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/api (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/api/api.internal.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/api/api.methods.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/api/api.static.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.ajax.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.columns.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.constructor.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.data.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.draw.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.filter.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.info.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.init.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.length.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.page.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.processing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.scrolling.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.sizing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.sort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.state.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/core/core.support.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/ext (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/ext/ext.classes.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/ext/ext.paging.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/ext/ext.sorting.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/ext/ext.types.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/model (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/model/model.column.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/model/model.defaults.columns.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/model/model.defaults.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/model/model.ext.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/model/model.row.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/model/model.search.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/src/model/model.settings.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/controller.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/controller.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/index.html (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/performance (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/performance/draw.html (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/performance/large.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/performance/page.html (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/performance/sort.html (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/-complex_header.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/2512.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/6776.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/complex_header_2.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/deferred_table.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/dom_data.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/dom_data_th.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/dom_data_two_headers.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/dymanic_table.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/empty_table.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/html_table.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/js_data.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/js_data_mixed_types.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/templates/two_tables.php (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests/1_dom (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests/1_dom/_zero_config.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/-complex_header.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/-iDraw.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2512.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2530-2.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2530.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2569.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2600.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2608.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2635.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2746-stable-sort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2799.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2840-restore-table-width.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/2914-state-save-sort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/5396-fnUpdate-arrays-mData.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/5396-fnUpdate-arrays.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/5508-xscroll-zero-content.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/6776-scrolling-table-grows.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/_getDataFunctions.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/_setDataFunctions.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/_zero_config.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aaSorting.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aaSortingFixed.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.bSearchable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.bSortable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.bUseRendered.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.bVisible.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.bVisible2.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.fnRender.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.iDataSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.sClass.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.sName.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.sTitle.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoColumns.sWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/aoSearchCols.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/asStripClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bAutoWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bFilter.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bInfiniteScroll.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bJQueryUI.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bLengthChange.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bServerSide.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bSortCellsTop.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/bSortClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnCookieCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnCreatedCell.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnCreatedRow.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnDeleteRow.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnDrawCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnFilter.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnFooterCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnHeaderCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnInfoCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnInitComplete.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnRowCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnSetColumnVis.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/fnSetColumnVis2.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/html-autodetect-sort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/iDisplayLength.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.oPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.sInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.sInfoEmpty.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.sInfoPostFix.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.sLengthMenu.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.sProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.sSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.sUrl.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oLanguage.sZeroRecords.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/oSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/sAjaxSource.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/sDom.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/sPaginationType.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/sScrollXY.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/1_dom/th_in_body.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/39-nested-null.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/6872-default-content-missing-props.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/8549--string-sorting-nonstrings.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/_zero_config.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aaSorting.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aaSortingFixed.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.bSearchable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.bSortable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.bUseRendered.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.bVisible.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.fnRender.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.iDataSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.sClass.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.sName.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.sTitle.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoColumns.sWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/aoSearchCols.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/asStripClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bAutoWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bFilter.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bLengthChange.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bServerSide.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/bSortClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/fnCreatedCell.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/fnCreatedRow.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/fnDrawCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/fnFooterCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/fnHeaderCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/fnInitComplete.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/fnRowCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/iDisplayLength.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/js_data_mixed_types.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.oPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.sInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.sInfoEmpty.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.sInfoPostFix.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.sLengthMenu.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.sProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.sSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.sUrl.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oLanguage.sZeroRecords.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/oSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/sAjaxSource.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/sDom.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/2_js/sPaginationType.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/_zero_config.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aaSorting.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aaSortingFixed.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.bSearchable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.bSortable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.bUseRendered.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.bVisible.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.fnRender.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.iDataSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.sClass.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.sName.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.sTitle.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoColumns.sWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/aoSearchCols.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/asStripClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bAutoWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bFilter.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bLengthChange.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bServerSide.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/bSortClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/fnCreatedCell.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/fnCreatedRow.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/fnDrawCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/fnHeaderCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/fnInitComplete.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/fnRowCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/fnServerData.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/iDisplayLength.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.oPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sInfoEmpty.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sInfoPostFix.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sLengthMenu.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sLoadingRecords.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sUrl.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oLanguage.sZeroRecords.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/oSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/sAjaxDataProp.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/sAjaxDataProp2.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/sAjaxSource.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/sDom.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/3_ajax/sPaginationType.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/-iDraw.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/2440.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/2569.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/2600.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/_zero_config.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aaSorting.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aaSortingFixed.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.bSearchable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.bSortable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.bUseRendered.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.bVisible.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.fnRender.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.sClass.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.sName.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.sTitle.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoColumns.sWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/aoSearchCols.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/asStripClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bAutoWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bFilter.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bInfiniteScroll.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bLengthChange.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bServerSide.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/bSortClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/fnCreatedCell.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/fnCreatedRow.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/fnDrawCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/fnHeaderCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/fnInitComplete.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/fnRowCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/iDeferLoading.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/iDisplayLength.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.oPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.sInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.sInfoEmpty.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.sInfoPostFix.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.sLengthMenu.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.sProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.sSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.sUrl.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oLanguage.sZeroRecords.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/oSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/sAjaxDataProp.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/sAjaxSource.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/sDom.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/4_server-side/sPaginationType.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/_zero_config.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_arrays_subobjects.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_deep.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_mDataProp.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_null_source.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_objects.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_objects_subarrays.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aaSorting.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aaSortingFixed.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.bSearchable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.bSortable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.bUseRendered.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.bVisible.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.fnRender.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.iDataSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.sClass.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.sName.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.sTitle.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.sWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/aoSearchCols.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/asStripClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bAutoWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bFilter.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bLengthChange.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bServerSide.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/bSortClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/fnDrawCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/fnHeaderCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/fnInitComplete.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/fnRowCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/fnServerData.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/iDisplayLength.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.oPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sInfoEmpty.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sInfoPostFix.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sLengthMenu.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sUrl.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sZeroRecords.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/oSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/sAjaxSource.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/sDom.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/5_ajax_objects/sPaginationType.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/_zero_config.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aaSorting.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aaSortingFixed.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.bSearchable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.bSortable.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.bUseRendered.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.bVisible.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.fnRender.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.iDataSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.sClass.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.sName.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.sTitle.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.sWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/aoSearchCols.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/asStripClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bAutoWidth.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bFilter.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bLengthChange.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bServerSide.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bSort.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/bSortClasses.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/fnDrawCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/fnHeaderCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/fnInitComplete.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/fnRowCallback.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/fnServerData.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/iDisplayLength.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.oPaginate.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sInfo.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sInfoEmpty.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sInfoPostFix.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sLengthMenu.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sProcessing.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sUrl.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sZeroRecords.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/oSearch.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/sAjaxDataProp.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/sAjaxDataProp2.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/sAjaxSource.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/sDom.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/tests_onhold/6_delayed_rendering/sPaginationType.js (added)
-
tags/0.2.9.24/extras/jquery/dataTables/unit_testing/unit_test.js (added)
-
tags/0.2.9.24/extras/jquery/jquery.cookie.js (added)
-
tags/0.2.9.24/extras/jquery/treeview (added)
-
tags/0.2.9.24/extras/jquery/treeview/images (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/ajax-loader.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/file.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/folder-closed.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/folder.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/minus.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/plus.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-black-line.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-black.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-default-line.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-default.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-famfamfam-line.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-famfamfam.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-gray-line.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-gray.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-red-line.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/images/treeview-red.gif (added)
-
tags/0.2.9.24/extras/jquery/treeview/jquery.treeview.async.js (added)
-
tags/0.2.9.24/extras/jquery/treeview/jquery.treeview.css (added)
-
tags/0.2.9.24/extras/jquery/treeview/jquery.treeview.edit.js (added)
-
tags/0.2.9.24/extras/jquery/treeview/jquery.treeview.js (added)
-
tags/0.2.9.24/extras/jquery/treeview/jquery.treeview.sortable.js (added)
-
tags/0.2.9.24/extras/phpthumb.bmp.php (added)
-
tags/0.2.9.24/extras/phpthumb.functions.php (added)
-
tags/0.2.9.24/extras/progressbar.class.php (added)
-
tags/0.2.9.24/images (added)
-
tags/0.2.9.24/images/admin_menu_icon.png (added)
-
tags/0.2.9.24/images/crystal_cat.png (added)
-
tags/0.2.9.24/images/dl_btn.png (added)
-
tags/0.2.9.24/images/dl_btn_hover.png (added)
-
tags/0.2.9.24/images/down.png (added)
-
tags/0.2.9.24/images/folder48.png (added)
-
tags/0.2.9.24/images/wpfb-icon.png (added)
-
tags/0.2.9.24/js (added)
-
tags/0.2.9.24/js/admin.js (added)
-
tags/0.2.9.24/js/common.js (added)
-
tags/0.2.9.24/js/editor-plugin.js (added)
-
tags/0.2.9.24/js/live-admin.js (added)
-
tags/0.2.9.24/languages (added)
-
tags/0.2.9.24/languages/template.po (added)
-
tags/0.2.9.24/languages/wpfb-be_BY.mo (added)
-
tags/0.2.9.24/languages/wpfb-be_BY.po (added)
-
tags/0.2.9.24/languages/wpfb-de_DE.mo (added)
-
tags/0.2.9.24/languages/wpfb-de_DE.po (added)
-
tags/0.2.9.24/languages/wpfb-fa_IR.mo (added)
-
tags/0.2.9.24/languages/wpfb-fa_IR.po (added)
-
tags/0.2.9.24/languages/wpfb-fr_FR.mo (added)
-
tags/0.2.9.24/languages/wpfb-fr_FR.po (added)
-
tags/0.2.9.24/languages/wpfb-it_IT.mo (added)
-
tags/0.2.9.24/languages/wpfb-it_IT.po (added)
-
tags/0.2.9.24/languages/wpfb-lt_LT.mo (added)
-
tags/0.2.9.24/languages/wpfb-lt_LT.po (added)
-
tags/0.2.9.24/languages/wpfb-nl_NL.mo (added)
-
tags/0.2.9.24/languages/wpfb-nl_NL.po (added)
-
tags/0.2.9.24/languages/wpfb-pt_BR.mo (added)
-
tags/0.2.9.24/languages/wpfb-pt_BR.po (added)
-
tags/0.2.9.24/languages/wpfb-ru_RU.mo (added)
-
tags/0.2.9.24/languages/wpfb-ru_RU.po (added)
-
tags/0.2.9.24/languages/wpfb-sk_SK.mo (added)
-
tags/0.2.9.24/languages/wpfb-sk_SK.po (added)
-
tags/0.2.9.24/languages/wpfb-sv_SE.mo (added)
-
tags/0.2.9.24/languages/wpfb-sv_SE.po (added)
-
tags/0.2.9.24/languages/wpfb-tr_TR.mo (added)
-
tags/0.2.9.24/languages/wpfb-tr_TR.po (added)
-
tags/0.2.9.24/lib (added)
-
tags/0.2.9.24/lib/wpfb_form_cat.php (added)
-
tags/0.2.9.24/lib/wpfb_form_file.php (added)
-
tags/0.2.9.24/readme.txt (added)
-
tags/0.2.9.24/tinymce (added)
-
tags/0.2.9.24/tinymce/editor_plugin.js (added)
-
tags/0.2.9.24/tinymce/images (added)
-
tags/0.2.9.24/tinymce/images/btn.gif (added)
-
tags/0.2.9.24/wp-filebase-admin.css (added)
-
tags/0.2.9.24/wp-filebase.css (added)
-
tags/0.2.9.24/wp-filebase.php (added)
-
tags/0.2.9.24/wp-filebase_css.php (added)
-
tags/0.2.9.24/wp-filebase_thumb.php (added)
-
tags/0.2.9.24/wpfb-ajax.php (added)
-
tags/0.2.9.24/wpfb-async-upload.php (added)
-
tags/0.2.9.24/wpfb-postbrowser.php (added)
-
trunk/classes/Admin.php (modified) (19 diffs)
-
trunk/classes/AdminGuiCats.php (modified) (5 diffs)
-
trunk/classes/AdminGuiFiles.php (modified) (7 diffs)
-
trunk/classes/AdminGuiManage.php (modified) (3 diffs)
-
trunk/classes/AdminGuiSettings.php (modified) (4 diffs)
-
trunk/classes/AdminGuiTpls.php (modified) (3 diffs)
-
trunk/classes/AdminLite.php (modified) (1 diff)
-
trunk/classes/Category.php (modified) (2 diffs)
-
trunk/classes/Core.php (modified) (5 diffs)
-
trunk/classes/Download.php (modified) (1 diff)
-
trunk/classes/File.php (modified) (5 diffs)
-
trunk/classes/FileListTable.php (modified) (3 diffs)
-
trunk/classes/GetID3.php (modified) (2 diffs)
-
trunk/classes/Item.php (modified) (6 diffs)
-
trunk/classes/Output.php (modified) (4 diffs)
-
trunk/classes/ProgressReporter.php (modified) (2 diffs)
-
trunk/classes/Search.php (modified) (2 diffs)
-
trunk/classes/Setup.php (modified) (9 diffs)
-
trunk/classes/Sync.php (modified) (8 diffs)
-
trunk/classes/Widget.php (modified) (5 diffs)
-
trunk/editor_plugin.php (modified) (1 diff)
-
trunk/images/wpfb-icon.png (added)
-
trunk/lib/wpfb_form_cat.php (modified) (2 diffs)
-
trunk/lib/wpfb_form_file.php (modified) (3 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/todo.txt (modified) (6 diffs)
-
trunk/wp-filebase-admin.css (modified) (3 diffs)
-
trunk/wp-filebase.php (modified) (2 diffs)
-
trunk/wpfb-ajax.php (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
wp-filebase/trunk/classes/Admin.php
r599590 r615301 27 27 if($upload_path_base == '' || $upload_path_base == '/') 28 28 $upload_path_base = 'wp-content/uploads'; 29 29 30 $last_sync_time = intval(get_option(WPFB_OPT_NAME.'_cron_sync_time')); 31 $last_sync_time = ($last_sync_time > 0) ? (" (".sprintf( __('Last cron sync on %1$s at %2$s.',WPFB), date_i18n( get_option( 'date_format', $last_sync_time ) ), date_i18n( get_option( 'time_format', $last_sync_time ) ) ).")") : ''; 32 30 33 return array ( 31 34 … … 92 95 'inaccessible_msg' => array('default' => __('You are not allowed to access this file!', WPFB), 'title' => __('Inaccessible file message', WPFB), 'type' => 'text', 'size' => 65, 'desc' => (__('This message will be displayed if users try to download a file they cannot access', WPFB).'. '.__('You can enter a URL to redirect users.', WPFB))), 93 96 'inaccessible_redirect' => array('default' => false, 'title' => __('Redirect to login', WPFB), 'type' => 'checkbox', 'desc' => __('Guests trying to download inaccessible files are redirected to the login page if this option is enabled.', WPFB)), 97 'cat_inaccessible_msg' => array('default' => __('Access to category denied!', WPFB), 'title' => __('Inaccessible category message', WPFB), 'type' => 'text', 'size' => 65, 'desc' => (__('This message will be displayed if users try to access a category without permission.', WPFB))), 94 98 'login_redirect_src' => array('default' => false, 'title' => __('Redirect to referring page after login', WPFB), 'type' => 'checkbox', 'desc' => __('Users are redirected to the page where they clicked on the download link after logging in.', WPFB)), 95 99 … … 116 120 //'file_context_menu' => array('default' => true, 'title' => '', 'type' => 'checkbox', 'desc' => ''), 117 121 118 'cron_sync' => array('default' => false, 'title' => __('Automatic Sync', WPFB), 'type' => 'checkbox', 'desc' => __('Schedules a cronjob to hourly synchronize the filesystem and the database.', WPFB)), 122 'cron_sync' => array('default' => false, 'title' => __('Automatic Sync', WPFB), 'type' => 'checkbox', 'desc' => __('Schedules a cronjob to hourly synchronize the filesystem and the database.', WPFB).$last_sync_time), 123 119 124 120 125 'search_integration' => array('default' => true, 'title' => __('Search Integration', WPFB), 'type' => 'checkbox', 'desc' => __('Searches in attached files and lists the associated posts and pages when searching the site.', WPFB)), … … 127 132 128 133 // file browser 129 'disable_footer_credits' => array('default' => false, 'title' => __('Remove WP-Filebase Footer credits', WPFB), 'type' => 'checkbox', 'desc' => sprintf(__('This disables the footer credits only displayed on <a href="%s">File Browser Page</a>. Why should you keep the credits? Every backlink helps WP-Filebase to get more popular, popularity motivates the developer to continue work on the plugin. Win-Win!', WPFB), get_permalink(WPFB_Core::GetOpt('file_browser_post_id')).'#wpfb-credits')),134 'disable_footer_credits' => array('default' => false, 'title' => __('Remove WP-Filebase Footer credits', WPFB), 'type' => 'checkbox', 'desc' => sprintf(__('This disables the footer credits only displayed on <a href="%s">File Browser Page</a>. Why should you keep the credits? Every backlink helps WP-Filebase to get more popular, popularity motivates the developer to continue work on the plugin.', WPFB), get_permalink(WPFB_Core::GetOpt('file_browser_post_id')).'#wpfb-credits')), 130 135 'footer_credits_style' => array('default' => 'margin:0 auto 2px auto; text-align:center; font-size:11px;', 'title' => __('Footer credits Style', WPFB), 'type' => 'text', 'class' => 'code', 'desc' => __('Set custom CSS style for WP-Filebase footer credits',WPFB),'size'=>80), 131 136 'late_script_loading' => array('default' => false, 'title' => __('Late script loading', WPFB), 'type' => 'checkbox', 'desc' => __('Scripts will be included in content, not in header. Enable if your AJAX tree view does not work properly.', WPFB)), … … 144 149 Java|java|http://www.java.com/download/ 145 150 Flash|flash|http://get.adobe.com/flashplayer/ 146 Open Office|ooffice|http:// download.openoffice.org/151 Open Office|ooffice|http://www.openoffice.org/download/index.html 147 152 .NET Framework 3.5|.net35|http://www.microsoft.com/downloads/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6", 148 153 'title' => __('Requirements', WPFB), 'type' => 'textarea', 'desc' => $multiple_entries_desc . ' ' . __('You can optionally add |<i>URL</i> to each line to link to the required software/file.', WPFB), 'nowrap' => true), … … 150 155 'custom_fields' => array('default' => "Custom Field 1|cf1\nCustom Field 2|cf2", 'title' => __('Custom Fields'), 'type' => 'textarea', 'desc' => 151 156 __('With custom fields you can add even more file properties.',WPFB).' '.$multiple_entries_desc), 157 158 152 159 153 160 … … 237 244 238 245 //'cat_required_level' => __('The minimum user level to view this category (-1 = guest, 0 = Subscriber ...)', WPFB), 246 'cat_user_can_access' => sprintf(__('Variable to check if the %s is accessible (boolean 0/1)', WPFB),__('Category')), 239 247 240 248 'cat_id' => __('The category ID', WPFB), … … 271 279 272 280 //'file_required_level' => __('The minimum user level to download this file (-1 = guest, 0 = Subscriber ...)', WPFB), 281 'file_user_can_access' => sprintf(__('Variable to check if the %s is accessible (boolean 0/1)', WPFB),__('File',WPFB)), 282 273 283 'file_offline' => __('1 if file is offline, otherwise 0', WPFB), 274 284 'file_direct_linking' => __('1 if direct linking is allowed, otherwise 0', WPFB), … … 436 446 // explicitly set permissions: 437 447 if(!empty($data->cat_perm_explicit) && isset($data->cat_user_roles)) 438 $cat->Set UserRoles((empty($data->cat_user_roles) || count(array_filter($data->cat_user_roles)) == 0) ? array() : $data->cat_user_roles);448 $cat->SetReadPermissions((empty($data->cat_user_roles) || count(array_filter($data->cat_user_roles)) == 0) ? array() : $data->cat_user_roles); 439 449 440 450 // apply permissions to children 441 451 if($update && !empty($cat_child_apply_perm)) 442 452 { 443 $cur = $cat->Get UserRoles();453 $cur = $cat->GetReadPermissions(); 444 454 $childs = $cat->GetChildFiles(true); 445 foreach($childs as $child) $child->Set UserRoles($cur);455 foreach($childs as $child) $child->SetReadPermissions($cur); 446 456 447 457 $childs = $cat->GetChildCats(true); 448 foreach($childs as $child) $child->Set UserRoles($cur);458 foreach($childs as $child) $child->SetReadPermissions($cur); 449 459 } 450 460 … … 572 582 573 583 // this sets permissions as well: 574 $result = $file->ChangeCategoryOrName($file_category, $file_name, $add_existing, !empty($data->overwrite));584 $result = $file->ChangeCategoryOrName($file_category, empty($data->file_rename) ? $file_name : $data->file_rename, $add_existing, !empty($data->overwrite)); 575 585 if(!empty($result['error'])) return $result; 576 586 577 587 // explicitly set permissions: 578 588 if(!empty($data->file_perm_explicit) && isset($data->file_user_roles)) 579 $file->Set UserRoles((empty($data->file_user_roles) || count(array_filter($data->file_user_roles)) == 0) ? array() : $data->file_user_roles);589 $file->SetReadPermissions((empty($data->file_user_roles) || count(array_filter($data->file_user_roles)) == 0) ? array() : $data->file_user_roles); 580 590 581 591 // if there is an uploaded file … … 614 624 $file->file_size = filesize($file->GetLocalPath()); 615 625 $file->file_mtime = filemtime($file->GetLocalPath()); 626 $old_hash = $file->file_hash; 616 627 $file->file_hash = WPFB_Admin::GetFileHash($file->GetLocalPath()); 617 628 618 wpfb_loadclass('GetID3'); 619 $file_info = WPFB_GetID3::AnalyzeFile($file); 629 // only analyze files if changed! 630 if($upload || !$update || $file->file_hash != $old_hash) 631 { 632 wpfb_loadclass('GetID3'); 633 $file_info = WPFB_GetID3::AnalyzeFile($file); 620 634 621 if(!empty($file_info['comments']['picture'][0]['data'])) 622 $cover_img =& $file_info['comments']['picture'][0]['data']; 623 elseif(!empty($file_info['id3v2']['APIC'][0]['data'])) 624 $cover_img =& $file_info['id3v2']['APIC'][0]['data']; 625 else $cover_img = null; 626 627 if(!$upload_thumb && empty($data->file_thumbnail) && !empty($cover_img)) 628 { 629 $cover = $file->GetLocalPath(); 630 $cover = substr($cover,0,strrpos($cover,'.')).'.jpg'; 631 file_put_contents($cover, $cover_img); 632 $file->CreateThumbnail($cover, true); 633 @unlink($cover); 635 if(!empty($file_info['comments']['picture'][0]['data'])) 636 $cover_img =& $file_info['comments']['picture'][0]['data']; 637 elseif(!empty($file_info['id3v2']['APIC'][0]['data'])) 638 $cover_img =& $file_info['id3v2']['APIC'][0]['data']; 639 else $cover_img = null; 640 641 if(!$upload_thumb && empty($data->file_thumbnail) && !empty($cover_img)) 642 { 643 $cover = $file->GetLocalPath(); 644 $cover = substr($cover,0,strrpos($cover,'.')).'.jpg'; 645 file_put_contents($cover, $cover_img); 646 $file->CreateThumbnail($cover, true); 647 @unlink($cover); 648 } 634 649 } 635 650 } … … 654 669 if(!isset($data->file_direct_linking)) 655 670 $data->file_direct_linking = 1; // allow direct linking by default 656 $file->file_direct_linking = (int)!empty($data->file_direct_linking);671 $file->file_direct_linking = intval($data->file_direct_linking); 657 672 658 673 if(isset($data->file_post_id)) … … 981 996 WPFB_Core::UpdateOption('template_file_parsed', WPFB_TplLib::Parse(WPFB_Core::GetOpt('template_file'))); 982 997 WPFB_Core::UpdateOption('template_cat_parsed', WPFB_TplLib::Parse(WPFB_Core::GetOpt('template_cat'))); 983 984 // parse widget985 $widget = WPFB_Core::GetOpt('widget');986 $widget['filelist_template_parsed'] = WPFB_TplLib::Parse($widget['filelist_template']);987 WPFB_Core::UpdateOption('widget', $widget);988 998 989 999 // parse custom … … 1071 1081 } 1072 1082 1083 1073 1084 // this is used for post filter 1074 1085 public function ProcessWidgetUpload(){ 1075 1086 $content = ''; 1076 1087 $title = ''; 1077 1088 1078 1089 if(!WPFB_Core::GetOpt('frontend_upload') && !current_user_can('upload_files')) 1079 1090 wp_die(__('Cheatin’ uh?'). " (disabled)"); 1080 1091 1081 $nonce_action = $_POST['prefix']."=&cat=".((int)$_POST['cat'])."&overwrite=".((int)$_POST['overwrite']); 1082 1083 // nonce/referer check (security) 1084 if(!wp_verify_nonce($_POST['wpfb-file-nonce'],$nonce_action) || !check_admin_referer($nonce_action,'wpfb-file-nonce')) 1085 wp_die(__('Cheatin’ uh?') . ' (nonce)'); 1092 { 1093 $nonce_action = $_POST['prefix']."=&cat=".((int)$_POST['cat'])."&overwrite=".((int)$_POST['overwrite'])."&file_post_id=".((int)$_POST['file_post_id']); 1094 // nonce/referer check (security) 1095 if(!wp_verify_nonce($_POST['wpfb-file-nonce'],$nonce_action) || !check_admin_referer($nonce_action,'wpfb-file-nonce')) 1096 wp_die(__('Cheatin’ uh?') . ' (nonce)'); 1097 } 1086 1098 1087 1099 // if category is set in widget options, force to use this. security done with nonce checking ($_POST['cat'] is reliable) … … 1189 1201 } 1190 1202 1191 static function RolesCheckList($field_name, $selected_roles=array() ) {1203 static function RolesCheckList($field_name, $selected_roles=array(), $display_everyone=true) { 1192 1204 global $wp_roles; 1193 1205 $all_roles = $wp_roles->roles; … … 1198 1210 <ul id="<?php echo $field_name; ?>-list" class="wpfilebase-roles-checklist"> 1199 1211 <?php 1200 echo "<li id='{$field_name}_none'><label class='selectit'><input value='' type='checkbox' name='{$field_name}[]' id='in-{$field_name}_none' ".(empty($selected_roles)?"checked='checked'":"")." onchange=\"jQuery('[id^=in-$field_name-]').prop('disabled', this.checked).prop('checked', false);\" /> <i>".__('Everyone',WPFB)."</i></label></li>";1212 if($display_everyone) echo "<li id='{$field_name}_none'><label class='selectit'><input value='' type='checkbox' name='{$field_name}[]' id='in-{$field_name}_none' ".(empty($selected_roles)?"checked='checked'":"")." onchange=\"jQuery('[id^=in-$field_name-]').prop('disabled', this.checked).prop('checked', false);\" /> <i>".__('Everyone',WPFB)."</i></label></li>"; 1201 1213 foreach ( $all_roles as $role => $details ) { 1202 1214 $name = translate_user_role($details['name']); 1203 echo "<li id='$field_name-$role'><label class='selectit'><input value='$role' type='checkbox' name='{$field_name}[]' id='in-$field_name-$role' ".(in_array($role, $selected_roles)?"checked='checked'":"")." ".( empty($selected_roles)?"disabled='disabled'":"")." /> $name</label></li>";1204 } 1205 ?>1215 echo "<li id='$field_name-$role'><label class='selectit'><input value='$role' type='checkbox' name='{$field_name}[]' id='in-$field_name-$role' ".(in_array($role, $selected_roles)?"checked='checked'":"")." ".((empty($selected_roles)&&$display_everyone)?"disabled='disabled'":"")." /> $name</label></li>"; 1216 } 1217 ?> 1206 1218 </ul> 1207 1219 </div> … … 1221 1233 } 1222 1234 1235 static function GetTmpPath($name) { 1236 $dir = WPFB_Core::UploadDir().'/.tmp/'.uniqid($name); 1237 self::Mkdir($dir); 1238 return $dir; 1239 } 1240 1223 1241 static function LockUploadDir($lock=true) 1224 1242 { … … 1237 1255 static $use_php_func = false; 1238 1256 if($use_php_func) return md5_file($filename); 1239 $hash = substr( @exec("md5sum \"$filename\""), 0, 32);1257 $hash = substr(trim(substr(@exec("md5sum \"$filename\""), 0, 33),"\\ \t"), 0, 32); // on windows, hash starts with \ if not in same dir! 1240 1258 if(empty($hash) && file_exists($filename)) { 1241 1259 $use_php_func = true; … … 1245 1263 } 1246 1264 1247 } 1265 static function CurUserCanUpload() 1266 { 1267 return (current_user_can('upload_files')); 1268 } 1269 1270 static function CurUserCanCreateCat() 1271 { 1272 return current_user_can('manage_categories'); 1273 } 1274 } -
wp-filebase/trunk/classes/AdminGuiCats.php
r559064 r615301 6 6 $cat_id = $cat->cat_id; 7 7 $parent_cat = $cat->GetParent(); 8 $user_roles = $cat->Get UserRoles();8 $user_roles = $cat->GetReadPermissions(); 9 9 $title = esc_attr($cat->cat_name); 10 10 if($sub_level > 0) $title = str_repeat('-', $sub_level) . " $title"; … … 31 31 global $wpdb, $user_ID; 32 32 33 if ( !WPFB_Admin::CurUserCanCreateCat() ) 34 wp_die(__('Cheatin’ uh?')); 35 33 36 wpfb_loadclass('Category', 'File', 'Admin', 'Output'); 34 37 … … 53 56 switch($action) 54 57 { 55 case 'editcat': 56 if ( !current_user_can('manage_categories') ) 57 wp_die(__('Cheatin’ uh?')); 58 58 case 'editcat': 59 59 $cat_id = (int)$_GET['cat_id']; 60 60 $file_category = &WPFB_Category::GetCat($cat_id); … … 68 68 case 'addcat': 69 69 $update = !empty($update); 70 if ( !current_user_can('manage_categories') )71 wp_die(__('Cheatin’ uh?'/*def*/));72 70 73 71 $result = WPFB_Admin::InsertCategory(array_merge(stripslashes_deep($_POST), $_FILES)); … … 80 78 //wp_redirect($clean_uri . '&action=manage_cats&message=' . urlencode($message)); 81 79 82 default: 83 if(!current_user_can('manage_categories')) 84 wp_die(__('Cheatin’ uh?'/*def*/)); 85 80 default: 86 81 if(!empty($_POST['deleteit'])) 87 82 { 88 83 foreach ( (array) $_POST['delete'] as $cat_id ) { 89 if(is_object($cat = WPFB_Category::GetCat($cat_id)) )84 if(is_object($cat = WPFB_Category::GetCat($cat_id)) && $cat->CurUserCanEdit()) 90 85 $cat->Delete(); 91 86 } -
wp-filebase/trunk/classes/AdminGuiFiles.php
r590827 r615301 26 26 if(isset($_GET['exform'])) { 27 27 $exform = (!empty($_GET['exform']) && $_GET['exform'] == 1); 28 update_user_option($user_ID, WPFB_OPT_NAME . '_exform', $exform );28 update_user_option($user_ID, WPFB_OPT_NAME . '_exform', $exform?1:0); 29 29 } else { 30 $exform = ( bool)get_user_option(WPFB_OPT_NAME . '_exform');30 $exform = (get_user_option(WPFB_OPT_NAME . '_exform') === 1); 31 31 } 32 32 … … 62 62 63 63 case 'updatefile': 64 if(!current_user_can('upload_files')) wp_die(__('Cheatin’ uh?')); 64 65 $file_id = (int)$_POST['file_id']; 65 66 $update = true; … … 69 70 case 'addfile': 70 71 $update = !empty($update); 71 72 72 73 if ( !current_user_can('upload_files') ) 73 74 wp_die(__('Cheatin’ uh?')); 74 75 /* // this was causing some trouble...76 foreach ( array('aa', 'mm', 'jj', 'hh', 'mn') as $timeunit ) {77 if ( !empty($_POST['hidden_' . $timeunit] ) && $_POST['hidden_' . $timeunit] != $_POST[$timeunit] ) {78 $edit_date = true;79 break;80 }81 }*/82 75 83 76 extract($_POST); … … 98 91 } 99 92 100 default: 93 default: 101 94 if(!current_user_can('upload_files')) 102 95 wp_die(__('Cheatin’ uh?')); … … 116 109 ?></h2> 117 110 <?php if ( !empty($message) ) : ?><div id="message" class="updated fade"><p><?php echo $message; ?></p></div><?php endif; 118 if( $action == 'addfile' || $action == 'updatefile')111 if(WPFB_Admin::CurUserCanUpload() && ($action == 'addfile' || $action == 'updatefile')) 119 112 { 120 113 unset($file); … … 200 193 201 194 $cat = $file->GetParent(); 202 $user_roles = $file->Get UserRoles();195 $user_roles = $file->GetReadPermissions(); 203 196 ?> 204 197 <tr id='file-<?php echo $file_id ?>'<?php if($file->file_offline) { echo " class='offline'"; } ?>> 205 198 <th scope='row' class='check-column'><input type='checkbox' name='delete[]' value='<?php echo $file_id ?>' /></th> 206 199 <td class="num"><?php echo $file_id ?></td> 207 <td class="wpfilebase-admin-list-row-title"><a class='row-title' href='<?php echo esc_attr($file->GetEditUrl()) ?>' title='"<?php echo esc_attr($file->file_display_name); ?>" bearbeiten'> 200 <td class="wpfilebase-admin-list-row-title"> 201 <a class='row-title' href='<?php echo esc_attr($file->GetEditUrl()) ?>' title='"<?php echo esc_attr($file->file_display_name); ?>" bearbeiten'> 208 202 <?php if(!empty($file->file_thumbnail)) { ?><img src="<?php echo esc_attr($file->GetIconUrl()); ?>" height="32" /><?php } ?> 209 203 <span><?php if($file->IsRemote()){echo '*';} echo esc_html($file->file_display_name); ?></span> … … 233 227 <?php 234 228 235 if($action != 'addfile' && $action != 'updatefile' )229 if($action != 'addfile' && $action != 'updatefile' && WPFB_Admin::CurUserCanUpload()) 236 230 { 237 231 unset($file); -
wp-filebase/trunk/classes/AdminGuiManage.php
r599972 r615301 42 42 </script> 43 43 <div class="wrap"> 44 <div id="icon-wpfilebase" class="icon32"><br /></div> 44 45 <h2><?php echo WPFB_PLUGIN_NAME; ?></h2> 45 46 … … 72 73 73 74 if(!empty($error_msg)) echo '<div class="error default-password-nag"><p>'.$error_msg.'</p></div>'; 75 74 76 if(WPFB_Core::GetOpt('tag_conv_req')) { 75 77 echo '<div class="updated"><p><a href="'.add_query_arg('action', 'convert-tags').'">'; 76 78 _e('WP-Filebase content tags must be converted',WPFB); 77 79 echo '</a></p></div><div style="clear:both;"></div>'; 80 } 81 82 if(!get_post(WPFB_Core::GetOpt('file_browser_post_id'))) { 83 echo '<div class="updated"><p>'; 84 printf(__('File Browser post or page not set! Some features like search will not work. <a href="%s">Click here to set the File Browser Post ID.</a>',WPFB), esc_attr(admin_url('admin.php?page=wpfilebase_sets#'.sanitize_title(__('File Browser',WPFB))))); 85 echo '</p></div><div style="clear:both;"></div>'; 78 86 } 79 87 … … 168 176 array('action' => 'sync', 169 177 )); ?>" class="button"><?php _e('Sync Filebase',WPFB)?></a> <?php _e('Synchronises the database with the file system. Use this to add FTP-uploaded files.',WPFB) ?></p> 170 < p><a href="<?php echo add_query_arg('action', 'convert-tags') ?>" class="button"><?php _e('Convert old Tags',WPFB)?></a> <?php printf(__('Convert tags from versions earlier than %s.',WPFB), '0.2.0') ?></p>178 <?php if(WPFB_Core::GetOpt('tag_conv_req')) { ?><p><a href="<?php echo add_query_arg('action', 'convert-tags') ?>" class="button"><?php _e('Convert old Tags',WPFB)?></a> <?php printf(__('Convert tags from versions earlier than %s.',WPFB), '0.2.0') ?></p> <?php } ?> 171 179 <!-- <p><a href="<?php echo add_query_arg('action', 'add-urls') ?>" class="button"><?php _e('Add multiple URLs',WPFB)?></a> <?php _e('Add multiple remote files at once.', WPFB); ?></p> 172 180 --> 173 181 174 <?php WPFB_Admin::PrintForm('file', null, array('exform' => $exform)) ?> 182 <?php 183 if(WPFB_admin::CurUserCanUpload()) WPFB_Admin::PrintForm('file', null, array('exform' => $exform)); 184 ?> 175 185 176 186 <?php -
wp-filebase/trunk/classes/AdminGuiSettings.php
r598768 r615301 55 55 case 'roles': 56 56 $post[$opt_tag] = array_values(array_filter($post[$opt_tag])); 57 // the following must not be removed! if the roles array is empty, permissions are assumed to be set for everyone! 58 // so make sure that the admin is explicitly set! 59 if(!empty($opt_data['not_everyone']) && !in_array('administrator', $post[$opt_tag])) { 60 if(!is_array($post[$opt_tag])) $post[$opt_tag] = array(); 61 array_unshift($post[$opt_tag],'administrator'); 62 } 57 63 break; 58 64 … … 183 189 184 190 <div class="wrap"> 191 <div id="icon-options-general" class="icon32"><br /></div> 185 192 <h2><?php echo WPFB_PLUGIN_NAME; echo ' '; _e("Settings"/*def*/); ?></h2> 186 193 … … 199 206 __('Common', WPFB) => array('upload_path','search_integration' /*'cat_drop_down'*/), 200 207 __('Display', WPFB) => array('file_date_format','thumbnail_size','auto_attach_files', 'attach_loop','attach_pos', 'filelist_sorting', 'filelist_sorting_dir', 'filelist_num', /* TODO: remove? 'parse_tags_rss',*/ 'decimal_size_format'), 201 __('File Browser',WPFB) => array('file_browser_post_id','file_browser_cat_sort_by','file_browser_cat_sort_dir','file_browser_file_sort_by','file_browser_file_sort_dir','file_browser_fbc', 'late_script_loading','disable_footer_credits','footer_credits_style'), 208 __('File Browser',WPFB) => array('file_browser_post_id','file_browser_cat_sort_by','file_browser_cat_sort_dir','file_browser_file_sort_by','file_browser_file_sort_dir','file_browser_fbc', 'late_script_loading', 209 'disable_footer_credits','footer_credits_style', 210 ), 202 211 __('Download', WPFB) => array( 203 212 'disable_permalinks', 'download_base', 'force_download', 'range_download', 'http_nocache', 'ignore_admin_dls', 'accept_empty_referers','allowed_referers','dl_destroy_session'), 204 213 __('Form Presets', WPFB) => array('default_author','default_roles', 'default_cat', 'languages', 'platforms', 'licenses', 'requirements', 'custom_fields'), 205 214 __('Limits', WPFB) => array('bitrate_unregistered', 'bitrate_registered', 'traffic_day', 'traffic_month', 'traffic_exceeded_msg', 'file_offline_msg', 'daily_user_limits', 'daily_limit_subscriber', 'daily_limit_contributor', 'daily_limit_author', 'daily_limit_editor', 'daily_limit_exceeded_msg'), 206 __('Security', WPFB) => array('allow_srv_script_upload', 'frontend_upload', 'hide_inaccessible', 'inaccessible_msg', 'inaccessible_redirect', ' login_redirect_src', 'protect_upload_path', 'private_files'),215 __('Security', WPFB) => array('allow_srv_script_upload', 'frontend_upload', 'hide_inaccessible', 'inaccessible_msg', 'inaccessible_redirect', 'cat_inaccessible_msg', 'login_redirect_src', 'protect_upload_path', 'private_files'), 207 216 __('Templates and Scripts', WPFB) => array('template_file', 'template_cat', 'dlclick_js'), 208 217 __('Misc') => $misc_tags, … … 274 283 275 284 case 'roles': 276 WPFB_Admin::RolesCheckList($opt_tag, $opt_val );285 WPFB_Admin::RolesCheckList($opt_tag, $opt_val, empty($field_data['not_everyone'])); 277 286 break; 278 287 -
wp-filebase/trunk/classes/AdminGuiTpls.php
r598768 r615301 248 248 <th scope="row" class="check-column"><input type="checkbox" name="tpl[]" value="<?php echo esc_attr($tpl_tag) ?>" /></th> 249 249 <td class="column-title"> 250 <strong><a class="row-title" href="<?php echo $edit_link ?>" title="<?php printf(__('Edit “%s”'), $tpl_tag) ?>"><?php echo __(__(esc_html(WPFB_Output::Filename2Title($tpl_tag))), WPFB)?></a></strong>250 <strong><a class="row-title" href="<?php echo $edit_link ?>" title="<?php printf(__('Edit “%s”'), $tpl_tag) ?>"><?php echo self::TplTitle($tpl_tag); ?></a></strong> 251 251 <div class="row-actions"><span class='edit'><a href="<?php echo $edit_link ?>" title="<?php _e('Edit this item') ?>"><?php _e('Edit') ?></a></span> 252 252 <?php if(!in_array($tpl_tag, self::$protected_tags)){ ?><span class='trash'>| <a class='submitdelete' title='<?php _e('Delete this item permanently') ?>' href='<?php echo add_query_arg(array('action'=>'del','type'=>$type,'tpl'=>$tpl_tag)).'#'.$type ?>'><?php _e('Delete') ?></a></span><?php } ?> … … 290 290 } 291 291 ?> 292 <h2><?php _e($new?'Add Template' : 'Edit Template', WPFB) ?></h2> 292 <h2><?php _e($new?'Add Template' : 'Edit Template', WPFB); 293 if(!empty($tpl_tag)) echo ' '.self::TplTitle($tpl_tag); ?></h2> 293 294 <form action="<?php echo remove_query_arg(array('action','type','tpl')).'#'.$type ?>" method="post"> 294 295 <input type="hidden" name="action" value="<?php echo $new?'add':'update'; ?>" /> … … 357 358 return $content; 358 359 } 359 } 360 ?> 360 361 static function TplTitle($tpl_tag) 362 { 363 return __(__(esc_html(WPFB_Output::Filename2Title($tpl_tag))), WPFB); 364 } 365 } -
wp-filebase/trunk/classes/AdminLite.php
r599972 r615301 33 33 34 34 $menu_entries = array( 35 array('tit'=>'Files', 'tag'=>'files', 'fnc'=>'DisplayFilesPage', 'desc'=>'View uploaded files and edit them', 'cap'=>'upload_files'), 36 array('tit'=>__('Categories'/*def*/), 'tag'=>'cats', 'fnc'=>'DisplayCatsPage', 'desc'=>'Manage existing categories and add new ones.', 'cap'=>'manage_categories'), 35 array('tit'=>'Files', 'tag'=>'files', 'fnc'=>'DisplayFilesPage', 'desc'=>'View uploaded files and edit them', 36 'cap'=>'upload_files', 37 ), 38 array('tit'=>__('Categories'/*def*/), 'tag'=>'cats', 'fnc'=>'DisplayCatsPage', 'desc'=>'Manage existing categories and add new ones.', 39 'cap'=>'manage_categories', 40 ), 41 37 42 //array('tit'=>'Sync Filebase', 'hide'=>true, 'tag'=>'sync', 'fnc'=>'DisplaySyncPage', 'desc'=>'Synchronises the database with the file system. Use this to add FTP-uploaded files.', 'cap'=>'upload_files'), 38 array('tit'=>'Edit Stylesheet', 'tag'=>'css', 'fnc'=>'DisplayStylePage', 'desc'=>'Edit the CSS for the file template', 'cap'=>'edit_themes'), 39 array('tit'=>'Manage Templates', 'tag'=>'tpls', 'fnc'=>'DisplayTplsPage', 'desc'=>'Edit custom file list templates', 'cap'=>'edit_themes'), 40 array('tit'=>__('Settings'), 'tag'=>'sets', 'fnc'=>'DisplaySettingsPage','desc'=>'Change Settings', 'cap'=>'manage_options'), 43 44 array('tit'=>'Edit Stylesheet', 'tag'=>'css', 'fnc'=>'DisplayStylePage', 'desc'=>'Edit the CSS for the file template', 45 'cap'=>'edit_themes', 46 ), 47 48 array('tit'=>'Manage Templates', 'tag'=>'tpls', 'fnc'=>'DisplayTplsPage', 'desc'=>'Edit custom file list templates', 49 'cap'=>'edit_themes', 50 ), 51 52 array('tit'=>__('Settings'), 'tag'=>'sets', 'fnc'=>'DisplaySettingsPage','desc'=>'Change Settings', 53 'cap'=>'manage_options'), 41 54 array('tit'=>'Donate & Feature Request','tag'=>'sup', 'fnc'=>'DisplaySupportPage','desc'=>'If you like this plugin and want to support my work, please donate. You can also post your ideas making the plugin better.', 'cap'=>'manage_options'), 42 55 ); 43 56 44 57 foreach($menu_entries as $me) 45 { 58 { 46 59 $callback = array(__CLASS__, $me['fnc']); 47 60 add_submenu_page($pm_tag, WPFB_PLUGIN_NAME.' - '.__($me['tit'], WPFB), empty($me['hide'])?__($me['tit'], WPFB):null, empty($me['cap'])?'read':$me['cap'], WPFB_OPT_NAME.'_'.$me['tag'], $callback); -
wp-filebase/trunk/classes/Category.php
r529024 r615301 172 172 case 'cat_parent_name': return is_object($parent =& $this->GetParent()) ? $parent->cat_name : ''; 173 173 case 'cat_icon_url': return $this->GetIconUrl(); 174 case 'cat_small_icon': $esc=false; return '<img align=""src="'.$this->GetIconUrl('small').'" style="height:32px;vertical-align:middle;" />';174 case 'cat_small_icon': $esc=false; return '<img src="'.$this->GetIconUrl('small').'" style="height:32px;vertical-align:middle;" />'; 175 175 case 'cat_num_files': return $this->cat_num_files; 176 176 case 'cat_num_files_total': return $this->cat_num_files_total; 177 //case 'cat_required_level': return ($this->cat_required_level - 1); 177 //case 'cat_required_level': return ($this->cat_required_level - 1); 178 case 'cat_user_can_access': return $this->CurUserCanAccess(); 178 179 case 'uid': return self::$tpl_uid; 179 180 } … … 186 187 return $esc?esc_html($v):$v; 187 188 } 189 190 function CurUserIsOwner() 191 { 192 return false; // TODO: cats dont have owners 193 } 188 194 } 189 195 -
wp-filebase/trunk/classes/Core.php
r599590 r615301 30 30 add_filter('wp_get_attachment_url', array(__CLASS__, 'GetAttachmentUrlFilter')); 31 31 add_filter('get_attached_file', array(__CLASS__, 'GetAttachedFileFilter')); 32 32 33 33 34 // register treeview stuff … … 289 290 'num' => 0, 290 291 'pagenav' => 1, 291 'linktext' => null ,292 'linktext' => null 292 293 ), $atts), $content, $tag); 293 294 } … … 538 539 539 540 static function AdminDashboardSetup() { 540 if(current_user_can('upload_files')) { 541 wpfb_loadclass('Admin'); 541 542 if(wpfb_call('Admin','CurUserCanUpload')) 543 { 542 544 wp_add_dashboard_widget('wpfb-add-file-widget', WPFB_PLUGIN_NAME.': '.__('Add File', WPFB), array('WPFB_Admin', 'AddFileWidget')); 543 545 } … … 568 570 569 571 static function Cron() { 570 if(self::GetOpt('cron_sync')) 572 if(self::GetOpt('cron_sync')) { 571 573 wpfb_call('Sync', 'Sync'); 574 update_option(WPFB_OPT_NAME.'_cron_sync_time', time()); 575 } 572 576 } 573 577 … … 643 647 return create_function('$f', "return ($parsed_tpl);"); 644 648 } 645 } 649 650 } -
wp-filebase/trunk/classes/Download.php
r598768 r615301 459 459 $bandwidth *= 1024; 460 460 $bandwidth /= 1000; 461 462 global $wpdb; 463 if(!empty($wpdb->dbh)) 464 @mysql_close($wpdb->dbh); 461 465 462 466 $cur = $begin; -
wp-filebase/trunk/classes/File.php
r599590 r615301 79 79 } else { 80 80 $permission_sql = "file_user_roles = ''"; 81 foreach($current_user->roles as $ur) { 81 $roles = $current_user->roles; 82 foreach($roles as $ur) { 82 83 $ur = $wpdb->escape($ur); 83 $permission_sql .= " OR (file_user_roles = '{$ur}') OR (file_user_roles LIKE '{$ur}|%') OR (file_user_roles LIKE '%|{$ur}|%') OR (file_user_roles LIKE '%|{$ur}')";84 $permission_sql .= " OR MATCH(file_user_roles) AGAINST ('{$ur}' IN BOOLEAN MODE)"; 84 85 } 85 86 if($current_user->ID > 0) … … 199 200 foreach($ints as $i) $this->$i = intval($this->$i); 200 201 $this->file_offline = (int)!empty($this->file_offline); 201 $this->file_direct_linking = (int) !empty($this->file_direct_linking);202 $this->file_direct_linking = (int)$this->file_direct_linking; 202 203 $this->file_force_download = (int)!empty($this->file_force_download); 203 204 if(empty($this->file_last_dl_time)) $this->file_last_dl_time = '0000-00-00 00:00:00'; … … 414 415 case 'cat_url': return is_null($cat = $this->GetParent()) ? '' : htmlspecialchars($cat->GetUrl()); 415 416 417 case 'file_cat_folder': return htmlspecialchars(is_object($cat = $this->GetParent()) ? $cat->cat_folder : ''); 418 416 419 case 'file_languages': return wpfb_call('Output','ParseSelOpts', array('languages', $this->file_language),true); 417 420 case 'file_platforms': return wpfb_call('Output','ParseSelOpts', array('platforms', $this->file_platform),true); … … 420 423 421 424 //case 'file_required_level': return ($this->file_required_level - 1); 425 case 'file_user_can_access': return $this->CurUserCanAccess(); 422 426 423 427 case 'file_description': return nl2br($this->file_description); … … 486 490 487 491 // check referrer 488 if( !$this->file_direct_linking) {492 if($this->file_direct_linking != 1) { 489 493 // if referer check failed, redirect to the file post 490 494 if(!WPFB_Download::RefererCheck()) { -
wp-filebase/trunk/classes/FileListTable.php
r529024 r615301 21 21 $columns = array( 22 22 'cb' => '<input type="checkbox" />', //Render a checkbox instead of text 23 'id' => 'Title',24 'display_name' => __('',WPFB),25 'name' => __('',WPFB),26 'size' => __('',WPFB),27 'desc' => __('',WPFB),28 'cat' => __('',WPFB),29 'perm' => __('',WPFB),30 'owner' => __('',WPFB),31 'date' => __('',WPFB),32 'hits' => __('',WPFB),33 'dltime' => __('',WPFB)34 23 ); 35 24 return $columns; … … 38 27 function get_sortable_columns() { 39 28 $sortable_columns = array( 40 'title' => array('title',true), //true means its already sorted 41 'rating' => array('rating',false), 42 'director' => array('director',false) 29 'id' => _e('ID'/*def*/), 30 'display_name' => _e('Name'/*def*/), 31 'name' => _e('Filename', WPFB), 32 'size' => _e('Size'/*def*/), 33 //'description' => _e('Description'/*def*/), 34 'category_name' => _e('Category'/*def*/), 35 'user_roles' => _e('Access Permission',WPFB), 36 'added_by' => _e('Owner',WPFB), 37 'date' => _e('Date'/*def*/), 38 'hits' => _e('Hits', WPFB), 39 'last_dl_time' => _e('Last download', WPFB) 43 40 ); 44 41 return $sortable_columns; … … 58 55 } 59 56 60 function column_ title($item){57 function column_display_name($item){ 61 58 $actions = array( 62 'edit' => '<a href="'.$item->GetEditUrl().'">"'.__('Edit').'</a>', 63 'delete' => '<a href="'.$item->GetEditUrl().'">"'.__('Delete').'</a>', 64 ); 65 /* 66 <?php if(!empty($file->file_thumbnail)) { ?><img src="<?php echo esc_attr($file->GetIconUrl()); ?>" height="32" /><?php } ?> 67 <span><?php if($file->IsRemote()){echo '*';} echo esc_html($file->file_display_name); ?></span> 68 69 */ 70 71 //Return the title contents 72 return sprintf('%1$s <span style="color:silver">(id:%2$s)</span>%3$s', 73 /*$1%s*/ $item->GetTitle(), 74 /*$2%s*/ $item->GetId(), 75 /*$3%s*/ $this->row_actions($actions) 76 ); 77 } 78 59 'edit' => '<a href="'.esc_attr($item->GetEditUrl()).'">"'.__('Edit').'</a>', 60 'delete' => '<a href="">"'.__('Delete').'</a>', 61 ); 62 63 $col = '<a class="row-title" href="'.esc_attr($file->GetEditUrl()).'" title="'.esc_attr(sprintf(__('Edit “%s”'),$file->GetTitle())).'">'; 64 if(!empty($file->file_thumbnail)) 65 $col .= '<img src="'.esc_attr($file->GetIconUrl()).'" height="32" />'; 66 $col .= '<span>'.($file->IsRemote()?'*':'').esc_html($file->GetTitle(32)).'</span>'; 67 $col .= '</a>'; 68 $col .= $this->row_actions($actions); 69 return $col; 70 } 71 72 function column_name($file) 73 { 74 return '<a href="'.esc_attr($file->GetUrl()).'">'.esc_html($file->file_name).'</a>'; 75 } 76 77 function column_size($file) 78 { 79 return WPFB_Output::FormatFilesize($file->file_size); 80 } 81 82 function column_category_name($file) 83 { 84 $cat = $file->GetParent(); 85 return (!is_null($cat) ? ('<a href="'.esc_attr($cat->GetEditUrl()).'">'.esc_html($file->file_category_name).'</a>') : '-'); 86 } 87 88 function column_user_roles($file) 89 { 90 return WPFB_Output::RoleNames($file->GetReadPermissions(), true); 91 } 92 93 function column_added_by($file) 94 { 95 return (empty($file->file_added_by) || !($usr = get_userdata($file->file_added_by))) ? '-' : esc_html($usr->user_login); 96 } 97 98 function column_date($file) 99 { 100 return $file->GetFormattedDate(); 101 } 102 103 function column_hits($file) 104 { 105 return $file->file_hits; 106 } 107 108 function column_last_dl_time($file) 109 { 110 return ( (!empty($file->file_last_dl_time) && $file->file_last_dl_time > 0) ? mysql2date(get_option('date_format'), $file->file_last_dl_time) : '-'); 111 } 79 112 80 113 function get_bulk_actions() { 81 114 $actions = array( 82 'delete' => 'Delete' 115 'delete' => 'Delete', 116 'edit' => 'Change Category', 117 '' 83 118 ); 84 119 return $actions; -
wp-filebase/trunk/classes/GetID3.php
r566139 r615301 7 7 require_once(WPFB_PLUGIN_ROOT.'extras/getid3/getid3.php'); 8 8 self::$engine = new getID3; 9 //$getID3->setOption(array(10 // 'option_md5_data' => $AutoGetHashes,11 // 'option_sha1_data' => $AutoGetHashes,12 //));13 9 } 14 10 … … 110 106 self::getKeywords($val, $keywords); 111 107 self::getKeywords(array_keys($val), $keywords); // this is for archive files, where file names are array keys 112 } else if(is_string($val)) { 113 if(!in_array($val, $keywords)) 114 array_push($keywords, $val); 108 } else if(is_string($val)) { 109 $val = explode(' ', strtolower(preg_replace('/\W+/',' ',$val))); 110 foreach($val as $v) { 111 if(!in_array($v, $keywords)) 112 array_push($keywords, $v); 113 } 115 114 } 116 115 } 117 116 return $keywords; 118 117 } 118 119 119 } -
wp-filebase/trunk/classes/Item.php
r599590 r615301 9 9 10 10 var $locked = 0; 11 12 private $_read_permissions = null; 11 13 12 14 static $tpl_uid = 0; … … 43 45 } 44 46 return $this->last_parent; 47 } 48 function GetParents() 49 { 50 $parents = array(); 51 while(!is_null($p = $this->GetParent())) $parents[] = $p; 52 return $parents; 45 53 } 46 54 function Lock($lock=true) { … … 189 197 if( ($for_tpl && !WPFB_Core::GetOpt('hide_inaccessible')) || in_array('administrator',$current_user->roles) || ($this->is_file && $this->CurUserIsOwner()) ) 190 198 return true; 191 192 199 if($this->is_file && WPFB_Core::GetOpt('private_files') && $this->file_added_by != 0 && !$this->CurUserIsOwner()) // check private files 193 200 return false; 194 195 $frs = $this->GetUserRoles(); 196 if(empty($frs[0])) return true; // item is for everyone! 201 $frs = $this->GetReadPermissions(); 202 if(empty($frs)) return true; // item is for everyone! 197 203 foreach($current_user->roles as $ur) { // check user roles against item roles 198 204 if(in_array($ur, $frs)) … … 204 210 function CurUserCanEdit() 205 211 { 206 global $current_user; 207 if($current_user->ID > 0 && empty($current_user->roles[0])) 208 $current_user = new WP_User($current_user->ID);// load the roles! 209 210 if(in_array('administrator',$current_user->roles) || ($this->is_file && $this->CurUserIsOwner())) return true; 211 if(!current_user_can('upload_files')) return false; 212 213 return $this->is_file ? (current_user_can('edit_others_posts') && !WPFB_Core::GetOpt('private_files')) : current_user_can('manage_categories'); 212 // current_user_can('edit_files') checks if user is admin! 213 return $this->CurUserIsOwner() || current_user_can('edit_files') || (!WPFB_Core::GetOpt('private_files') && current_user_can($this->is_file ? 'edit_others_posts' : 'manage_categories')); 214 214 } 215 215 … … 360 360 } 361 361 362 function Get UserRoles() {363 if( isset($this->roles_array)) return $this->roles_array; //caching362 function GetReadPermissions() { 363 if(!is_null($this->_read_permissions)) return $this->_read_permissions; //caching 364 364 $rs = $this->is_file?$this->file_user_roles:$this->cat_user_roles; 365 return ($this->roles_array = empty($rs) ? array() : (is_string($rs) ? explode('|', $rs) : (array)$rs)); 366 } 367 368 function SetUserRoles($roles) { 365 return ($this->_read_permissions = empty($rs) ? array() : array_filter((is_string($rs) ? explode('|', $rs) : (array)$rs))); 366 } 367 368 function SetReadPermissions($roles) 369 { 369 370 if(!is_array($roles)) $roles = explode('|',$roles); 370 $this-> roles_array= $roles = array_filter(array_filter(array_map('trim',$roles),'strlen')); // remove empty371 $this->_read_permissions = $roles = array_filter(array_filter(array_map('trim',$roles),'strlen')); // remove empty 371 372 $roles = implode('|', $roles); 372 373 if($this->is_file) $this->file_user_roles = $roles; … … 409 410 410 411 // inherit user roles 411 if(count($this->Get UserRoles()) == 0)412 $this->Set UserRoles(($new_cat_id != 0) ? $new_cat->GetUserRoles() : WPFB_Core::GetOpt('default_roles'));412 if(count($this->GetReadPermissions()) == 0) 413 $this->SetReadPermissions(($new_cat_id != 0) ? $new_cat->GetReadPermissions() : WPFB_Core::GetOpt('default_roles')); 413 414 414 415 // flush cache -
wp-filebase/trunk/classes/Output.php
r599590 r615301 10 10 $args ['id'] = $id = is_null($item = WPFB_Item::GetByPath($args['path'])) ? 0 : $item->GetId(); 11 11 } 12 13 12 14 13 switch($args['tag']) { 15 14 case 'list': return do_shortcode(self::FileList($args)); … … 147 146 static function FileBrowserList(&$content, &$parents, $root_cat=null) 148 147 { 148 if(!is_null($root_cat) && !$root_cat->CurUserCanAccess()) { 149 $content .= '<li>'.WPFB_Core::GetOpt('cat_inaccessible_msg').'</li>'; 150 return; 151 } 152 149 153 $cats = WPFB_Category::GetFileBrowserCats(is_null($root_cat) ? 0 : $root_cat->cat_id); 150 154 $open_cat = array_pop($parents); … … 158 162 159 163 foreach($cats as $cat) { 160 if(!$cat->CurUserCanAccess( )) continue;164 if(!$cat->CurUserCanAccess(true)) continue; 161 165 162 166 $liclass = ''; … … 401 405 if(!empty($roles)) { 402 406 foreach($roles as $role) 403 $names[$role] = translate_user_role($wp_roles->roles[$role]['name']); 407 { 408 $names[$role] = translate_user_role($wp_roles->roles[$role]['name']); 409 } 404 410 } 405 411 return $fmt_string ? (empty($names) ? ("<i>".__('Everyone',WPFB)."</i>") : join(', ',$names)) : $names; -
wp-filebase/trunk/classes/ProgressReporter.php
r599590 r615301 1 1 <?php class WPFB_ProgressReporter { 2 2 var $quiet; 3 4 var $progress_cur; 5 var $progress_end; 6 var $progress_bar; 7 8 var $files = array(); 9 10 function WPFB_ProgressReporter($suppress_output = false) 11 { 12 $this->quiet = !!$suppress_output; 13 } 3 14 4 15 function Log($msg, $no_new_line=false) { … … 9 20 function LogError($err) 10 21 { 11 22 if($this->quiet) return; 23 self::DEcho("<span style='color:#d00;'>$err</span><br />"); 12 24 } 13 25 14 function SetProgress($percentage)26 function InitProgress($progress_end) 15 27 { 16 28 $this->progress_end = $progress_end; 29 if(!$this->quiet) { 30 if(is_null($this->progress_bar)) { 31 include_once(WPFB_PLUGIN_ROOT.'extras/progressbar.class.php'); 32 $this->progress_bar = new progressbar(0, 100); 33 $this->progress_bar->print_code(); 34 } 35 } 36 } 37 38 function SetProgress($progress) 39 { 40 $this->progress_cur = $progress; 41 if(!$this->quiet && !is_null($this->progress_bar)) { 42 $this->progress_bar->set(100*$progress/$this->progress_end); 43 } 44 } 45 46 function SetSubProgress($sub_progress, $sub_total) 47 { 48 if(!$this->quiet && !is_null($this->progress_bar)) 49 $this->progress_bar->set(100*($this->progress_cur+$sub_progress)/$this->progress_end); 50 } 51 52 function FileChanged($file, $action) 53 { 54 if(empty($this->files[$action])) $this->files[$action] = array(); 55 $this->files[$action][] = $file; 56 } 57 58 function ChangedFilesReport() 59 { 60 foreach($this->files as $tag => $group) 61 { 62 $t = str_replace('_', ' ', $tag); 63 $t{0} = strtoupper($t{0}); 64 65 echo '<h2>' . __($t) . '</h2><ul>'; 66 foreach($group as $item) 67 echo '<li>' . (is_object($item) ? ('<a href="'.$item->GetEditUrl().'">'.$item->GetLocalPathRel().'</a>') : $item) . '</li>'; 68 echo '</ul>'; 69 } 70 71 foreach($this->files as $t => $group) 72 { 73 $n = count($group); 74 echo '<p>'; 75 printf(__('%d files <i>%s</i>',WPFB), $n, $t); 76 echo '</p>'; 77 } 17 78 } 18 79 -
wp-filebase/trunk/classes/Search.php
r598768 r615301 60 60 $where = "(1"; 61 61 62 // TODO: search fields with match... 62 63 foreach($search_terms as $term) { 63 64 $where .= " AND ("; … … 68 69 if(empty($or)) $or = 'OR '; 69 70 } 70 if($search_id3) $where .= " OR ({$wpdb->wpfilebase_files_id3}.keywords LIKE '{$p}{$term}{$p}')"; 71 if($search_id3) $where .= " OR ({$wpdb->wpfilebase_files_id3}.keywords LIKE '{$p}{$term}{$p}')"; // TODO: MATCH func here 71 72 $where .= ") "; 72 73 } -
wp-filebase/trunk/classes/Setup.php
r599972 r615301 225 225 226 226 227 static function SetupDBTables( )227 static function SetupDBTables($old_ver=null) 228 228 { 229 229 global $wpdb; … … 247 247 `cat_exclude_browser` enum('0','1') NOT NULL default '0', 248 248 `cat_order` int(8) NOT NULL default '0', 249 PRIMARY KEY (`cat_id`) 249 PRIMARY KEY (`cat_id`), 250 FULLTEXT KEY `USER_ROLES` (`cat_user_roles`) 250 251 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1"; 251 252 … … 272 273 `file_user_roles` varchar(255) NOT NULL default '', 273 274 `file_offline` enum('0','1') NOT NULL default '0', 274 `file_direct_linking` enum('0','1' ) NOT NULL default '0',275 `file_direct_linking` enum('0','1','3') NOT NULL default '0', 275 276 `file_force_download` enum('0','1') NOT NULL default '0', 276 277 `file_category` int(8) unsigned NOT NULL default '0', … … 288 289 ". /*`file_meta` TEXT NULL DEFAULT NULL,*/ " 289 290 PRIMARY KEY (`file_id`), 290 FULLTEXT KEY `FULLTEXT` (`file_description`) 291 FULLTEXT KEY `DESCRIPTION` (`file_description`), 292 FULLTEXT KEY `USER_ROLES` (`file_user_roles`) 291 293 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1"; 292 294 … … 296 298 `value` LONGTEXT NOT NULL, 297 299 `keywords` TEXT NOT NULL, 298 PRIMARY KEY (`file_id`) 300 PRIMARY KEY (`file_id`), 301 FULLTEXT KEY `KEYWORDS` (`keywords`) 299 302 ) ENGINE=MyISAM DEFAULT CHARSET=utf8"; 300 303 … … 354 357 //$queries[] = "@ALTER TABLE `$tbl_files` ADD `file_meta` TEXT NULL DEFAULT NULL"; 355 358 359 // add fulltext indices 360 if(!empty($old_ver) && version_compare($old_ver, '0.2.9.24') < 0) { // TODO: search fields fulltext index! 361 $queries[] = "@ALTER TABLE `$tbl_files` ADD FULLTEXT `USER_ROLES` (`file_user_roles`)"; 362 $queries[] = "@ALTER TABLE `$tbl_cats` ADD FULLTEXT `USER_ROLES` (`cat_user_roles`)"; 363 $queries[] = "@ALTER TABLE `$tbl_files_id3` ADD FULLTEXT `KEYWORDS` (`keywords`)"; 364 } 365 366 // 2 is for file pages 367 if(!empty($old_ver) && version_compare($old_ver, '0.2.9.24') < 0) 368 $queries[] = "ALTER TABLE `$tbl_files` CHANGE `file_direct_linking` `file_direct_linking` ENUM( '0', '1', '2' ) NOT NULL DEFAULT '0'"; 356 369 357 370 $queries[] = "OPTIMIZE TABLE `$tbl_cats`"; … … 387 400 $files = $wpdb->get_results("SELECT file_id,file_required_level FROM $tbl_files WHERE file_required_level <> 0"); 388 401 foreach ( (array) $files as $file ) { 389 $wpdb->query("UPDATE `$tbl_files` SET `file_user_roles` = ' ".WPFB_Core::UserLevel2Role($file->file_required_level - 1)."' WHERE `file_id` = $file->file_id");402 $wpdb->query("UPDATE `$tbl_files` SET `file_user_roles` = '|".WPFB_Core::UserLevel2Role($file->file_required_level - 1)."' WHERE `file_id` = $file->file_id"); 390 403 } 391 404 $wpdb->query("ALTER TABLE `$tbl_files` DROP `file_required_level`"); … … 395 408 $cats = $wpdb->get_results("SELECT cat_id,cat_required_level FROM $tbl_cats WHERE cat_required_level <> 0"); 396 409 foreach ( (array) $cats as $cat ) { 397 $wpdb->query("UPDATE `$tbl_cats` SET `cat_user_roles` = ' ".WPFB_Core::UserLevel2Role($cat->cat_required_level - 1)."' WHERE `cat_id` = $cat->cat_id");410 $wpdb->query("UPDATE `$tbl_cats` SET `cat_user_roles` = '|".WPFB_Core::UserLevel2Role($cat->cat_required_level - 1)."' WHERE `cat_id` = $cat->cat_id"); 398 411 } 399 412 $wpdb->query("ALTER TABLE `$tbl_cats` DROP `cat_required_level`"); 400 413 } 414 415 /* NOT neeeded since using fulltext index! 416 // add leading | to user_roles 417 if(!empty($old_ver) && version_compare($old_ver, '0.2.9.24') < 0) { 418 $wpdb->query("UPDATE `$tbl_files` SET `file_user_roles` = CONCAT('|', `file_user_roles`) WHERE LEFT(`file_user_roles`, 1) <> '|'"); 419 $wpdb->query("UPDATE `$tbl_cats` SET `cat_user_roles` = CONCAT('|', `cat_user_roles`) WHERE LEFT(`cat_user_roles`, 1) <> '|'"); 420 } 421 */ 401 422 } 402 423 … … 502 523 static function OnActivateOrVerChange($old_ver=null) { 503 524 wpfb_loadclass('Admin','File','Category'); 504 self::SetupDBTables( );525 self::SetupDBTables($old_ver); 505 526 $old_options = get_option(WPFB_OPT_NAME); 506 527 self::AddOptions(); -
wp-filebase/trunk/classes/Sync.php
r598768 r615301 19 19 private static function PreSync($sync_data) 20 20 { 21 self::PrintDebugTrace(); 21 22 @ini_set('max_execution_time', '0'); 22 23 @set_time_limit(0); … … 29 30 private static function SyncPase1($sync_data, $output) 30 31 { 32 self::PrintDebugTrace(); 33 31 34 if($output) self::DEcho('<p>'. __('Checking for file changes...',WPFB).' '); 32 35 self::CheckChangedFiles($sync_data); … … 43 46 44 47 if($output) self::DEcho('<p>'. __('Searching for new files...',WPFB).' '); 48 49 self::PrintDebugTrace("new_files"); 45 50 46 51 // search for not added files … … 67 72 $num_new_files++; 68 73 } 74 75 self::PrintDebugTrace("new_files_end"); 69 76 70 77 $sync_data->num_files_to_add = $num_new_files; … … 75 82 76 83 static function Sync($hash_sync=false, $output=false) 77 { 84 { 85 self::PrintDebugTrace(); 86 87 wpfb_loadclass('File', 'Category'); 78 88 $sync_data = new WPFB_SyncData(true); 79 89 $sync_data->hash_sync = $hash_sync; … … 103 113 private function PostSync($sync_data, $output) 104 114 { 115 self::PrintDebugTrace(); 116 105 117 // chmod 106 118 if($output) self::DEcho('<p>Setting permissions...'); … … 184 196 static function AddNewFiles($sync_data, $progress_bar=null, $max_batch_size=0) 185 197 { 198 self::PrintDebugTrace(); 186 199 $keys = array_keys($sync_data->new_files); 187 200 $upload_dir = self::cleanPath(WPFB_Core::UploadDir()); … … 401 414 } 402 415 } 416 417 static function PrintDebugTrace($tag="") { 418 if(!empty($_GET['debug'])) 419 { 420 echo "<!-- [$tag] BACKTRACE:\n"; 421 echo esc_html(print_r(wp_debug_backtrace_summary(), true)); 422 echo "\nEND -->"; 423 } 424 } 403 425 } 404 426 -
wp-filebase/trunk/classes/Widget.php
r599972 r615301 128 128 <?php 129 129 } 130 131 function CatTree(&$root_cat) 132 { 133 echo '<li><a href="'.$root_cat->GetUrl().'">'.esc_html($root_cat->cat_name).'</a>'; 134 135 $childs =& $root_cat->GetChildCats(); 136 if(count($childs) > 0) 137 { 138 echo '<ul>'; 139 foreach(array_keys($childs) as $i) self::CatTree($childs[$i]); 140 echo '</ul>'; 141 } 142 143 echo '</li>'; 144 } 130 145 } 131 146 … … 136 151 } 137 152 138 function widget( $args, $instance ) { 153 function widget( $args, $instance ) { 139 154 if(!WPFB_Core::GetOpt('frontend_upload')) 140 155 return; 141 142 156 wpfb_loadclass('File', 'Category', 'Output'); 143 157 … … 151 165 $prefix = "wpfb-upload-widget-".$this->id_base; 152 166 $form_url = add_query_arg('wpfb_upload_file', 1); 153 WPFB_Output::FileForm($prefix, $form_url, array('cat' => $instance['category'], 'overwrite' => (int)$instance['overwrite'])); 167 $form_args = array('cat' => $instance['category'], 'overwrite' => (int)$instance['overwrite']); 168 $form_args['file_post_id'] = $instance['attach'] ? WPFB_Core::GetPostId() : 0; // attach file to current post 169 WPFB_Output::FileForm($prefix, $form_url, $form_args); 154 170 155 171 echo $after_widget; … … 162 178 $instance['category'] = ($new_instance['category'] > 0) ? (is_null($cat=WPFB_Category::GetCat($new_instance['category'])) ? 0 : $cat->GetId()) : (int)$new_instance['category']; 163 179 $instance['overwrite'] = !empty($new_instance['overwrite']); 180 $instance['attach'] = !empty($new_instance['attach']); 164 181 return $instance; 165 182 } … … 181 198 </label></p> 182 199 <p><input type="checkbox" id="<?php echo $this->get_field_id('overwrite'); ?>" name="<?php echo $this->get_field_name('overwrite'); ?>" value="1" <?php checked(!empty($instance['overwrite'])) ?> /> <label for="<?php echo $this->get_field_id('overwrite'); ?>"><?php _e('Overwrite existing files', WPFB) ?></label></p> 200 <p><input type="checkbox" id="<?php echo $this->get_field_id('attach'); ?>" name="<?php echo $this->get_field_name('attach'); ?>" value="1" <?php checked(!empty($instance['attach'])) ?> /> <label for="<?php echo $this->get_field_id('attach'); ?>"><?php _e('Attach file to current post/page', WPFB) ?></label></p> 183 201 </div><?php 184 202 } -
wp-filebase/trunk/editor_plugin.php
r598768 r615301 270 270 <?php 271 271 } 272 WPFB_Admin::PrintForm('file', $file, array('exform'=>!empty($_GET['exform']), 'in_editor'=>true, 'post_id'=>$post_id)); 272 //if( (WPFB_Admin::CurUserCanUpload()&&empty($file))) TODO 273 WPFB_Admin::PrintForm('file', $file, array('exform'=>!empty($_GET['exform']), 'in_editor'=>true, 'post_id'=>$post_id)); 273 274 ?> 274 275 <h3 class="media-title"><?php _e('Attach existing file', WPFB) ?></h3> -
wp-filebase/trunk/lib/wpfb_form_cat.php
r494110 r615301 14 14 15 15 $default_roles = WPFB_Core::GetOpt('default_roles'); 16 $user_roles = ($update || empty($default_roles)) ? $file_category->Get UserRoles() : $default_roles;16 $user_roles = ($update || empty($default_roles)) ? $file_category->GetReadPermissions() : $default_roles; 17 17 $cat_members_only = !empty($user_roles); 18 18 … … 56 56 <?php } ?> 57 57 </td> 58 </tr> 59 <!-- <tr> 60 61 62 <th scope="row" valign="top"><label for="cat_members_only"><?php _e('For members only', WPFB) ?></label> 63 <input type="checkbox" name="cat_members_only" value="1" <?php checked(true, $cat_members_only) ?> onclick="WPFB_CheckBoxShowHide(this, 'cat_user_roles')" /></th> 64 <td> 65 <select name="cat_user_roles[]" id="cat_user_roles" size="40" multiple="multiple" style="height: 80px;" class="<?php if(!$cat_members_only) { echo 'hidden'; } ?>"> 66 <?php WPFB_Output::RolesDropDown($file_category->GetUserRoles()); 67 ?></select><br /> 68 <label for="cat_user_roles" class="<?php if(!$cat_members_only) { echo 'hidden'; } ?>"><?php _e("Select multiple roles by holding the CTRL/COMMAND key.")?></label> 69 </td> 70 </tr> 71 --> 72 58 </tr> 73 59 <tr> 74 60 <th scope="row" valign="top"><?php _e('Access Permission',WPFB) ?></th> -
wp-filebase/trunk/lib/wpfb_form_file.php
r598768 r615301 21 21 22 22 $default_roles = WPFB_Core::GetOpt('default_roles'); 23 $user_roles = ($update || empty($default_roles)) ? $file->Get UserRoles() : $default_roles;23 $user_roles = ($update || empty($default_roles)) ? $file->GetReadPermissions() : $default_roles; 24 24 $file_members_only = !empty($user_roles); 25 25 … … 192 192 </div> 193 193 <div id="flash-upload-ui"><?php wpfb_call($adv_uploader,'Display',$form_url); ?></div> <!-- flash-upload-ui --> 194 <?php if($update) { echo '<div><b><a href="'.$file->GetUrl().'">' . $file->file_name . '</a></b> (' . $file->GetFormattedSize() . ', '.wpfb_call('Download', 'GetFileType', $file->file_name).', MD5: <code>'.$file->file_hash.'</code>)</div>'; } ?> 194 <?php if($update) { echo '<div>'.__('Rename').': '; ?> 195 <input name="file_rename" id="file_rename" type="text" value="<?php echo esc_attr($file->file_name); ?>" style="width:280px;" /><br /> 196 <?php echo ' (' . $file->GetFormattedSize() . ', '.wpfb_call('Download', 'GetFileType', $file->file_name).', MD5: <code>'.$file->file_hash.'</code>)</div>'; } ?> 195 197 </div> 196 198 <div id="file-remote-wrap" <?php echo ($file->IsRemote() ? '' : 'class="hidden"'); ?>> … … 284 286 <label title="<?php _e('Yes') ?>"><input type="radio" name="file_direct_linking" value="1" <?php checked('1', $file->file_direct_linking); ?>/> <?php _e('Allow direct linking', WPFB) ?></label><br /> 285 287 <label title="<?php _e('No') ?>"><input type="radio" name="file_direct_linking" value="0" <?php checked('0', $file->file_direct_linking); ?>/> <?php _e('Redirect to post', WPFB) ?></label> 288 <?php 289 ?> 286 290 </fieldset> 287 291 </td> -
wp-filebase/trunk/readme.txt
r599972 r615301 5 5 Requires at least: 3.1 6 6 Tested up to: 3.4.2 7 Stable tag: 0.2.9.2 37 Stable tag: 0.2.9.24 8 8 9 9 Adds a powerful download manager supporting file categories, downloads counter, widgets, sorted file lists and more to your WordPress blog. … … 104 104 105 105 == Changelog == 106 107 = 0.2.9.24 = 108 * Added field to rename files in file upload form 109 * Configuration of old File Widget will be retained on update. Please change to the new multi-instance widget after updating! 110 * New Option `Inaccessible category message` 111 * Improved access permission handling for AJAX tree 112 * Fixed OpenOffice download link 113 * New template variable `%cat_user_can_access%` and `%file_user_can_access%` 114 * Files are only re-scanned if changed 115 * Fixed external MD5 hashing on Windows 116 * MySQL connection are closed during download 117 * New Template varialbe `%file_cat_folder%` 118 * Added sync debug info when query variable `debug` is set to 1 (add &debug=1 to the sync page URL and see the HTML source for backtrace) 119 * Inaccessible categories are displayed in lists, but their content cannot be viewed 120 * Fixed resources URL when using SSL 121 * Removed HTML align property for category icons according to HTML5 standard 106 122 107 123 = 0.2.9.23 = -
wp-filebase/trunk/todo.txt
r599972 r615301 1 rescan files to build thumbnails in batch action 1 file ratings 2 2 -secondary category: tpl var? 3 4 documentation: 3 5 - pdf searching: which option need to be enabled? 6 4 7 ghostscript test file 5 - auto redirect file page!6 - hotlinking: redirect to files page!7 -batch action on categories!8 - sync: rsyncs!9 8 rsync: make sure cat is empty! 10 dropbox: checkbox for toggle preview11 9 wp-search: Notice: Undefined index: wpfb_s in C:\xampp\htdocs\wpt\wp-content\plugins\wp-filebase-pro\classes\Search.php on line 126 12 multiple instance file widget13 dont re-scan pdf when editing file without upload!14 bmp thumnails in otuner broken??!?15 10 drag & drop file widget 16 11 17 simpel form by default! 12 13 batch actions, edit action: (also on categories) 14 rename, set owner, rebuild thumbnails 18 15 19 16 20 17 ftp sideload link 21 multi istance file widget22 upload widget: attach to current post23 18 24 19 file list category sorting … … 50 45 - test download file 51 46 52 53 -check permissions system:54 private files55 editor plugin ajax tree (hide inaccessible)56 different user/user roles57 -upload widget: checbox: attach to current post58 -disable date sync59 - safe mode options60 - sync settings tab61 47 62 48 force download per file … … 72 58 _ widget: users which cannot upload files should not change widget!! 73 59 - upload widget: fixed category 74 - editor plugin: field box not collapsable, missing JS75 76 - batch actions77 60 - forms 78 61 79 62 - default user roles options 80 63 - search lists WP attachments without permissions (due to generated content!) 81 + create post for files82 64 -ppollplll 83 - better syncing many files!84 65 Comments 85 -inline upload86 66 - update version on file sync cahnged 87 67 - user upload paths 88 -disable automatic sync by default89 68 90 69 -check sortings … … 113 92 global hotlink protecting 114 93 115 batch actions for files: set properties, delete, create thumbnails, hotlink protection etc...116 117 94 conflicts: 118 95 http://wordpress.org/support/topic/plugin-simple-facebook-connect-conflict-with-wp-filebase-plugin?replies=2 … … 123 100 -multi uploadh 124 101 -wigets 125 -public upload (like inline upload)126 -multi categories127 102 -cat syncing 128 103 -id3 sorting!! … … 133 108 - Custom field for post edit screen http://wordpress.org/support/topic/plugin-wp-filebase-download-manager-custom-field-for-post-edit-screen?replies=1 134 109 - drag & drop widget 135 - auto redirect dl page136 1. superuser - can upload files to any user and see files for any user137 2. user - can upload and access only his/hers own files (including those uploaded by superuser)? -
wp-filebase/trunk/wp-filebase-admin.css
r598768 r615301 1 #icon-wpfilebase { 2 background-image: url('images/wpfb-icon.png'); 3 } 4 1 5 .wpfilebase-progress { 2 6 margin: 4px; … … 53 57 margin:0 0 3px; 54 58 padding:3px 1em 0; 59 overflow: auto; 55 60 } 56 61 .wpfb-tab-menu li {height:25px;display:inline;line-height:200%;list-style:none;text-align:center;white-space:nowrap; margin-right: 15px;} 57 62 .wpfb-tab-menu li a{color:#21759b;font-size:12px;text-decoration:none;padding:.3em .4em .4em;} 58 63 .wpfb-tab-menu li a:hover{color:#D54E21;} 59 .wpfb-tab-menu li.ui-tabs-selected{ font-weight:700;background:#f9f9f9;color:#1C6280;padding:0.3em 0 0.4em;}64 .wpfb-tab-menu li.ui-tabs-selected{background:#f9f9f9;color:#1C6280;padding:0.3em 0 0.4em;} 60 65 .wpfb-tab-menu li.ui-tabs-selected a{color:#464646;} 61 66 .wpfb-tab-menu li.ui-tabs-selected a:hover{background:#D54E21;color:#fff;} … … 64 69 .wpfilebase-opttab { 65 70 margin: 15px; 71 } 72 73 .wpfilebase-opttab table tr { 74 border-top: 1px solid #e3e3e3; 66 75 } 67 76 -
wp-filebase/trunk/wp-filebase.php
r599972 r615301 5 5 Description: Adds a powerful downloads manager supporting file categories, download counter, widgets, sorted file lists and more to your WordPress blog. 6 6 Author: Fabian Schlieper 7 Version: 0.2.9.2 37 Version: 0.2.9.24 8 8 Author URI: http://fabi.me/ 9 9 */ … … 12 12 { 13 13 define('WPFB', 'wpfb'); 14 define('WPFB_VERSION', '0.2.9.2 3');14 define('WPFB_VERSION', '0.2.9.24'); 15 15 define('WPFB_PLUGIN_ROOT', str_replace('\\','/',dirname(__FILE__)).'/'); 16 16 if(!defined('ABSPATH')) { 17 17 define('ABSPATH', dirname(dirname(dirname(dirname(__FILE__))))); 18 18 } else { 19 define('WPFB_PLUGIN_URI', str_replace(str_replace('\\','/',ABSPATH),get_option('siteurl').'/',WPFB_PLUGIN_ROOT)); 19 //define('WPFB_PLUGIN_URI', plugins_url('/',__FILE__)); 20 $wpfb_uri = str_replace(str_replace('\\','/',ABSPATH),get_option('siteurl').'/',WPFB_PLUGIN_ROOT); 21 if(is_ssl()) $wpfb_uri = str_replace('http://', 'https://', $wpfb_uri); 22 define('WPFB_PLUGIN_URI', $wpfb_uri); 20 23 } 21 24 if(!defined('WPFB_PERM_FILE')) define('WPFB_PERM_FILE', 666); -
wp-filebase/trunk/wpfb-ajax.php
r598768 r615301 43 43 $parent_id = is_numeric($root) ? intval($root) : intval(substr(strrchr($root,'-'),1)); 44 44 } 45 46 if($parent_id > 0) { 47 if(is_null($cat=WPFB_Category::GetCat($parent_id)) || !$cat->CurUserCanAccess()) { 48 wpfb_print_json(array(array('id' => 0, 'text' => WPFB_Core::GetOpt('cat_inaccessible_msg')))); 49 exit; 50 } 51 } 45 52 46 53 $browser = ($type=='browser'); … … 56 63 if($parent_id == 0 && $catsel && count($cats) == 0) { 57 64 wpfb_print_json(array(array( 58 'id' => sprintf($cat_id_format, $c->cat_id),65 'id' => sprintf($cat_id_format, 0), 59 66 'text' => sprintf(__('You did not create a category. <a href="%s" target="_parent">Click here to create one.</a>', WPFB), admin_url('admin.php?page=wpfilebase_cats#addcat')), 60 67 'hasChildren'=>false … … 67 74 foreach($cats as $c) 68 75 { 69 if($c->CurUserCanAccess( ))76 if($c->CurUserCanAccess(true)) 70 77 $cat_items[$i++] = array('id'=>sprintf($cat_id_format, $c->cat_id), 71 78 'text'=> $catsel ? … … 193 200 'url' => $cat->GetUrl(), 194 201 'path' => $cat->GetLocalPathRel(), 195 'roles' => $cat->Get UserRoles(),196 'roles_str' => WPFB_Output::RoleNames($cat->Get UserRoles(), true)202 'roles' => $cat->GetReadPermissions(), 203 'roles_str' => WPFB_Output::RoleNames($cat->GetReadPermissions(), true) 197 204 )); 198 205 } else { … … 202 209 203 210 case 'postbrowser': 204 if(!current_user_can(' read_private_posts')) {211 if(!current_user_can('edit_posts')) { 205 212 wpfb_print_json(array(array('id'=>'0','text'=>__('Cheatin’ uh?'), 'classes' => '','hasChildren'=>false))); 206 213 exit;
Note: See TracChangeset
for help on using the changeset viewer.