Advertisement
Guest User

multiplephototest.js

a guest
Jun 29th, 2014
788
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function($, jn) {
  2.  
  3.     if(_Janetter_Window_Type=="main" || _Janetter_Window_Type=="profile" || _Janetter_Window_Type=="notice"){
  4.  
  5.         // entitiesにextended_entitiesを統合(やっつけ)
  6.         var _init = jn.tweetController.prototype.init;
  7.         jn.tweetController.prototype.init = function (juid, item, options, autoread){
  8.             if(item && item.entities && item.extended_entities){
  9.                 item.entities.extended_media = item.extended_entities.media || [];
  10.             }
  11.             return _init.apply(this, arguments);
  12.         };
  13.  
  14.         // entitiesLinkの修正
  15.         var linkExtendedEntities = function(entities){
  16.             var text = '';
  17.             if(entities.extended_media){
  18.                 entities.extended_media.slice(1).forEach(function(e, i){
  19.                     var link = '<a hidden href="%1" class="link" title="%2"%3%4%5>%6</a>'.format(
  20.                         e.url,
  21.                         (e.expanded_url || e.url).decodeURI().htmlEncode(true),
  22.                         /* そのままだとexpandedが同値になってサムネイル表示してくれないため、#付けて無理やり変える */
  23.                         e.expanded_url ? ' expanded="' + e.expanded_url.htmlEncode(true) + '#' + (i+2) + '"' : '',
  24.                         e.media_url ? ' media="' + e.media_url.htmlEncode(true) + '"' : '',
  25.                         e.type ? ' type="' + e.type.htmlEncode(true) + '"' : '',
  26.                         e.display_url ? e.display_url.htmlEncode(true) : e.url.htmlEncode(true)
  27.                     );
  28.                     text += link;
  29.                 });
  30.             }
  31.             return text;
  32.         };
  33.         var _fn_entitiesLink = $.fn.entitiesLink;
  34.         $.fn.entitiesLink = function(entities){
  35.             _fn_entitiesLink.call(this, entities);
  36.             this.html(this.html + linkExtendedEntities(entities));
  37.             return this;
  38.         };
  39.         var _str_entitiesLink = String.prototype.entitiesLink;
  40.         String.prototype.entitiesLink = function(entities){
  41.             return _str_entitiesLink.call(this, entities) + linkExtendedEntities(entities);
  42.         };
  43.     }
  44.  
  45. })(jQuery, janet);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement