docs: def uniquelogins(sessions):
      """Unique logins per days/weeks/months.
  
      :return: daily, weekly, monthly
      3 lists of dictionaries of the following format [{'x':epoch, 'y': value},]
      """
      # sessions = LoginSession.query.order_by(LoginSession.started_at.asc()).all()
      if not sessions:
          return [], [], []
      dates = {}
      for session in sessions:
          user = session.user
          # time value is discarded to aggregate on days only
          date = session.started_at.strftime("%Y/%m/%d")
  
          if date not in dates:
              dates[date] = set()  # we want unique users on a given day
              dates[date].add(user)
          else:
              dates[date].add(user)
  
      daily = []
      weekly = []
      monthly = []
  
      for date in sorted(dates.keys()):
          # print u"{} : {}".format(date, len(dates[date]))
          date_epoch = unix_time_millis(datetime.strptime(date, "%Y/%m/%d"))
          daily.append({"x": date_epoch, "y": len(dates[date])})
  
      # first_day = data[0]['x']
      # last_day = data[-1]['x']
  
      daily_serie = pd.Series(dates)
      # convert the index to Datetime type
      daily_serie.index = pd.DatetimeIndex(daily_serie.index)
      # calculate the values instead of users lists
      daily_serie = daily_serie.apply(lambda x: len(x))
  
      # GroupBy Week/month, Thanks Panda
      weekly_serie = daily_serie.groupby(pd.Grouper(freq="W")).aggregate(numpysum)
      monthly_serie = daily_serie.groupby(pd.Grouper(freq="M")).aggregate(numpysum)
  
      for date, value in weekly_serie.items():
          try:
              value = int(value)
          except ValueError:
              continue
          date_epoch = unix_time_millis(date)
          weekly.append({"x": date_epoch, "y": value})
  
      for date, value in monthly_serie.items():
          try:
              value = int(value)
          except ValueError:
              continue
          date_epoch = unix_time_millis(date)
          monthly.append({"x": date_epoch, "y": value})
  
      return daily, weekly, monthly