Textpattern - на русском языке

форум общения русскоязычных пользователей CMS Текстпаттерн

Вы не зашли.

#1 28-08-2009 19:00:58

Xeon
глаголь
Зарегистрирован: 03-06-2009
Сообщений: 36

rah_textile_bar

Есть такой маленький плагин под название: rah_textile_bar
Это панелька для упрощения написание новостей, которая выглядит вот так:
http://s39.radikal.ru/i083/0908/60/bd33a7f9d8ab.jpg
Меня сама панель интересует не особо, интересует её функционал, использует она синтаксис Textile и просто вместо пользователя проставляет все теги которые иначе нужно писать вручную. И собственно проблемма.
У меня сайт где все новости имеют одну структуру т.е меняется только содержание и картинка в новосте, и я предположим сделал для себя шаблон вот его часть:
"<a href=""><img src="" alt="" title=""/></a>
Описание
<a href="Ссылка">*Скачать*</a>"
Так как в данный момен идёт заполнение контентом, копирование этого шаблона каждый раз откуда-то отнимает время, хотелось бы что бы вон в той панельки, что привёл выше появилась ещё одна кнопочка при нажатии на которую в новость автоматически вставлялся бы этот текст. Как это лучше реализовать? Нужно не только для этого. Хотелось бы что бы по нажатию кнопки ещё вставлялись свои теги с задными заранее класами, например:
<teg class="">содержимое</teg>
P.S Вроде как простым скриптом на яве или ещё чём нибудь это реализовать должно быть легче, но в данный момент располагаю только минимальными знаниями в html и css... Поэтому прошу вашей помощи.

Неактивен

 

#2 28-08-2009 19:05:10

Xeon
глаголь
Зарегистрирован: 03-06-2009
Сообщений: 36

Re: rah_textile_bar

Содержимое плагина:

