Вход Регистрация
Файл: concrete5.7.5.6/concrete/elements/conversation/editor/markdown/message.php
Строк: 145
<?php defined('C5_EXECUTE') or die("Access Denied.");
$form Loader::helper('form');
print 
$form->textarea($editor->getConversationEditorInputName(), $editor->getConversationEditorMessageBody(), array('class'=>'unbound markdown_conversation_editor_'.$editor->cnvObject->cnvID));
?>
<script type="text/javascript">
    var me = $('textarea.unbound.markdown_conversation_editor_<?php echo $editor->cnvObject->cnvID?>').first().removeClass('unbound');
    (function($,window,me){
        var obj = window.obj;
        ConcreteEvent.bind('ConversationSubmitForm',function(){
            me.val('');
            $('.preview.processing').each(function(){
                $('input[rel="'+ $(this).attr('rel') +'"]').remove();
                $(this).remove();
            });
            if($('.ccm-conversation-attachment-container').is(':visible')) {
                $('.ccm-conversation-attachment-container').toggle();
            }
        });
        me.keydown(function(e) {
            ConcreteEvent.fire('ConversationTextareaKeydown', e, obj.$element.get(0));
            if (e.keyCode == 40) {
                ConcreteEvent.fire('ConversationTextareaKeydownDown',e,obj.$element.get(0));
                if (obj.dropdown.active) return false;
            } else if (e.keyCode == 38) {
                ConcreteEvent.fire('ConversationTextareaKeydownUp',e,obj.$element.get(0));
                if (obj.dropdown.active) return false;
            } else if (e.keyCode == 13) {
                ConcreteEvent.fire('ConversationTextareaKeydownEnter',e,obj.$element.get(0));
                if (obj.dropdown.active) return false;
            }
        }).keyup(function(e) {
            if (e.keyCode == 40) return;
            var caret = obj.tool.getCaretPosition(me.get(0)),
                string = me.val().substr(0,caret).split(' ').pop(),
                matches = [];
            // If this is a mention string
            if (obj.tool.testMentionString(string)) {
                matches = obj.tool.getMentionMatches(string.substr(1),obj.options.activeUsers);
            }
            matches.map(function(u,p){
                matches[p] = new obj.tool.MentionUser(u); // Convert strings to objects
                matches[p].caretPos = caret;
                matches[p].string = string;
                matches[p].textarea = me;
            });
            // Fire mention event regardless of whether there is data or not.
            ConcreteEvent.fire('ConversationMention',{
                    obj: obj,
                    items: matches,
                    bindTo: me.get(0),
                    coordinates: {
                        x: me.offset().left,
                        y: me.offset().top + me.height() + 10
                    }
                },
                obj.$element.get(0)
            );
        });
        // Bind to item selection event
        ConcreteEvent.bind('ConversationMentionSelect',function(e, data){
                var selected = data.item;
                if (!selected.textarea.is(me)) return;
                var start = me.val();
                var fin = start.substr(0,selected.caretPos - selected.string.length + 1) + selected.getName() + start.substr(selected.caretPos);
                me.val(fin);
                obj.tool.setCaretPosition(me.get(0),selected.caretPos - selected.string.length + 1 + selected.getName().length);
            },
            me.get(0)
        );
    })(jQuery,window,me)
</script>
Онлайн: 0
Реклама