Template:RecentPageChanges

    Table of contents
    No headers
    // + PARAMETERS
     var par = { 
        srcpath: ( __request.args.srcpath ?? args.srcpath ..'/*' ),
        searchlimit: ( __request.args.searchlimit ?? 50),
        displaylimit: ( __request.args.displaylimit ?? 25),
        displaystring: ( __request.args.displaystring ?? "{pagelink} <small>{lastchange} by {changebylink} on {changedate}</small>")
     };
     var srcpathlength = string.length(par.srcpath)-2;
     var pagelist = [];
     var pageid;
     var pagecnt = 0;
     var search_criteria = "(type:comment OR type:wiki)";
     if (par.srcpath != '/*') {
         let search_criteria ..= " AND path: " ..string.replace(par.srcpath, 'User:','User\\:');
     }
     foreach(var p in wiki.getsearch(search_criteria, par.searchlimit, '-date')) {
       if (p.id==nil){
          let pageid=p.page.id;
       }else{
          let pageid=p.id;
       }
       if ((!list.contains(pagelist,pageid)&&(pagecnt<par.displaylimit))){
          let pagelist..=[pageid];
          let pagecnt=pagecnt+1;
       }
    }
    <table border="1" cellpadding="1" cellspacing="1" class="feedtable" width="100%">
      <thead>
        <tr>
           <th>
             "Recent Changes";
           </th>
        </tr>
      </thead>
      <tbody>
    foreach(var pageid in pagelist){
      var p=wiki.getpage(pageid);
      var homepathlength = 0;
      var lastupdate = p.date;
      var lastauthor = p.author;
      var lastchange = p.editsummary;
      var lasttype = (string.substr(p.editsummary, 0, 12) == 'page created' ? 'new' : 'E');
      if (#p.comments>0){
         var lastcomment = p.comments[#p.comments-1];
         if (date.isafter(lastcomment.date, lastupdate)) {
            let lastupdate = lastcomment.date;
            let lastauthor = lastcomment.author;
            let lasttype = 'C';
            let lastchange = 'Comment #'..#p.comments..' added';
         }
      }
      foreach( var lastfile in map.values( p.files ) ) {
          if (date.isafter(lastfile.date, lastupdate)) {
              let lastupdate = lastfile.date;
              let lastauthor = lastfile.author;
              let lasttype = 'F';
              let lastchange = 'added '..lastfile.name;
          }
      }
      Let ListString = string.replace(par.displaystring, '{pagelink}',web.link(p.uri, string.substr(p.path,srcpathlength,999)));
      Let ListString = string.replace(ListString, '{lastchange}',lastchange);
      Let ListString = string.replace(ListString, '{changebylink}',web.link(lastauthor.uri, lastauthor.name));
      Let ListString = string.replace(ListString, '{changedate}',date.format(date.changetimezone(lastupdate,user.timezone),"dd/MM/yy - hh:mm"));
    
      if(__count%2==0){
        <tr class="feedroweven">
        <td>web.html(ListString);</td>
        </tr>
      }else{
        <tr class="feedrowodd">
        <td>web.html(ListString);</td>
        </tr>
      }
    }
    </tbody></table>
    
    Tag page
    You must login to post a comment.

    Copyright © 2011 MindTouch, Inc. Powered by