Advertisement
the_usik

get_birthday_parties

Nov 9th, 2020
879
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //written by totar oao)
  2. var groupId = 137661218;
  3. var iteration = 0;
  4. var currentDate = API.utils.getServerTime();
  5. var membersOfGroup = [];
  6. var widgetRows = [];
  7. var monthList = ["января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря"];
  8.  
  9. var responseMethodGetMembers = API.groups.getMembers({
  10.     group_id: groupId,
  11.     fields: "bdate",
  12.     count: 500
  13. });
  14.  
  15. // parsing date
  16. currentDate = datetime(currentDate);
  17. currentDate = currentDate.split("T");
  18. currentDate = currentDate[0].split("-");
  19. currentDate = {
  20.     year: parseInt(currentDate[0]),
  21.     month: parseInt(currentDate[1]),
  22.     day: parseInt(currentDate[2])
  23. };
  24.  
  25. iteration = 0;
  26. while (responseMethodGetMembers.items.length > iteration) {
  27.     var currentMember = responseMethodGetMembers.items[iteration];
  28.     var bdateParse = currentMember.bdate.split(".");
  29.     var bdateObject = {};
  30.  
  31.     if (bdateParse.length == 3) {
  32.         bdateObject.day = parseInt(bdateParse[0]);
  33.         bdateObject.month = parseInt(bdateParse[1]);
  34.         bdateObject.year = parseInt(bdateParse[2]);
  35.     }
  36.     else if (bdateParse.length == 2) {
  37.         bdateObject.day = parseInt(bdateParse[0]);
  38.         bdateObject.month = parseInt(bdateParse[1]);
  39.     }
  40.     else { }
  41.  
  42.     membersOfGroup.push({
  43.         userId: currentMember.id,
  44.         firstName: currentMember.first_name,
  45.         lastName: currentMember.last_name,
  46.         bdate: bdateObject
  47.     });
  48.  
  49.     iteration = iteration + 1;
  50. }
  51.  
  52. iteration = 0;
  53. while (iteration < membersOfGroup.length) {
  54.     var nextIteration = iteration + 1;
  55.     while (nextIteration < membersOfGroup.length) {
  56.         var currentObject = membersOfGroup[iteration];
  57.         var nextObject = membersOfGroup[nextIteration];
  58.  
  59.         if (currentObject.bdate.month > nextObject.bdate.month) {
  60.             var temp = membersOfGroup[iteration];
  61.             membersOfGroup.splice(iteration, 1, membersOfGroup[nextIteration]);
  62.             membersOfGroup.splice(nextIteration, 1, temp);
  63.         }
  64.  
  65.         if (currentObject.bdate.month == nextObject.bdate.month && currentObject.bdate.day > nextObject.bdate.day) {
  66.             var temp = membersOfGroup[iteration];
  67.             membersOfGroup.splice(iteration, 1, membersOfGroup[nextIteration]);
  68.             membersOfGroup.splice(nextIteration, 1, temp);
  69.         }
  70.  
  71.         nextIteration = nextIteration + 1;
  72.     }
  73.     iteration = iteration + 1;
  74. }
  75.  
  76.  
  77. iteration = 0;
  78. while (iteration < membersOfGroup.length) {
  79.     widgetRows.push([
  80.         {
  81.             icon_id: "id" + membersOfGroup[iteration].userId,
  82.             text: membersOfGroup[iteration].firstName + " " + membersOfGroup[iteration].lastName
  83.         },
  84.         {
  85.             text: membersOfGroup[iteration].bdate.day + " " + monthList[membersOfGroup[iteration].bdate.month - 1]
  86.         }
  87.     ]);
  88.     iteration = iteration + 1;
  89. }
  90. return {
  91.     "title": "Дни рождения:",
  92.     "title_counter": widgetRows.length,
  93.     "head": [
  94.         {
  95.             "text": "Чувачки"
  96.         },
  97.         {
  98.             "text": "Дни рождения",
  99.             "align": "right"
  100.         }
  101.     ],
  102.     "rows": widgetRows
  103. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement