Changeset 26163

Show
Ignore:
Timestamp:
12/09/08 10:54:43 (5 years ago)
Author:
drry
Message:
  • もしバグったらごめんなさい。
Location:
lang/javascript/vimperator-plugins/trunk/notifier
Files:
2 modified

Legend:

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

    r26152 r26163  
    2424var Growl = function() {//{{{ 
    2525    this.initialize.apply(this, arguments); 
    26 } 
     26}; 
    2727Growl.prototype = { 
    2828    defaults: { 
     
    4242    }, 
    4343 
    44 }//}}} 
     44};//}}} 
    4545 
    4646notifier.observer.register(notifier.Observer, { 
     
    5252            $U.readDirectory(path, '^growl', function(f) { 
    5353                try { 
    54                     io.source(f.path, true) 
     54                    io.source(f.path, true); 
    5555                    logger.log('load success: ' + f.leafName); 
    5656                } catch (e) { 
  • lang/javascript/vimperator-plugins/trunk/notifier/subject_hatelabo_bottle.js

    r26154 r26163  
    66    <description lang="ja">はてなボトルの変更通知。</description> 
    77    <author mail="suvene@zeromemory.info" homepage="http://zeromemory.sblo.jp/">suVene</author> 
    8     <version>0.1.0</version> 
     8    <version>0.1.1</version> 
    99    <minVersion>2.0pre</minVersion> 
    1010    <maxVersion>2.0pre</maxVersion> 
    11     <detail><![CDATA[ 
    12     ]]></detail> 
     11    <detail/> 
    1312</VimperatorPlugin>; 
    1413//}}} 
     
    3332    }, 
    3433    parse: function(res) { 
     34        if (!res.isSuccess() || res.responseText == '') return; 
    3535 
    36         var ret, dom; 
     36        var dom = res.getHTMLDocument('id("body")//div[contains(concat(" ", @class, " "), " entry ")]'); 
     37        if (!dom) return; 
    3738 
    38         if (!res.isSuccess() || res.responseText == '') return ret; 
    39  
    40         dom = res.getHTMLDocument('id("body")//div[contains(concat(" ", @class, " "), " entry ")]'); 
    41         if (!dom) return ret; 
    42  
    43         ret = []; 
    44         for (let i = 0, len = dom.childNodes.length; i < len; i++) { 
    45             ret.push(dom.childNodes[i]); 
    46         } 
    47  
     39        var ret = []; 
     40        for (let i = 0, len = dom.childNodes.length; i < len; ret.push(dom.childNodes[i++])); 
    4841        return ret; 
    4942    }, 
    50     diff: function(cache, parsed) { 
    51         var ret = []; 
    52         parsed.forEach(function(element) { 
    53            if (!cache.some(function(c) { if (c.textContent == element.textContent) return true })) 
    54                ret.push(element);  
    55         }); 
    56         return ret; 
    57     }, 
    58     buildMessages: function(diff) { 
    59         var ret = []; 
    60         diff.forEach(function(d) { 
    61             ret.push( 
    62                 new notifier.Message('Hatelab bottle', $U.xmlSerialize(d), { 
    63                         growl: { 
    64                             life: 7000 
    65                         } 
    66                 }) 
    67             ); 
    68         }); 
    69         return ret; 
    70     } 
     43    diff: function(cache, parsed) 
     44        parsed.filter(function(element) 
     45            !cache.some(function(c) c.textContent == element.textContent)), 
     46    buildMessages: function(diff) 
     47        diff.map(function(d) 
     48            new notifier.Message('Hatelab bottle', $U.xmlSerialize(d), { 
     49                growl: { life: 7000 } 
     50            })) 
    7151}); 
    7252