⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myfiles.js

📁 一款文件上传程序
💻 JS
📖 第 1 页 / 共 2 页
字号:
/* Warning, do not modify this file unless you know what you're doing. */

var rowcolor1 = '#fafafa'; // color 1 for the rows
var rowcolor2 = '#ffffff'; // alternate color for the rows
var rowcolor3 = '#fbffdf'; // highlight

var sortDirection = { 'ext':0, 'name':0, 'size':0, 'date':1 }
var currentSort = 'date';
var current_page = 1;
var per_page = 20;
var files = new Array();

function _aF(name,size,date,furl,lnkurl,turl,rsurl,rnurl,dlurl,fname,rdate,rsize,is_image)
{
    files[files.length] =
    {
        'name' : name,
        'ext' : get_extension(name),
        'size' : size,
        'date' : date,
        'furl' : furl,
        'lurl' : lnkurl,
        'turl' : turl,
        'rsurl' : rsurl,
        'rnurl' : rnurl,
        'dlurl' : dlurl,
        'fname' : fname,
        'rdate' : rdate,
        'rsize' : rsize,
        'is_image' : is_image,
        'expanded' : false,
        'clicked' : false,
        'icon_url' : icons_url + get_icon ( get_extension(name) )
    };
}

function checkFiles ( fileType )
{
    var start = (current_page-1)*per_page;
    var stop = (current_page)*per_page;
    for ( var i = start; i < stop && i < files.length; i++ )
    {
        var box = getObj ( 'mf_checkbox_' + i );
        var ext = files[i]['ext'];

        switch ( fileType )
        {
            case 'all' : checkIt ( box, 1 ); break;
            case 'none' : checkIt ( box, 0 ); break;
            case 'images' : checkIt ( box, ( ext == 'jpg' || ext == 'gif' || ext == 'png' || ext == 'jpeg' || ext == 'bmp' ) ); break;
            case 'nonimages' : checkIt ( box, ( ext != 'jpg' && ext != 'gif' && ext!= 'png' && ext != 'jpeg' && ext != 'bmp' ) ); break;
            case 'invert' : checkIt ( box, !box.checked ); break;
        }
    }
    getObj('select_all').style.fontStyle = ( fileType == 'all' ? 'italic' : 'normal' );
    getObj('select_none').style.fontStyle = ( fileType == 'none' ? 'italic' : 'normal' );
    getObj('select_images').style.fontStyle = ( fileType == 'images' ? 'italic' : 'normal' );
    getObj('select_nonimages').style.fontStyle = ( fileType == 'nonimages' ? 'italic' : 'normal' );
    getObj('select_invert').style.fontStyle = ( fileType == 'invert' ? 'italic' : 'normal' );
}

function myFilesSort ( column )
{
    var fsize = function  ( left, right ) { if ( left['rsize'] == right['rsize'] ) return 0; if ( left['rsize'] > right['rsize'] ) return 1; return -1; }
    var fext = function ( left, right ) { if ( left['ext'] == right['ext'] ) return 0; if ( left['ext'] > right['ext'] ) return 1; return -1; }
    var fdate = function ( left, right ) { if ( left['rdate'] == right['rdate'] ) return 0; if ( left['rdate'] > right['rdate'] ) return 1; return -1; }
    var fname = function ( left, right ) { if ( left['name'].toLowerCase() == right['name'].toLowerCase() ) return 0; if ( left['name'].toLowerCase() > right['name'].toLowerCase() ) return 1; return -1; }

    switch ( column )
    {
        case 'ext': currentSort = 'ext'; files.sort ( fext ); if ( sortDirection['ext'] ) files.reverse ( ); sortDirection['ext'] = !sortDirection['ext'];  break;
        case 'name': currentSort = 'name'; files.sort ( fname ); if ( sortDirection['name'] ) files.reverse ( ); sortDirection['name'] = !sortDirection['name'];  break;
        case 'size': currentSort = 'size'; files.sort ( fsize ); if ( sortDirection['size'] ) files.reverse ( ); sortDirection['size'] = !sortDirection['size'];  break;
        case 'date': currentSort = 'date'; files.sort ( fdate ); if ( sortDirection['date'] ) files.reverse ( ); sortDirection['date'] = !sortDirection['date'];  break;
    }
    getObj('sort_type').style.fontStyle = ( column == 'ext' ? 'italic' : 'normal' );
    getObj('sort_name').style.fontStyle = ( column == 'name' ? 'italic' : 'normal' );
    getObj('sort_size').style.fontStyle = ( column == 'size' ? 'italic' : 'normal' );
    getObj('sort_date').style.fontStyle = ( column == 'date' ? 'italic' : 'normal' );

    drawFilesTable (); // redraw
}

