Changeset 19744

Show
Ignore:
Timestamp:
09/23/08 01:03:41 (6 years ago)
Author:
teramako
Message:

* URLのAnchor化
* 画像URLの表示
* YouTubeの表示

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/vimperator-plugins/trunk/haiku.js

    r18067 r19744  
    8585                   .replace(/(?:\r?\n|\r)[ \t]*/g, " ") + 
    8686            statuses.map(function(status) { 
    87                 var text = status.text.substr(status.keyword.length + 1); 
     87                var text = status.text; 
     88                if (text.indexOf(status.keyword+"=") == 0) text = status.text.substr(status.keyword.length + 1); 
     89                text = convert(text); 
    8890                return <> 
    8991                    <img src={status.user.profile_image_url} 
     
    100102        //liberator.log(html); 
    101103        liberator.echo(html, true); 
     104    } 
     105    function convert(str){ 
     106        function createHTML(all, extension){ 
     107            var str = ''; 
     108            if (/\.(jpe?g|gif|png|bmp)$/.test(extension)){ 
     109                str = '<img src="'+all+'"/>'; 
     110            } else if (/^http:\/\/www\.youtube\.com\/(?:watch\?v=|v\/)([-\w]+)$/.test(all)){ 
     111                var url = "http://www.youtube.com/v/" + RegExp.$1; 
     112                str = '<a href="#" class="hl-URL">' + url + '</a>\n' + 
     113                      '<div><object height="250" width="300">' + 
     114                      '<param name="movie" value="' + url + '">' + 
     115                      '<param name="wmode" value="transparent">' + 
     116                      '<embed src="' + url + '" type="application/x-shockwave-flash" wmode="transparent" height="250" width="300">' + 
     117                      '</object></div>'; 
     118            } else { 
     119                str = '<a href="#" class="hl-URL">'+all+'</a>'; 
     120            } 
     121            return str; 
     122        } 
     123        return str.replace(/https?:\/\/[^\/]+?\/([^\s]*)/g, createHTML); 
    102124    } 
    103125    liberator.commands.addUserCommand(["haiku"], "Change Haiku status",