View.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <?php
  2. declare(strict_types=1);
  3. class FreshRSS_View extends Minz_View {
  4. // Main views
  5. /** @var callable */
  6. public $callbackBeforeEntries;
  7. /** @var callable|null */
  8. public $callbackBeforeFeeds;
  9. /** @var callable */
  10. public $callbackBeforePagination;
  11. /** @var array<FreshRSS_Category> */
  12. public array $categories;
  13. public ?FreshRSS_Category $category;
  14. public string $current_user;
  15. /** @var iterable<FreshRSS_Entry> */
  16. public $entries;
  17. public FreshRSS_Entry $entry;
  18. public ?FreshRSS_Feed $feed;
  19. /** @var array<FreshRSS_Feed> */
  20. public array $feeds;
  21. public int $nbUnreadTags;
  22. /** @var array<FreshRSS_Tag> */
  23. public array $tags;
  24. /** @var array<int,array{'id':int,'name':string,'id_entry':string,'checked':bool}> */
  25. public array $tagsForEntry;
  26. /** @var array<string,array<string>> */
  27. public array $tagsForEntries;
  28. /** @var array<string,string> */
  29. public array $notification;
  30. public bool $excludeMutedFeeds;
  31. // Substriptions
  32. public ?FreshRSS_Category $default_category;
  33. public bool $displaySlider = false;
  34. public bool $load_ok;
  35. public bool $onlyFeedsWithError;
  36. public bool $signalError;
  37. // Manage users
  38. /** @var array{'feed_count':int,'article_count':int,'database_size':int,'language':string,'mail_login':string,'enabled':bool,'is_admin':bool,'last_user_activity':string,'is_default':bool} */
  39. public array $details;
  40. public bool $disable_aside;
  41. public bool $show_email_field;
  42. public string $username;
  43. /** @var array<array{'language':string,'enabled':bool,'is_admin':bool,'enabled':bool,'article_count':int,'database_size':int,'last_user_activity':string,'mail_login':string,'feed_count':int,'is_default':bool}> */
  44. public array $users;
  45. // Updates
  46. public string $last_update_time;
  47. /** @var array<string,bool> */
  48. public array $status_files;
  49. /** @var array<string,bool> */
  50. public array $status_php;
  51. public bool $update_to_apply;
  52. /** @var array<string,bool> */
  53. public array $status_database;
  54. public bool $is_release_channel_stable;
  55. // Archiving
  56. public int $nb_total;
  57. public int $size_total;
  58. public int $size_user;
  59. // Display
  60. /** @var array<string,array{'id':string,'name':string,'author':string,'description':string,'version':float|string,'files':array<string>,'theme-color'?:string|array{'dark'?:string,'light'?:string,'default'?:string}}> */
  61. public array $themes;
  62. // Shortcuts
  63. /** @var array<int, string> */
  64. public array $list_keys;
  65. // User queries
  66. /** @var array<int,FreshRSS_UserQuery> */
  67. public array $queries;
  68. /** @var FreshRSS_UserQuery|null */
  69. public ?FreshRSS_UserQuery $query = null;
  70. // Export / Import
  71. public string $content;
  72. /** @var array<string,array<string>> */
  73. public array $entryIdsTagNames;
  74. public string $list_title;
  75. public int $queryId;
  76. public string $type;
  77. // Form login
  78. public int $cookie_days;
  79. // Registration
  80. public bool $can_register;
  81. public string $preferred_language;
  82. public bool $show_tos_checkbox;
  83. public string $terms_of_service;
  84. public string $site_title;
  85. public string $validation_url;
  86. // Logs
  87. public int $currentPage;
  88. public Minz_Paginator $logsPaginator;
  89. public int $nbPage;
  90. // RSS view
  91. public string $rss_title = '';
  92. public string $rss_url = '';
  93. public string $rss_base = '';
  94. public bool $internal_rendering = false;
  95. // Content preview
  96. public string $fatalError;
  97. public string $htmlContent;
  98. public bool $selectorSuccess;
  99. // Extensions
  100. /** @var array<string,array{'name':string,'author':string,'description':string,'version':string,'entrypoint':string,'type':'system'|'user','url':string,'method':string,'directory':string}> */
  101. public array $available_extensions;
  102. public ?Minz_Extension $ext_details;
  103. /** @var array{'system':array<Minz_Extension>,'user':array<Minz_Extension>} */
  104. public array $extension_list;
  105. public ?Minz_Extension $extension;
  106. /** @var array<string,string> */
  107. public array $extensions_installed;
  108. // Errors
  109. public string $code;
  110. public string $errorMessage;
  111. /** @var array<string,string> */
  112. public array $message;
  113. }