restore retriever configuration

This commit is contained in:
Matthew Exon 2025-01-19 14:42:20 +01:00
parent b28c55d781
commit 0929ed18bc

View file

@ -37,6 +37,7 @@ function retriever_install() {
Hook::register('addon_settings_post', 'addon/retriever/retriever.php', 'retriever_addon_settings_post'); Hook::register('addon_settings_post', 'addon/retriever/retriever.php', 'retriever_addon_settings_post');
Hook::register('post_remote', 'addon/retriever/retriever.php', 'retriever_post_remote_hook'); Hook::register('post_remote', 'addon/retriever/retriever.php', 'retriever_post_remote_hook');
Hook::register('contact_photo_menu', 'addon/retriever/retriever.php', 'retriever_contact_photo_menu'); Hook::register('contact_photo_menu', 'addon/retriever/retriever.php', 'retriever_contact_photo_menu');
Hook::register('retriever_mod_post', 'addon/retriever/retriever.php', 'retriever_content');
Hook::register('cron', 'addon/retriever/retriever.php', 'retriever_cron'); Hook::register('cron', 'addon/retriever/retriever.php', 'retriever_cron');
if (DI::config()->get('retriever', 'dbversion') == '0.14') { if (DI::config()->get('retriever', 'dbversion') == '0.14') {
@ -77,6 +78,7 @@ function retriever_uninstall() {
Hook::unregister('addon_settings', 'addon/retriever/retriever.php', 'retriever_addon_settings'); Hook::unregister('addon_settings', 'addon/retriever/retriever.php', 'retriever_addon_settings');
Hook::unregister('addon_settings_post', 'addon/retriever/retriever.php', 'retriever_addon_settings_post'); Hook::unregister('addon_settings_post', 'addon/retriever/retriever.php', 'retriever_addon_settings_post');
Hook::unregister('contact_photo_menu', 'addon/retriever/retriever.php', 'retriever_contact_photo_menu'); Hook::unregister('contact_photo_menu', 'addon/retriever/retriever.php', 'retriever_contact_photo_menu');
Hook::unregister('retriever_mod_post', 'addon/retriever/retriever.php', 'retriever_content');
Hook::unregister('cron', 'addon/retriever/retriever.php', 'retriever_cron'); Hook::unregister('cron', 'addon/retriever/retriever.php', 'retriever_cron');
} }
@ -856,11 +858,12 @@ function retriever_transform_images(array &$item, array $resource) {
* @brief Displays the retriever configuration page for a contact. Alternatively, if the user clicked the "help" button, display the help content. * @brief Displays the retriever configuration page for a contact. Alternatively, if the user clicked the "help" button, display the help content.
*/ */
function retriever_content() { function retriever_content() {
$e = new \Exception;
if (!DI::userSession()->getLocalUserId()) { if (!DI::userSession()->getLocalUserId()) {
DI::page()['content'] .= "<p>Please log in</p>"; DI::page()['content'] .= "<p>Please log in</p>";
return; return;
} }
if (isset(DI::args()->getArgv()[1]) and DI::args()->getArgv()[1] === 'help') { if (DI::args()->get(1) === 'help') {
$feeds = DBA::selectToArray('contact', ['id', 'name', 'thumb'], ['uid' => DI::userSession()->getLocalUserId(), 'network' => 'feed']); $feeds = DBA::selectToArray('contact', ['id', 'name', 'thumb'], ['uid' => DI::userSession()->getLocalUserId(), 'network' => 'feed']);
for ($i = 0; $i < count($feeds); ++$i) { for ($i = 0; $i < count($feeds); ++$i) {
$feeds[$i]['url'] = DI::baseUrl() . '/retriever/' . $feeds[$i]['id']; $feeds[$i]['url'] = DI::baseUrl() . '/retriever/' . $feeds[$i]['id'];
@ -872,8 +875,8 @@ function retriever_content() {
'$feeds' => $feeds)); '$feeds' => $feeds));
return; return;
} }
if (isset(DI::args()->getArgv()[1])) { if (DI::args()->get(1)) {
$arg1 = DI::args()->getArgv()[1]; $arg1 = DI::args()->get(1);
$retriever_rule = get_retriever_rule($arg1, DI::userSession()->getLocalUserId(), false); $retriever_rule = get_retriever_rule($arg1, DI::userSession()->getLocalUserId(), false);
if (!$retriever_rule) { if (!$retriever_rule) {
$retriever_rule = ['id' => 0, 'data' => ['enable' => 0, 'modurl' => '', 'pattern' => '', 'replace' => '', 'images' => 0, 'storecookies' => 0, 'cookiedata' => '', 'customxslt' => '', 'include' => '', 'exclude' => '']]; $retriever_rule = ['id' => 0, 'data' => ['enable' => 0, 'modurl' => '', 'pattern' => '', 'replace' => '', 'images' => 0, 'storecookies' => 0, 'cookiedata' => '', 'customxslt' => '', 'include' => '', 'exclude' => '']];