Chart.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. /* GNU FM -- a free network service for sharing your music listening habits
  3. Copyright (C) 2009 Free Software Foundation, Inc
  4. This program is free software: you can redistribute it and/or modify
  5. it under the terms of the GNU Affero General Public License as published by
  6. the Free Software Foundation, either version 3 of the License, or
  7. (at your option) any later version.
  8. This program is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. GNU Affero General Public License for more details.
  12. You should have received a copy of the GNU Affero General Public License
  13. along with this program. If not, see <http://www.gnu.org/licenses/>.
  14. */
  15. require_once($install_path . '/database.php');
  16. require_once($install_path . '/data/sanitize.php');
  17. require_once($install_path . '/data/Artist.php');
  18. require_once($install_path . '/data/Server.php');
  19. /**
  20. * Represents chart data
  21. */
  22. class Chart {
  23. /**
  24. * Get the site's top artists
  25. *
  26. * @param int $limit The number of artists to return
  27. * @param int $offset Skip this number of rows before returning artists
  28. * @param bool $streamable Only return streamable artists
  29. * @param int $cache Caching period in seconds
  30. * @return array Artists ((artist, freq, artisturl) ..) or empty array in case of failure
  31. */
  32. function getTopArtists($limit = 20, $offset = 0, $streamable = False, $cache = 600) {
  33. return Server::getLovedArtists($limit, $offset, $streamable, null, $cache);
  34. }
  35. }