Код:

    ##################
    #
    #    rah_textile_bar-plugin for Textpattern
    #    version 0.3.5
    #    by Jukka Svahn
    #    http://rahforum.biz
    #
    ###################

    if (@txpinterface == 'admin') {
        register_callback('rah_textile_bar','admin_side','head_end');
        add_privs('rah_textile_bar', '1,2');
        register_tab("extensions", "rah_textile_bar", "Textilebar");
        register_callback("rah_textile_bar_page", "rah_textile_bar");
        rah_textile_bar_install();
    } else {
        if(gps('rah_textile_bar_js')) rah_textile_bar_js();
        if(gps('rah_textile_bar_css')) rah_textile_bar_css();
        if(gps('rah_textile_bar_img')) rah_textile_bar_img(gps('rah_textile_bar_img'));
    }

    function rah_textile_bar_install() {
        safe_query(
            "CREATE TABLE IF NOT EXISTS ".safe_pfx('rah_textile_bar')." (
                `name` VARCHAR(255) NOT NULL default '',
                `value` LONGTEXT NOT NULL,
                PRIMARY KEY(`name`)
            )"
        );
        if(safe_count('rah_textile_bar', "name='disable'") == 0) safe_insert("rah_textile_bar","name='disable', value=''");
    }

    function rah_textile_bar_page() {
        global $step;
        require_privs('rah_textile_bar');
        if(in_array($step,array(
            'rah_textile_bar_save'
        ))) $step();
        else rah_textile_bar_edit();
    }

    function rah_textile_bar_save() {
        $value = ps('not');
        if(is_array($value)) $value = implode(',',$value);
        $value = doSlash($value);
        safe_update('rah_textile_bar',"value='$value'","name='disable'");
        rah_textile_bar_edit('Preferences saved');
    }

    function rah_textile_bar_edit($message='') {
        pagetop('rah_textile_bar',$message);
        $not = fetch('value','rah_textile_bar','name','disable');
        $not = explode(',',$not);
        $items = array(
            '#textilebar .link',
            '#textilebar .strong',
            '#textilebar .emphasis',
            '#textilebar .ins',
            '#textilebar .del',
            '#textilebar .h11',
            '#textilebar .h2',
            '#textilebar .h3',
            '#textilebar .h4',
            '#textilebar .h5',
            '#textilebar .h6',
            '#textilebar .image',
            '#textilebar .codeline',
            '#textilebar .ul',
            '#textilebar .ol',
            '#textilebar .sup',
            '#textilebar .sub',
            '#textilebar .bq',
            '#textilebar .bc',
            '#textilebar .output_form',
            '#textilebar .acronym'
        );
        echo 
            '    <link href="'.hu.'?rah_textile_bar_css=1" rel="Stylesheet" type="text/css" />'.n.
            '    <form method="post" action="index.php" style="width:950px;margin:0 auto;position: relative;">'.n.
            '        <h1><strong>rah_textile_bar</strong> | Simple Textile Inserting Bar</h1>'.n.
            '        <input type="submit" value="Save settings" class="publish" style="position:absolute;top:5px;right:30px;" />'.n.
            '        <p>» <a href="?event=plugin&amp;step=plugin_help&amp;name=rah_textile_bar">Documentation</a></p>'.n.
            '        <fieldset style="padding:20px;margin:20px 0;overflow:hidden;" id="textilebar">'.n.
            '            <legend>Disable and remove items from the Textile bar. Check a item to disable it.</legend>'.n.
            '            <table style="width:100%" cellspacing="0" cellpadding="0" border="0" class="list" id="list">'.n.
            '                <tr>'.n.
            '                    <th>Icon</th>'.n.
            '                    <th>Item name</th>'.n.
            '                    <th>Disabled?</th>'.n.
            '                </tr>'.n;
        foreach($items as $item) {
            echo 
            '                <tr>'.n.
            '                    <td><div class="'.str_replace('#textilebar .','',$item).'"></div></td>'.n.
            '                    <td><label for="'.str_replace('#textilebar .','',$item).'">'.str_replace('#textilebar .','',$item).'</label></td>'.n.
            '                    <td><input type="checkbox" id="'.str_replace('#textilebar .','',$item).'" value="'.$item.'" name="not[]"'.((in_array($item,$not)) ? ' checked="checked"' : '').' /></td>'.n.
            '                </tr>'.n;
        }
        echo 
            '            </table>'.n.
            '        </fieldset>'.n.
            '        <input type="hidden" name="event" value="rah_textile_bar" />'.n.
            '        <input type="hidden" name="step" value="rah_textile_bar_save" />'.n.
            '    </form>'.n;
    }

    function rah_textile_bar() {
        global $event;
        if($event == 'article')
            echo n.
                '    <script type="text/javascript" src="'.hu.'?rah_textile_bar_js=1"></script>'.n.
                '    <link href="'.hu.'?rah_textile_bar_css=1" rel="Stylesheet" type="text/css" />'.n.n;
    }

    function rah_textile_bar_button ($class='',$name='',$start='',$close=''){
        $not = @fetch('value','rah_textile_bar','name','disable');
        $not = explode(',',$not);
        if(!in_array('#textilebar .'.$class,$not)) return '    theButtons[theButtons.length] = new edButton('."'".$class."','".$name."','".$start."','".$close."');";
    }

    function rah_textile_bar_js() {
        ob_start();
        ob_end_clean();
        header('Content-type: application/x-javascript');
        $js = 'CXZhciBoYWtfdGV4dGlsZV90YWdfaW5pdGlhbGl6ZWQgPSAwOw0KCWZ1bmN0aW9uIGFkZEV2ZW50KG9iaiwgZXZUeXBlLCBmbil7DQoJCWlmIChvYmouYWRkRXZlbnRMaXN0ZW5lcil7DQoJCQlvYmouYWRkRXZlbnRMaXN0ZW5lcihldlR5cGUsIGZuLCB0cnVlKTsNCgkJCXJldHVybiB0cnVlOw0KCQl9IGVsc2UgaWYgKG9iai5hdHRhY2hFdmVudCl7DQoJCQl2YXIgciA9IG9iai5hdHRhY2hFdmVudCgib24iK2V2VHlwZSwgZm4pOw0KCQkJcmV0dXJuIHI7DQoJCX0gZWxzZSB7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCgl9DQoNCglmdW5jdGlvbiBpbml0UXVpY2t0YWdzKGlkZW50aWZpZXIpIHsNCgkJaWYgKCFoYWtfdGV4dGlsZV90YWdfaW5pdGlhbGl6ZWQpIHsNCgkJCXZhciBnZXRDYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGV4dGFyZWEiKTsNCgkJCWZvciAodmFyIGkgPSAwOyBpIDwgZ2V0Q2FudmFzLmxlbmd0aDsgaSsrKSB7DQoJCQkJaWYgKGdldENhbnZhc1tpXS5uYW1lID09IGlkZW50aWZpZXIgIHx8IGdldENhbnZhc1tpXS5pZCA9PSBpZGVudGlmaWVyKSB7DQoJCQkJCXZhciBjYW52YXMgPSBnZXRDYW52YXNbaV07DQoJCQkJfQ0KCQkJCWlmIChjYW52YXMpIHsNCgkJCQkJdmFyIHRvb2xiYXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dGlsZWJhciIpOw0KCQkJCQl0b29sYmFyLnN0eWxlLnZpc2liaWxpdHkgPSAidmlzaWJsZSI7DQoJCQkJCXZhciBlZEJ1dHRvbnMgPSBuZXcgQXJyYXkoKTsNCgkJCQkJZWRCdXR0b25zID0gdGhlQnV0dG9uczsNCgkJCQkJZm9yICh2YXIgaSA9IDA7IGkgPCBlZEJ1dHRvbnMubGVuZ3RoOyBpKyspIHsNCgkJCQkJCXZhciB0aGlzQnV0dG9uID0gZWRTaG93QnV0dG9uKGVkQnV0dG9uc1tpXSwgY2FudmFzKTsNCgkJCQkJCXRvb2xiYXIuYXBwZW5kQ2hpbGQodGhpc0J1dHRvbik7DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCQloYWtfdGV4dGlsZV90YWdfaW5pdGlhbGl6ZWQgPSAxOw0KCQl9DQoJfQ0KDQoJZnVuY3Rpb24gZWRTaG93QnV0dG9uKGJ1dHRvbiwgZWRDYW52YXMpIHsNCgkJdmFyIHRoZUJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOw0KCQl0aGVCdXR0b24uaWQgPSBidXR0b24uaWQ7DQoJCXRoZUJ1dHRvbi50aXRsZSA9IGJ1dHRvbi5pZDsNCgkJdGhlQnV0dG9uLmNsYXNzTmFtZSA9ICd0ZXh0aWxlYnV0dG9uJzsNCgkJdGhlQnV0dG9uLmNsYXNzTmFtZSArPSAnICcgKyBidXR0b24uaWQ7DQoJCXRoZUJ1dHRvbi50YWdTdGFydCA9IGJ1dHRvbi50YWdTdGFydDsNCgkJdGhlQnV0dG9uLnRhZ0VuZCA9IGJ1dHRvbi50YWdFbmQ7DQoJCXRoZUJ1dHRvbi5vcGVuID0gYnV0dG9uLm9wZW47DQoJCWlmIChidXR0b24uaWQgPT0gJ2ltYWdlJykgew0KCQkJdGhlQnV0dG9uLm9uY2xpY2sgPSBmdW5jdGlvbigpIHsgZWRJbnNlcnRJbWFnZShlZENhbnZhcyk7IH0NCgkJfSBlbHNlIGlmIChidXR0b24uaWQgPT0gJ2xpbmsnKSB7DQoJCQl0aGVCdXR0b24ub25jbGljayA9IGZ1bmN0aW9uKCkgeyBlZEluc2VydExpbmsoZWRDYW52YXMpO30NCgkJfSBlbHNlIGlmIChidXR0b24uaWQgPT0gJ291dHB1dF9mb3JtJykgew0KCQkJdGhlQnV0dG9uLm9uY2xpY2sgPSBmdW5jdGlvbigpIHsgZWRJbnNlcnRGb3JtKGVkQ2FudmFzKTt9DQoJCX0gZWxzZSBpZiAoYnV0dG9uLmlkID09ICdhY3JvbnltJykgew0KCQkJdGhlQnV0dG9uLm9uY2xpY2sgPSBmdW5jdGlvbigpIHsgZWRJbnNlcnRBY3JvbnltKGVkQ2FudmFzKTt9DQoJCX0gZWxzZSB7DQoJCQl0aGVCdXR0b24ub25jbGljayA9IGZ1bmN0aW9uKCkgeyBlZEluc2VydFRhZyhlZENhbnZhcyx0aGlzKTsgfQ0KCQl9DQoJCXRoZUJ1dHRvbi5pbm5lckhUTUwgPSAoYnV0dG9uLmRpc3BsYXkpICsgIiI7DQoJCXJldHVybiB0aGVCdXR0b247DQoJfQ0KDQoJZnVuY3Rpb24gZWRBZGRUYWcoYnV0dG9uKSB7DQoJCWlmIChidXR0b24udGFnRW5kICE9ICcnKSB7DQoJCQllZE9wZW5UYWdzW2VkT3BlblRhZ3MubGVuZ3RoXSA9IGJ1dHRvbjsNCgkJCWJ1dHRvbi5pbm5lckhUTUwgPSAnLycgKyBidXR0b24uaW5uZXJIVE1MOw0KCQkJYnV0dG9uLmNsYXNzTmFtZSA9IGJ1dHRvbi5jbGFzc05hbWUucmVwbGFjZSgidGV4dGlsZWJ1dHRvbiIsICJhY3RpdmUiKTsNCgkJfQ0KCX0NCg0KCWZ1bmN0aW9uIGVkUmVtb3ZlVGFnKGJ1dHRvbikgew0KCQlmb3IgKGkgPSAwOyBpIDwgZWRPcGVuVGFncy5sZW5ndGg7IGkrKykgew0KCQkJaWYgKGVkT3BlblRhZ3NbaV0gPT0gYnV0dG9uKSB7DQoJCQkJZWRPcGVuVGFncy5zcGxpY2UoYnV0dG9uLCAxKTsNCgkJCQlidXR0b24uaW5uZXJIVE1MID0gYnV0dG9uLmlubmVySFRNTC5yZXBsYWNlKCcvJywgJycpOw0KCQkJCWJ1dHRvbi5jbGFzc05hbWUgPSBidXR0b24uY2xhc3NOYW1lLnJlcGxhY2UoImFjdGl2ZSIsICJ0ZXh0aWxlYnV0dG9uIik7DQoJCQl9DQoJCX0NCgl9DQoNCglmdW5jdGlvbiBlZENoZWNrT3BlblRhZ3MoYnV0dG9uKSB7DQoJCXZhciB0YWcgPSAwOw0KCQlmb3IgKGkgPSAwOyBpIDwgZWRPcGVuVGFncy5sZW5ndGg7IGkrKykgew0KCQkJaWYgKGVkT3BlblRhZ3NbaV0gPT0gYnV0dG9uKSB7DQoJCQkJdGFnKys7DQoJCQl9DQoJCX0NCgkJaWYgKHRhZyA+IDApIHsNCgkJCXJldHVybiB0cnVlOw0KCQl9IGVsc2Ugew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoJfQ0KDQoJZnVuY3Rpb24gZWRDbG9zZUFsbFRhZ3MoZWRDYW52YXMpIHsNCgkJdmFyIGNvdW50ID0gZWRPcGVuVGFncy5sZW5ndGg7DQoJCWZvciAobyA9IDA7IG8gPCBjb3VudDsgbysrKSB7DQoJCQllZEluc2VydFRhZyhlZENhbnZhcywgZWRPcGVuVGFnc1tlZE9wZW5UYWdzLmxlbmd0aCAtIDFdKTsNCgkJfQ0KCX0NCg0KCWZ1bmN0aW9uIGVkSW5zZXJ0VGFnKG15RmllbGQsIGJ1dHRvbikgew0KCQlpZiAoZG9jdW1lbnQuc2VsZWN0aW9uKSB7DQoJCQlteUZpZWxkLmZvY3VzKCk7DQoJCQlzZWwgPSBkb2N1bWVudC5zZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKTsNCgkJCWlmIChzZWwudGV4dC5sZW5ndGggPiAwKSB7DQoJCQkJc2VsLnRleHQgPSBidXR0b24udGFnU3RhcnQgKyBzZWwudGV4dCArIGJ1dHRvbi50YWdFbmQ7DQoJCQl9IGVsc2Ugew0KCQkJCWlmICghZWRDaGVja09wZW5UYWdzKGJ1dHRvbikgfHwgYnV0dG9uLnRhZ0VuZCA9PSAnJykgew0KCQkJCQlzZWwudGV4dCA9IGJ1dHRvbi50YWdTdGFydDsNCgkJCQkJZWRBZGRUYWcoYnV0dG9uKTsNCgkJCQl9IGVsc2Ugew0KCQkJCQlzZWwudGV4dCA9IGJ1dHRvbi50YWdFbmQ7DQoJCQkJCWVkUmVtb3ZlVGFnKGJ1dHRvbik7DQoJCQkJfQ0KCQkJfQ0KCQkJbXlGaWVsZC5mb2N1cygpOw0KCQl9IGVsc2UgaWYgKG15RmllbGQuc2VsZWN0aW9uU3RhcnQgfHwgbXlGaWVsZC5zZWxlY3Rpb25TdGFydCA9PSAnMCcpIHsNCgkJCXZhciBzdGFydFBvcyA9IG15RmllbGQuc2VsZWN0aW9uU3RhcnQ7DQoJCQl2YXIgZW5kUG9zID0gbXlGaWVsZC5zZWxlY3Rpb25FbmQ7DQoJCQl2YXIgY3Vyc29yUG9zID0gZW5kUG9zOw0KCQkJdmFyIHNjcm9sbFRvcCA9IG15RmllbGQuc2Nyb2xsVG9wOw0KCQkJaWYgKHN0YXJ0UG9zICE9IGVuZFBvcykgew0KCQkJCW15RmllbGQudmFsdWUgPSBteUZpZWxkLnZhbHVlLnN1YnN0cmluZygwLCBzdGFydFBvcykgKyBidXR0b24udGFnU3RhcnQgKyBteUZpZWxkLnZhbHVlLnN1YnN0cmluZyhzdGFydFBvcywgZW5kUG9zKSArIGJ1dHRvbi50YWdFbmQgKyBteUZpZWxkLnZhbHVlLnN1YnN0cmluZyhlbmRQb3MsIG15RmllbGQudmFsdWUubGVuZ3RoKTsNCgkJCQljdXJzb3JQb3MgKz0gYnV0dG9uLnRhZ1N0YXJ0Lmxlbmd0aCArIGJ1dHRvbi50YWdFbmQubGVuZ3RoOw0KCQkJfWVsc2Ugew0KCQkJCWlmICghZWRDaGVja09wZW5UYWdzKGJ1dHRvbikgfHwgYnV0dG9uLnRhZ0VuZCA9PSAnJykgew0KCQkJCQlteUZpZWxkLnZhbHVlID0gbXlGaWVsZC52YWx1ZS5zdWJzdHJpbmcoMCwgc3RhcnRQb3MpICsgYnV0dG9uLnRhZ1N0YXJ0ICsgbXlGaWVsZC52YWx1ZS5zdWJzdHJpbmcoZW5kUG9zLCBteUZpZWxkLnZhbHVlLmxlbmd0aCk7DQoJCQkJCWVkQWRkVGFnKGJ1dHRvbik7DQoJCQkJCWN1cnNvclBvcyA9IHN0YXJ0UG9zICsgYnV0dG9uLnRhZ1N0YXJ0Lmxlbmd0aDsNCgkJCQl9IGVsc2Ugew0KCQkJCQlteUZpZWxkLnZhbHVlID0gbXlGaWVsZC52YWx1ZS5zdWJzdHJpbmcoMCwgc3RhcnRQb3MpKyBidXR0b24udGFnRW5kICsgbXlGaWVsZC52YWx1ZS5zdWJzdHJpbmcoZW5kUG9zLCBteUZpZWxkLnZhbHVlLmxlbmd0aCk7DQoJCQkJCWVkUmVtb3ZlVGFnKGJ1dHRvbik7DQoJCQkJCWN1cnNvclBvcyA9IHN0YXJ0UG9zICsgYnV0dG9uLnRhZ0VuZC5sZW5ndGg7DQoJCQkJfQ0KCQkJfQ0KCQkJbXlGaWVsZC5mb2N1cygpOw0KCQkJbXlGaWVsZC5zZWxlY3Rpb25TdGFydCA9IGN1cnNvclBvczsNCgkJCW15RmllbGQuc2VsZWN0aW9uRW5kID0gY3Vyc29yUG9zOw0KCQkJbXlGaWVsZC5zY3JvbGxUb3AgPSBzY3JvbGxUb3A7DQoJCX0gZWxzZSB7DQoJCQlpZiAoIWVkQ2hlY2tPcGVuVGFncyhidXR0b24pIHx8IGJ1dHRvbi50YWdFbmQgPT0gJycpIHsNCgkJCQlteUZpZWxkLnZhbHVlICs9IGJ1dHRvbi50YWdTdGFydDsNCgkJCQllZEFkZFRhZyhidXR0b24pOw0KCQkJfSBlbHNlIHsNCgkJCQlteUZpZWxkLnZhbHVlICs9IGJ1dHRvbi50YWdFbmQ7DQoJCQkJZWRSZW1vdmVUYWcoYnV0dG9uKTsNCgkJCX0NCgkJCW15RmllbGQuZm9jdXMoKTsNCgkJfQ0KCX0NCg0KCWZ1bmN0aW9uIGVkSW5zZXJ0Q29udGVudChteUZpZWxkLCBteVZhbHVlKSB7DQoJCWlmIChkb2N1bWVudC5zZWxlY3Rpb24pIHsNCgkJCW15RmllbGQuZm9jdXMoKTsNCgkJCXNlbCA9IGRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpOw0KCQkJc2VsLnRleHQgPSBteVZhbHVlOw0KCQkJbXlGaWVsZC5mb2N1cygpOw0KCQl9DQoJCWVsc2UgaWYgKG15RmllbGQuc2VsZWN0aW9uU3RhcnQgfHwgbXlGaWVsZC5zZWxlY3Rpb25TdGFydCA9PSAnMCcpIHsNCgkJCXZhciBzdGFydFBvcyA9IG15RmllbGQuc2VsZWN0aW9uU3RhcnQ7DQoJCQl2YXIgZW5kUG9zID0gbXlGaWVsZC5zZWxlY3Rpb25FbmQ7DQoJCQlteUZpZWxkLnZhbHVlID0gbXlGaWVsZC52YWx1ZS5zdWJzdHJpbmcoMCwgc3RhcnRQb3MpICsgDQoJCQlteVZhbHVlICsgbXlGaWVsZC52YWx1ZS5zdWJzdHJpbmcoZW5kUG9zLCANCgkJCW15RmllbGQudmFsdWUubGVuZ3RoKTsNCgkJCW15RmllbGQuZm9jdXMoKTsNCgkJCW15RmllbGQuc2VsZWN0aW9uU3RhcnQgPSBzdGFydFBvcyArIG15VmFsdWUubGVuZ3RoOw0KCQkJbXlGaWVsZC5zZWxlY3Rpb25FbmQgPSBzdGFydFBvcyArIG15VmFsdWUubGVuZ3RoOw0KCQl9IGVsc2Ugew0KCQkJbXlGaWVsZC52YWx1ZSArPSBteVZhbHVlOw0KCQkJbXlGaWVsZC5mb2N1cygpOw0KCQl9DQoJfQ0KDQoJZnVuY3Rpb24gZWRJbnNlcnRMaW5rKG15RmllbGQpIHsNCgkJdmFyIG15VmFsdWUgPSBwcm9tcHQoJ1VSTDonLCAnaHR0cDovLycpOw0KCQl2YXIgbXlUZXh0ID0gcHJvbXB0KCdUZXh0OicsICcnKTsNCgkJdmFyIG15VGl0bGUgPSBwcm9tcHQoJ1RpdGxlOicsICcnKTsNCgkJdmFyIG15UmVsID0gcHJvbXB0KCdSZWw6JywgJycpOw0KCQl2YXIgbXlWYWx1ZTIgPSBteVZhbHVlOw0KCQlpZiAobXlWYWx1ZSkgew0KCQkJaWYobXlSZWwpIHsNCgkJCQlteVZhbHVlID0gJzxhIHJlbD0iJyArIG15UmVsICsgJyIgaHJlZj0iJyArIG15VmFsdWUyICsgJyInOw0KCQkJCWlmKG15VGl0bGUpIHsNCgkJCQkJbXlWYWx1ZSArPSAnIHRpdGxlPSInICsgbXlUaXRsZSArICciJzsNCgkJCQl9DQoJCQkJbXlWYWx1ZSArPSAnPicgKyBteVRleHQgKyAnPC9hPic7DQoJCQl9IGVsc2Ugew0KCQkJCW15VmFsdWUgPSAnIicgKyBteVRleHQ7DQoJCQkJaWYobXlUaXRsZSkgew0KCQkJCQlteVZhbHVlICs9ICcoJyArIG15VGl0bGUgKyAnKSc7DQoJCQkJfQ0KCQkJCW15VmFsdWUgKz0gJyI6JyArIG15VmFsdWUyICsgJyAnOw0KCQkJfQ0KCQkJZWRJbnNlcnRDb250ZW50KG15RmllbGQsIG15VmFsdWUpOw0KCQl9DQoJfQ0KDQoJZnVuY3Rpb24gZWRJbnNlcnRBY3JvbnltKG15RmllbGQpIHsNCgkJdmFyIG15VmFsdWUgPSBwcm9tcHQoJ0Fjcm9ueW06JywgJycpOw0KCQl2YXIgbXlUaXRsZSA9IHByb21wdCgnQ29tZXMgZnJvbTonLCAnJyk7DQoJCXZhciBteUxhbmd1YWdlID0gcHJvbXB0KCdMYW5ndWFnZTonLCAnJyk7DQoJCXZhciBteVZhbHVlMiA9IG15VmFsdWU7DQoJCWlmIChteVZhbHVlKSB7DQoJCQlteVZhbHVlID0gJzxhY3JvbnltJzsNCgkJCWlmKG15VGl0bGUpIHsNCgkJCQlteVZhbHVlICs9ICcgdGl0bGU9IicgKyBteVRpdGxlICsgJyInOw0KCQkJfQ0KCQkJaWYobXlMYW5ndWFnZSkgew0KCQkJCW15VmFsdWUgKz0gJyBsYW5nPSInICsgbXlMYW5ndWFnZSArICciJzsNCgkJCX0NCgkJCW15VmFsdWUgKz0gJz4nICsgbXlWYWx1ZTIgKyAnPC9hY3JvbnltPic7DQoJCQllZEluc2VydENvbnRlbnQobXlGaWVsZCwgbXlWYWx1ZSk7DQoJCX0NCgl9DQoNCglmdW5jdGlvbiBlZEluc2VydEZvcm0obXlGaWVsZCkgew0KCQl2YXIgbXlWYWx1ZSA9IHByb21wdCgnRm9ybTonLCAnJyk7DQoJCWlmIChteVZhbHVlKSB7DQoJCQlteVZhbHVlID0gJzx0eHA6b3V0cHV0X2Zvcm0gZm9ybT0iJyArIG15VmFsdWUgKyciIC8+JzsNCgkJCWVkSW5zZXJ0Q29udGVudChteUZpZWxkLCBteVZhbHVlKTsNCgkJfQ0KCX0NCg0KCWZ1bmN0aW9uIGVkSW5zZXJ0SW1hZ2UobXlGaWVsZCkgew0KCQl2YXIgbXlWYWx1ZSA9IHByb21wdCgnVVJMOicsICcvaW1hZ2VzLycpOw0KCQl2YXIgbXlUaXRsZSA9IHByb21wdCgnQWx0OicsICcnKTsNCgkJdmFyIG15U3R5bGUgPSBwcm9tcHQoJ1N0eWxlOicsICcnKTsNCgkJdmFyIG15VmFsdWUyID0gbXlWYWx1ZTsNCgkJaWYgKG15VmFsdWUpIHsNCgkJCW15VmFsdWUgPSAnISc7DQoJCQlpZihteVN0eWxlKSB7DQoJCQkJbXlWYWx1ZSArPSAneycrIG15U3R5bGUgKyd9JzsNCgkJCX0NCgkJCW15VmFsdWUgKz0gbXlWYWx1ZTI7DQoJCQlpZihteVRpdGxlKSB7DQoJCQkJbXlWYWx1ZSArPSAnKCcgKyBteVRpdGxlICsgJyknOw0KCQkJfQ0KCQkJbXlWYWx1ZSArPSAnISc7DQoJCQllZEluc2VydENvbnRlbnQobXlGaWVsZCwgbXlWYWx1ZSk7DQoJCX0NCgl9DQoNCglmdW5jdGlvbiBlZEJ1dHRvbihpZCwgZGlzcGxheSwgdGFnU3RhcnQsIHRhZ0VuZCwgb3Blbikgew0KCQl0aGlzLmlkID0gaWQ7DQoJCXRoaXMuZGlzcGxheSA9IGRpc3BsYXk7DQoJCXRoaXMudGFnU3RhcnQgPSB0YWdTdGFydDsNCgkJdGhpcy50YWdFbmQgPSB0YWdFbmQ7DQoJCXRoaXMub3BlbiA9IG9wZW47DQoJfQ0KDQoJdmFyIHRoZUJ1dHRvbnMgPSBuZXcgQXJyYXkoKTsNCgl2YXIgZWRPcGVuVGFncyA9IG5ldyBBcnJheSgpOw==';
        echo 
            base64_decode($js).n.
            rah_textile_bar_button ('strong','strong','*','*').n.
            rah_textile_bar_button ('link','url','','').n.
            rah_textile_bar_button ('emphasis','em','_','_').n.
            rah_textile_bar_button ('ins','ins','+','+').n.
            rah_textile_bar_button ('del','del','-','-').n.
            rah_textile_bar_button ('h1','h1','h1. ','').n.
            rah_textile_bar_button ('h2','h2','h2. ','').n.
            rah_textile_bar_button ('h3','h3','h3. ','').n.
            rah_textile_bar_button ('h4','h4','h4. ','').n.
            rah_textile_bar_button ('h5','h5','h5. ','').n.
            rah_textile_bar_button ('h6','h6','h6. ','').n.
            rah_textile_bar_button ('image','img','','').n.
            rah_textile_bar_button ('codeline','codeline','@','@').n.
            rah_textile_bar_button ('ul','ul','* ','\n').n.
            rah_textile_bar_button ('ol','ol','# ','\n').n.
            rah_textile_bar_button ('sup','sup','^','^').n.
            rah_textile_bar_button ('sub','sub','~','~').n.
            rah_textile_bar_button ('bq','bq','bq. ','\n\n').n.
            rah_textile_bar_button ('bc','bc','bc. ','\n\n').n.
            rah_textile_bar_button ('acronym','acronym','','').n.
            rah_textile_bar_button ('output_form','output_form','','').n.
            '    $(document).ready (function() {'.n.
            '        $(\'textarea#body\').before(\'<div id="textilebar"></div>\');'.n.
            '        addEvent(window, \'load\', function() {initQuicktags(\'body\')});'.n.
            '    });'.n;
        exit();
    }

    function rah_textile_bar_css() {
        ob_start();
        ob_end_clean();
        header('Content-type: text/css');
        echo '
            #textilebar {
                background: #fff;
                border-left: 1px solid #ccc;
                padding: 0;
                overflow: hidden;
                margin: 5px 0 0 0;
            }
            #textilebar div {
                display: inline;
                width: auto;
                border-right: 1px solid #ccc;
                border-bottom: 1px solid #ccc;
                border-top: 1px solid #ccc;
                color: #333;
                height: 30px;
                width: 30px;
                padding: 0;
                cursor: pointer;
                overflow: hidden;
                outline: 0;
                text-indent: -9000px;
                float: left;
                margin: 0 0 1px 0;
                background-color: #fff;
                background-image: url("'.hu.'?rah_textile_bar_img=image");
                background-repeat: no-repeat;
            }
            #textilebar .strong {
                background-position: 10px -180px;
            }
            #textilebar .link {
                background-position: 7px -330px;
            }
            #textilebar .emphasis {
                background-position: 10px -599px;
            }
            #textilebar .ins {
                background-position: 10px -510px;
            }
            #textilebar .del {
                background-position: 8px -538px;
            }
            #textilebar .h1 {
                background-position: 8px 1px;
            }
            #textilebar .h2 {
                background-position: 8px -30px;
            }
            #textilebar .h3 {
                background-position: 8px -59px;
            }
            #textilebar .h4 {
                background-position: 8px -89px;
            }
            #textilebar .h5 {
                background-position: 8px -119px;
            }
            #textilebar .h6 {
                background-position: 8px -149px;
            }
            #textilebar .image {
                background-position: 8px -360px;
            }
            #textilebar .codeline {
                background-position: 9px -390px;
            }
            #textilebar .ul{
                background-position: 8px -300px;
            }
            #textilebar .ol{
                background-position: 8px -269px;
            }
            #textilebar .sup {
                background-position: 10px -210px;
            }
            #textilebar .sub {
                background-position: 10px -240px;
            }
            #textilebar .bq {
                background-position: 8px -450px;
            }
            #textilebar .bc {
                background-position: 7px -478px;
            }
            #textilebar .output_form {
                background-position: 8px -570px;
            }
            #textilebar .acronym {
                background-position: 7px -420px;
            }
            #textilebar .active {
                background-color: #ffc;
            }';
        exit();
    }

    function rah_textile_bar_img($img='') {
        ob_start();
        ob_end_clean();
        header('Content-type: image/gif');
        $code = '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';
        echo base64_decode($code);
        exit();
    }

Неактивен

 

#3 28-08-2009 19:47:40

the_ghost
ять
Откуда: Минск
Зарегистрирован: 01-05-2007
Сообщений: 1957
Вебсайт

Re: rah_textile_bar

Сложновато, мне кажется, будет с этим плагином - в нем javascript в base64 закодирован. Попробуйте upm_quicktags - http://utterplush.com/txp-plugins/upm-quicktags


.      Создание шаблонов для Textpatern http://textpattern.ru/forum/viewtopic.php?id=1665 (<txp:make_template quality="best" />)
КОНСУЛЬТАЦИИ по Textpattern - ICQ#8458496, nemiga@gmail.com <txp:if_question><txp:pay /></txp:if_question>
       Список всех тегов - http://textbook.textpattern.net/wiki/in … _Reference

Неактивен

 

#4 29-08-2009 00:06:39

makss
наш
Зарегистрирован: 21-10-2008
Сообщений: 208
Вебсайт

Re: rah_textile_bar

2Xeon:  в свое время я обучил Punto Switcher всем необходимым для меня макросам.  Очень удобно и не зависит, от того в какой админке я работаю или какой текстовый редактор использую.


aks_rss : RSS parser and aggregator | http://makss.uaho.net/plugins/aks_rss
aks_table : Simple tables in TxP (Ctrl+C, Ctrl+V) | http://makss.uaho.net/plugins/aks_table

Неактивен

 

#5 29-08-2009 20:38:04

Xeon
глаголь
Зарегистрирован: 03-06-2009
Сообщений: 36

Re: rah_textile_bar

the_ghost, makss спасибо, пока реализовал всё автозаменной числа 1001 на нужный мне текст.
Но я уже знаю что напишу когда буду знать ява скрипт и пхп. )))

Неактивен

 

Board footer

RSS   Rambler's Top100
Powered by PunBB
Textpattern.ru