Widget:Autorenbox: Unterschied zwischen den Versionen
Aus ZUM-Unterrichten
KKeine Bearbeitungszusammenfassung Markierung: 2017-Quelltext-Bearbeitung  | 
				KKeine Bearbeitungszusammenfassung Markierung: 2017-Quelltext-Bearbeitung  | 
				||
| Zeile 27: | Zeile 27: | ||
       .then((dateLS) => lastModifiedEl.append(dateLS));  |        .then((dateLS) => lastModifiedEl.append(dateLS));  | ||
     response.then((data) => data  |      response.then((data) => {  | ||
        const pageData = data  | |||
          .query  | |||
         .  |           .pages[pageid]l  | ||
         let userChanges = pageData  | |||
         .  |           .contributors  | ||
          .reduce((acc, c)=>acc[c] = {count:0, last:0}, {});  | |||
         userChanges = pageData.revisions.reduce((acc, r) => {  | |||
          acc[r.user] = acc[r.user] || {count:0, last:0};  | |||
          acc[r.user].count += r.minor ? 0.1 : 1;  | |||
          acc[r.user].last = Math.max(acc[r.user].last, r.revid);  | |||
          return acc;  | |||
        }, userChanges);  | |||
        return Object.keys(userChanges).sort((a,b) => {  | |||
          let diff = userChanges[b].count - userChanges[a].count;  | |||
          if(diff !== 0){  | |||
            return diff;  | |||
          }  | |||
          return userChanges[b].last - userChanges[a].last;  | |||
        });  | |||
    })  | |||
     .then((users) => {  |      .then((users) => {  | ||
       const textsP = Array.from(users)  |        const textsP = Array.from(users)  | ||
