মিডিয়াউইকি:Gadget-FloatableEditingButton.js

টীকা: সংরক্ষণ করার পর, পরিবর্তনসমূহ তৎক্ষণাৎ নাও দেখাতে পারে। আপনার ব্রাউজারের ক্যাশ কিভাবে এড়াবেন তা জানতে এখানে ক্লিক করুন।
  • ফায়ারফক্স / সাফারি: Shift ধরে রাখা অবস্থায়পুনঃলোড করুন-এ ক্লিক করুন, অথবা Ctrl-F5 বা Ctrl-R (ম্যাক-এ ⌘-R) চাপুন
  • গুগল ক্রোম: Ctrl-Shift-R (ম্যাক-এ ⌘-Shift-R) চাপুন
  • ইন্টারনেট এক্সপ্লোরার: Ctrl ধরে রাখা অবস্থায় Refresh-এ ক্লিক করুন, অথবা Ctrl-F5 চাপুন
  • অপেরা: মেনু → ব্যবস্থাপনাসমূহ-এ যান (ম্যাকে অপেরা → পছন্দসমূহ) এবং এরপর গোপনীয়তা ও সুরক্ষা → ব্রাউজিং-এর তথ্য পরিষ্কার করুন → ক্যাশে করা ছবি ও ফাইলগুলি

অন্যান্য ব্রাউজার সম্পর্কে বিশদ নির্দেশাবলীর জন্য, উইকিপিডিয়া:আপনার ক্যাশে বাইপাস করুন দেখুন।

/*
    This scipt add some large icon at right side for Editing.
    @example Edit, Save, Preview, Go Top Button

    @Author [[User:Jayprakash12345]]
    @ImproveBy [[User:Krinkle]
    @OwnBy [[meta:Indic-TechCom]]
*/

// i18n for FloatableEditingButton
if( i18nForFloatableButton === undefined ) {
    var i18nForFloatableButton = {
        editi18n: 'সম্পাদনা করুন',
        savei18n: 'প্রকাশ করুন',
        previewi18n: 'প্রাক্‌দর্শন করুন',
        goTopi18n: 'ওপরে যান'
    }
}

$(function () {

    // Get current pagename
    var pageName = mw.config.get('wgPageName');

    // Create Main Div
    var div = document.createElement('div');
        div.style ='position: fixed; right:30px; top:150px; display:block;';
        div.style.zIndex = "2147483647"; // A hack to show div allmost top
        div.id = 'iconForEditor';

    function createIcon(imageSrc, imgTooltip) {
        var element = document.createElement('img');
        element.className = 'image';
        element.width = '30';
        element.height = '30';
        element.src = imageSrc;
        element.title = imgTooltip;
        var divForIcon = document.createElement('div');
        divForIcon.appendChild(element);
        return divForIcon;
    }

    // Object for icons (div with img encapsulated inside)
    var elements = {
        editIcon: createIcon(
            'https://upload.wikimedia.org/wikipedia/commons/b/b2/Writing_Circle_Yellow.svg',
            i18nForFloatableButton.editi18n
        ),
        saveIcon: createIcon(
            'https://upload.wikimedia.org/wikipedia/commons/b/b0/Icon_Transparent_Green.png',
            i18nForFloatableButton.savei18n
        ),
        previewIcon: createIcon(
            'https://upload.wikimedia.org/wikipedia/commons/e/e2/Icon_Transparent_Yellow.png',
            i18nForFloatableButton.previewi18n
        ),
        goTopIcon: createIcon(
            'https://upload.wikimedia.org/wikipedia/commons/4/4c/Go-up.svg',
            i18nForFloatableButton.goTopi18n
        )
    };

    // Append icons into main div
    if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) === -1 ) {
        // View mode
        $(div).append(elements.editIcon, elements.goTopIcon);
    } else {
        // Edit mode
        $(div).append(elements.saveIcon, elements.previewIcon, elements.goTopIcon);
    }

    // Append the main div
    $('#mw-content-text').after( div );

    // Trigger for Edit Button
    $(elements.editIcon).on('click', function () {
        var params = {
            title: pageName,
            action: 'edit'
        };
        location.replace( mw.config.get( 'wgScript' ) + '?' + $.param( params ) );
    } );

    // Trigger for Save Button
    $(elements.saveIcon).on('click', function () {
        $('#editform').submit();
    } );

    // Trigger for Preview Button
    $(elements.previewIcon).on('click', function () {
        $('#wpPreview').click();
    } );

    // Trigger for Goto Top Button
    $(elements.goTopIcon).on('click', function () {
        location.hash = '#top';
    } );

});