function myFilesAction ( sAction )
{
    var myFilesForm = getObj ( 'myfiles_form' );

    if ( myFilesForm )
    {
        if ( countCheckedBoxes ( myFilesForm, 'files[]' ) )
        {
            myFilesForm.action.value = sAction;

            if ( sAction == 'delete' )
            {
                var inputFields = myFilesForm.getElementsByTagName ( 'input' );
                var checkedCount = 0;
                var checkedFile = '';

                for ( var i = 0; i < inputFields.length; i++ )
                {
                    if ( inputFields[i].type == 'checkbox' && inputFields[i].checked == true )
                    {
                        checkedCount += 1;
                        checkedFile = unescape ( inputFields[i].value );
                    }
                }
                if ( !confirm ( ( checkedCount > 1 ? 'Are you sure you want to delete the ' + checkedCount + ' selected files?' : 'Are you sure you want to delete the file "'+checkedFile+'"?' ) ) ) return false;
            }
            else if ( sAction == 'move' )
            {
                if ( myFilesForm.move_to.value == current_folder )
                {
                    return false;
                }
                if ( !confirm ( 'Move selected files to "' + ( myFilesForm.move_to.value == '' ? 'Main Folder' : basename(decodeURIComponent(myFilesForm.move_to.value)) ) + '"?' ) ) return false;
            }
            else if ( sAction == 'rename' )
            {
                var inputFields = myFilesForm.getElementsByTagName ( 'input' );
                var checkedCount = 0;
                var checkedFile = '';
                for ( var i = 0; i < inputFields.length; i++ )
                {
                    if ( inputFields[i].type == 'checkbox' && inputFields[i].checked == true )
                    {
                        checkedFile = inputFields[i].value;
                    }
                }
                for ( var i = 0; i < files.length; i++ )
                {
                    if ( checkedFile == files[i]['fname'] )
                    {
                        go((files[i]['rnurl'].replace('&amp;','&')));
                        break;
                    }
                }
                return false;
            }
            myFilesForm.submit ( );
        }
        else help ( 'You did not select any files.' );
    }
    else alert ( 'Unable to locate myfiles_form' );
}

function processMyFilesAction ( select )
{
    if ( select.value != '' )
    {
        if ( select.value.substr ( 0, 5 ) == 'move_' )
        {
            select.form.move_to.value = select.value.substr ( 5 );

            myFilesAction ( 'move' );
        }
        else myFilesAction ( select.value );
    }
    select.selectedIndex = 0;
}

function prepareMyFilesAction ( select )
{
    var myFilesForm = getObj ( 'myfiles_form' );

    var selectedCount = countCheckedBoxes ( myFilesForm, 'files[]' );

    for ( var i = 0; i < select.options.length; ++i )
    {
        var action = select.options[i].value;

        if ( action == 'delete' || action == 'img_tags' || action.substr ( 0, 5 ) == 'move_' )
        {
            select.options[i].disabled = !Boolean(selectedCount);
        }
        else if ( action == 'rename' )
        {
            select.options[i].disabled = selectedCount != 1;
        }
    }
}

function highlightRow ( num, on )
{
    var row = getObj ( 'mf_row_' + num );
    if ( row )
    {
        row.style.backgroundColor =  on ? rowcolor3 : ( num & 1 ? rowcolor1 : rowcolor2 );
    }
}

function highlightCell ( num )
{
    var cell = getObj ( 'mf_cell_' + num );
    var box = getObj ( 'mf_checkbox_' + num );
    if ( cell && box )
    {
        cell.className = box.checked ? 'selected' : 'unselected';

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -