integration/js/editor.js
author veltr
Thu, 25 Oct 2012 16:40:20 +0200
brancheditorjs
changeset 18 c85b323f5174
parent 15 56937307d7f4
child 22 bd904d592881
permissions -rw-r--r--
Modifications to home
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13
42c59d09670e display media list
veltr
parents: 12
diff changeset
     1
(function() {
42c59d09670e display media list
veltr
parents: 12
diff changeset
     2
    var Hashcut = function() {
42c59d09670e display media list
veltr
parents: 12
diff changeset
     3
        var directory = new IriSP.Model.Directory(),
42c59d09670e display media list
veltr
parents: 12
diff changeset
     4
            project = directory.remoteSource({
42c59d09670e display media list
veltr
parents: 12
diff changeset
     5
                url: "data/bpidata.json",
42c59d09670e display media list
veltr
parents: 12
diff changeset
     6
                serializer: IriSP.serializers.medialist
42c59d09670e display media list
veltr
parents: 12
diff changeset
     7
            }),
18
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
     8
            mediatemplate = '<li class="item-video"><img src="{{thumbnail}}" alt="{{title}}" />'
13
42c59d09670e display media list
veltr
parents: 12
diff changeset
     9
                + '<span class="video-info"><span class="title-video">{{title}}</span><span class="author">{{description}}</span>'
15
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    10
                + '<span class="time-length">Durée : <span>{{duration}}</span></span></span></li>';
13
42c59d09670e display media list
veltr
parents: 12
diff changeset
    11
        project.onLoad(function() {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    12
            var html = '';
42c59d09670e display media list
veltr
parents: 12
diff changeset
    13
            project.getMedias().forEach(function(_m) {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    14
                html += Mustache.to_html(mediatemplate, _m);
42c59d09670e display media list
veltr
parents: 12
diff changeset
    15
            });
42c59d09670e display media list
veltr
parents: 12
diff changeset
    16
            $(".col-left .list-video").html(html);
42c59d09670e display media list
veltr
parents: 12
diff changeset
    17
        });
42c59d09670e display media list
veltr
parents: 12
diff changeset
    18
        
15
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    19
        $(".col-left input").on("keyup change input paste", function() {
13
42c59d09670e display media list
veltr
parents: 12
diff changeset
    20
            var val = $(this).val();
42c59d09670e display media list
veltr
parents: 12
diff changeset
    21
            if (val) {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    22
                var find = IriSP.Model.regexpFromTextOrArray(val, true),
42c59d09670e display media list
veltr
parents: 12
diff changeset
    23
                    replace = IriSP.Model.regexpFromTextOrArray(val, false);
42c59d09670e display media list
veltr
parents: 12
diff changeset
    24
            }
42c59d09670e display media list
veltr
parents: 12
diff changeset
    25
            $(".col-left .item-video").each(function() {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    26
                var li = $(this),
42c59d09670e display media list
veltr
parents: 12
diff changeset
    27
                    title = $(this).find(".title-video"),
42c59d09670e display media list
veltr
parents: 12
diff changeset
    28
                    titletext = title.text();
42c59d09670e display media list
veltr
parents: 12
diff changeset
    29
                if (val && find.test(titletext)) {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    30
                    title.html(titletext.replace(replace, '<span style="background: yellow;">$1</span>'));
42c59d09670e display media list
veltr
parents: 12
diff changeset
    31
                    li.show();
42c59d09670e display media list
veltr
parents: 12
diff changeset
    32
                } else {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    33
                    title.text(titletext);
42c59d09670e display media list
veltr
parents: 12
diff changeset
    34
                    if (val) {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    35
                        li.hide();
42c59d09670e display media list
veltr
parents: 12
diff changeset
    36
                    } else {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    37
                        li.show();
42c59d09670e display media list
veltr
parents: 12
diff changeset
    38
                    }
42c59d09670e display media list
veltr
parents: 12
diff changeset
    39
                }
42c59d09670e display media list
veltr
parents: 12
diff changeset
    40
            })
42c59d09670e display media list
veltr
parents: 12
diff changeset
    41
        });
15
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    42
        
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    43
        $(".tab-segment").click(function() {
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    44
            $(".col-middle").removeClass("empty-mode pvw-mode").addClass("segment-mode");
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    45
            return false;
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    46
        });
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    47
        $(".tab-pvw").click(function() {
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    48
            $(".col-middle").removeClass("empty-mode segment-mode").addClass("pvw-mode");
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    49
            return false;
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    50
        });
56937307d7f4 cleaning css
veltr
parents: 13
diff changeset
    51
        
18
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    52
        function disableMoveItemVideo() {
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    53
            $(".organize-segments .top, .organize-segments .bottom").removeClass("disable");
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    54
            $(".organize-segments .item-video:last-child .bottom, .organize-segments .item-video:first-child .top").addClass("disable");
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    55
        }
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    56
        
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    57
        $(".organize-segments").sortable({
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    58
            stop : function(){
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    59
                disableMoveItemVideo();
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    60
            }
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    61
        });
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    62
        
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    63
        $(".organize-segments .top").click(function(e){
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    64
            var currentItem = $(this).parents(".item-video");
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    65
            currentItem.insertBefore(currentItem.prev());
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    66
            disableMoveItemVideo();
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    67
        });
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    68
        
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    69
        $(".organize-segments .bottom").click(function(e){
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    70
            var currentItem = $(this).parents(".item-video");
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    71
            currentItem.insertAfter(currentItem.next());
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    72
            disableMoveItemVideo();
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    73
        });
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    74
        
c85b323f5174 Modifications to home
veltr
parents: 15
diff changeset
    75
        
13
42c59d09670e display media list
veltr
parents: 12
diff changeset
    76
    }
12
8a8b6097d382 Starting 'editorjs' branch
veltr
parents:
diff changeset
    77
    
13
42c59d09670e display media list
veltr
parents: 12
diff changeset
    78
    IriSP.Hashcut = Hashcut;
42c59d09670e display media list
veltr
parents: 12
diff changeset
    79
}
42c59d09670e display media list
veltr
parents: 12
diff changeset
    80
)();
42c59d09670e display media list
veltr
parents: 12
diff changeset
    81
42c59d09670e display media list
veltr
parents: 12
diff changeset
    82
$(function() {
42c59d09670e display media list
veltr
parents: 12
diff changeset
    83
    var hashcut = new IriSP.Hashcut();
12
8a8b6097d382 Starting 'editorjs' branch
veltr
parents:
diff changeset
    84
});