| 1 | <div id="wrapper"> |
|---|
| 2 | <div id="main"> |
|---|
| 3 | <form id="StatusUpdate" name="StatusUpdate" |
|---|
| 4 | onsubmit="if( $('status').value.length > 140 ) { alert('That update is over 140 characters!'); return false;}; new Ajax.Request('/status/update', { asynchronous:true, evalScripts:true, requestHeaders: { Accept: 'application/x-piece-html-fragment'}, onComplete: function(transport){ $('timeline_table').insert({ top: transport.responseText }); $('status').value = '';updateStatusTextCharCounter($('status').value);$('status').focus();},parameters: Form.serialize(this) }); return false;"> |
|---|
| 5 | <div id="post"> |
|---|
| 6 | <span class="whatdoing">イマナニシテル?</span> |
|---|
| 7 | <span class="textCount" id="js_textcount">140</span> |
|---|
| 8 | <textarea |
|---|
| 9 | onkeyup="return updateStatusTextCharCounter(this.value, event);" |
|---|
| 10 | onfocus="return updateStatusTextCharCounter(this.value, event);" |
|---|
| 11 | onblur="return updateStatusTextCharCounter(this.value, event);" |
|---|
| 12 | class="message" name="status" id="status"></textarea> |
|---|
| 13 | <p class="btn btnSpace"> |
|---|
| 14 | <input name="commit" id="commit" class="formBtn" type="button" value="つぶやく" p:event="update" onclick="$('StatusUpdate').onsubmit();" /> |
|---|
| 15 | </p> |
|---|
| 16 | </div> |
|---|
| 17 | </form> |
|---|
| 18 | |
|---|
| 19 | <ul class="tabNav"> |
|---|
| 20 | <li><a href="/home" class="{tab.home}">みんなのつぶやき</a></li> |
|---|
| 21 | <li><a href="/replies" class="{tab.replies}">あなた宛のつぶやき</a></li> |
|---|
| 22 | <li><a href="/account/archive" class="{tab.archive}">あなたのつぶやき</a></li> |
|---|
| 23 | <li><a href="/public_timeline" class="{tab.public_timeline}">公開つぶやき</a></li> |
|---|
| 24 | </ul> |
|---|
| 25 | |
|---|
| 26 | <div id="timeline"> |
|---|
| 27 | <table class="statuslist" id="timeline_table"> |
|---|
| 28 | |
|---|
| 29 | <tr foreach="statusList" as="status"> |
|---|
| 30 | <td class="friendicon"> |
|---|
| 31 | <img src="/profile_images/{status.userId}/{status.imageNormal}" id="profile-image" alt="{status.userName}" class="friendicon" if="status.image" /> |
|---|
| 32 | <img src="/profile_images/default_profile_normal.png" id="profile-image" alt="Default_profile_normal" class="friendicon" if="!status.image" /> |
|---|
| 33 | </td> |
|---|
| 34 | <td class="status"> |
|---|
| 35 | <a href="/{status.userName}" key="status.userName">username</a> |
|---|
| 36 | |
|---|
| 37 | <span class="murmur" key="status.comment"> |
|---|
| 38 | <a href="#replySample">@hogehoge</a> 漢字、ひらがな、カタカナ、数字の123、Alphabetが混ざったサンプルテキストです。 |
|---|
| 39 | </span> |
|---|
| 40 | |
|---|
| 41 | <span> |
|---|
| 42 | <a href="/{user.userName}/statuses/{status.statusId}" key="status.createdAt">YYYY-MM-DD hh:mm:ss</a> |
|---|
| 43 | </span> |
|---|
| 44 | |
|---|
| 45 | </td> |
|---|
| 46 | <td class="action"> |
|---|
| 47 | <a title="Reply to {status.userName}" |
|---|
| 48 | onclick="replyTo('{status.userName}');" |
|---|
| 49 | href="#" |
|---|
| 50 | if="status.userId != self.id"> |
|---|
| 51 | <img src="/img/share/reply_icon.gif" alt="Reply" class="icon16" /> |
|---|
| 52 | </a> |
|---|
| 53 | |
|---|
| 54 | <a title="Delete this update?" |
|---|
| 55 | onclick="if (confirm('削除してもよいですか?取り消しできません!')) { return true; } else { return false;}" |
|---|
| 56 | href="/status/destroy/{status.statusId}" |
|---|
| 57 | if="status.userId == self.id"> |
|---|
| 58 | <img src="/img/share/trash_icon.gif" alt="Delete" class="icon16" /> |
|---|
| 59 | </a> |
|---|
| 60 | </td> |
|---|
| 61 | </tr> |
|---|
| 62 | |
|---|
| 63 | </table> |
|---|
| 64 | |
|---|
| 65 | <p class="paraR bottombtn" if="user.hasNextPage()"><a href="?page={olderPage}">前へ</a></p> |
|---|
| 66 | <p class="paraR bottombtn" if="newerPage > 0"><a href="?page={newerPage}">後へ</a></p> |
|---|
| 67 | <p class="paraL bottombtn"><a href="#rss">RSS</a></p> |
|---|
| 68 | <!-- / #timeline --></div> |
|---|
| 69 | <!-- / #main --></div> |
|---|
| 70 | <!-- / #wrapper --></div> |
|---|
| 71 | |
|---|
| 72 | <div id="sub"> |
|---|
| 73 | <div class="subsection_title"> |
|---|
| 74 | <h3>プロフィール</h3> |
|---|
| 75 | </div> |
|---|
| 76 | |
|---|
| 77 | <div class="subsection_body"> |
|---|
| 78 | <address> |
|---|
| 79 | <ul class="about vcard entry-author"> |
|---|
| 80 | <li><span class="label">名前</span> <span class="fn" key="user.userName">username</span></li> |
|---|
| 81 | </ul> |
|---|
| 82 | </address> |
|---|
| 83 | </div> |
|---|
| 84 | |
|---|
| 85 | <div class="subsection_title"> |
|---|
| 86 | <h3>ステータス</h3> |
|---|
| 87 | </div> |
|---|
| 88 | <div class="subsection_body"> |
|---|
| 89 | <ul class="status"> |
|---|
| 90 | <li> |
|---|
| 91 | <span class="label"><a href="/friends">このユーザーがフォロー</a></span> |
|---|
| 92 | <span key="user.countFriends()">999</span> |
|---|
| 93 | </li> |
|---|
| 94 | <li> |
|---|
| 95 | <span class="label"><a href="/followers">このユーザーをフォロー</a></span> |
|---|
| 96 | <span key="user.countFollowers()">999</span> |
|---|
| 97 | </li> |
|---|
| 98 | <li> |
|---|
| 99 | <span class="label"><a href="/account/archive">これまでの投稿</a></span> |
|---|
| 100 | <span key="user.countArchives()">999</span> |
|---|
| 101 | </li> |
|---|
| 102 | </ul> |
|---|
| 103 | </div> |
|---|
| 104 | |
|---|
| 105 | <div class="subsection_body"> |
|---|
| 106 | <div if="self.countFriendRequests()"> |
|---|
| 107 | <a href="/friend_requests">新しいフォロー<span key="self.countFriendRequests()">0</span>件!</a> |
|---|
| 108 | </div> |
|---|
| 109 | |
|---|
| 110 | <span class="vcard" foreach="user.listFriendsImage()" as="friend"> |
|---|
| 111 | <a href="/{friend.userName}"> |
|---|
| 112 | <img height="24" width="24" src="/profile_images/{friend.id}/{friend.imageMini}" alt="{friend.username}" id="profile-image" class="photo fn" if="friend.image" /> |
|---|
| 113 | <img height="24" width="24" src="/profile_images/default_profile_mini.png" alt="{friend.username}" id="profile-image" class="photo fn" if="!friend.image" /> |
|---|
| 114 | </a> |
|---|
| 115 | </span> |
|---|
| 116 | </div> |
|---|
| 117 | |
|---|
| 118 | </div> |
|---|
| 119 | <!-- / #sub --> |
|---|
| 120 | |
|---|
| 121 | <script type="text/javascript"> |
|---|
| 122 | Event.observe(window, 'load', function() { |
|---|
| 123 | jQuery('span.murmur').each(function() { |
|---|
| 124 | $(this).innerHTML = replace_name_to_link($(this).innerHTML); |
|---|
| 125 | $(this).innerHTML = replace_url_to_link($(this).innerHTML); |
|---|
| 126 | }); |
|---|
| 127 | |
|---|
| 128 | $('status').focus(); |
|---|
| 129 | updateStatusTextCharCounter($('status').value); |
|---|
| 130 | }); |
|---|
| 131 | </script> |
|---|
| 132 | |
|---|
| 133 | <script type="text/javascript"> |
|---|
| 134 | </script> |
|---|