Changeset 18596

Show
Ignore:
Timestamp:
09/02/08 00:06:51 (4 months ago)
Author:
kan
Message:

Templateで基本的に変数にHTML escapeをかけるようにした。今はHTML出力目的でしか使ってないので

Location:
platform/air/wasaco/src
Files:
5 modified

Legend:

Unmodified
Added
Removed
  • platform/air/wasaco/src/assets/feed.tt

    r17813 r18596  
    55        <td class="text"> 
    66[% IF reply_message %]<a class="reply" href="[% reply_status_url %]"> &gt;[% reply_message %] by [% reply_user_nick %]</a><br /> 
    7         [% html %] 
     7        [%u html %] 
    88[% IF photo_url %]<br /><a href="[% photo_url %]"><img src="[% photo_url %]" width="100px" /></a> 
    99        </td> 
  • platform/air/wasaco/src/assets/feed_channel.tt

    r17815 r18596  
    55        </td> 
    66        <td class="text"> 
    7         [% html %] 
     7        [%u html %] 
    88        </td> 
    99    </tr> 
     
    1212                        <span class="user">by <a href="http://wassr.jp/user/[% user_login_id %]">[% user_nick %]</a></span> 
    1313                        <span class="time">[% time %]</span> 
    14                         <span>[% favorites %]</span> 
     14                        <span>[%u favorites %]</span> 
    1515                </td> 
    1616        </tr> 
  • platform/air/wasaco/src/assets/style.tt

    r18551 r18596  
    44                font-size: [% fontSize %]px; 
    55                font-family:"メイリオ","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3","MS Pゴシック", "Osaka", sans-selif; 
     6                line-height: 150%; 
    67        } 
    78         
  • platform/air/wasaco/src/vc/kan/util/Template.as

    r17629 r18596  
    1010                { 
    1111                        var pattern:RegExp = /\[% ([\w-_]+?) %\]/g; 
     12                        var pattern_unescape:RegExp = /\[%u ([\w-_]+?) %\]/g; 
    1213                        var patternIf:RegExp = /^\[% IF ([\w-_]+?) %\](.+)$/g; 
    1314                        return template.split(/\r?\n/).map(function(line:Object, idx:Number, array:Array):Object { 
     
    2425                                } 
    2526                        }).join("\n").replace(pattern, function():String{ 
    26                                 return vars[arguments[1]]; 
     27                                return _escape(vars[arguments[1]]) ; 
     28                        }).replace(pattern_unescape, function():String{ 
     29                                return vars[arguments[1]] ; 
    2730                        }); 
     31                } 
     32                 
     33                private function _escape(str:String):String 
     34                { 
     35                        if (str) { 
     36                                return str.replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/&/g, '&amp;'); 
     37                        } else { 
     38                                return str; 
     39                        } 
    2840                } 
    2941 
  • platform/air/wasaco/src/wasaco.mxml

    r18592 r18596  
    499499                                if (feed_item[j]) { 
    500500                                        var vars:Object = feed_item[j]; 
    501                                         vars.html = feed_item[j].body.replace(pattern, replaceURL); 
     501                                        vars.html = feed_item[j].html.replace(pattern, replaceURL); 
    502502                                        vars.profile_url = feed_item[j].user.profile_image_url; 
    503503                                        vars.user_login_id = feed_item[j].user.login_id;