mirror of
https://github.com/RSS-Bridge/rss-bridge.git
synced 2024-12-18 08:54:20 +03:00
2ee615e588
* [PepperBridgeAbstract, DealabsBridge, HotUKDealsBridge, MydealsBridge] Streamlining Group Management Since groups can change URLs, be created, or removed at the discretion of website administrators, maintaining a valid and functional list of groups is impractical. Users can now enter the part of the URL that defines the group in a text field, rather than searching through a lengthy, likely outdated list. The way the RSS feed title is retrieved had to be adjusted accordingly. Titles are now cached for 15 days to avoid unnecessary website access and to prevent potential bot blocking. Existing feeds will continue to work, as their parameters remain unchanged; only the method for inputting them has been modified. * [PepperBridgeAbstract, DealabsBridge, HotUKDealsBridge, MydealsBridge] Streamlining Group Management Coding policy fixes * [PepperBridgeAbstract, DealabsBridge, HotUKDealsBridge, MydealsBridge] Streamlining Group Management Fix wrong comment * [PepperBridgeAbstract, DealabsBridge, HotUKDealsBridge, MydealsBridge] Streamlining Group Management Add Example values for Group context
104 lines
3.7 KiB
PHP
104 lines
3.7 KiB
PHP
<?php
|
|
|
|
class HotUKDealsBridge extends PepperBridgeAbstract
|
|
{
|
|
const NAME = 'HotUKDeals bridge';
|
|
const URI = 'https://www.hotukdeals.com/';
|
|
const DESCRIPTION = 'Return the HotUKDeals search result using keywords';
|
|
const MAINTAINER = 'sysadminstory';
|
|
const PARAMETERS = [
|
|
'Search by keyword(s))' => [
|
|
'q' => [
|
|
'name' => 'Keyword(s)',
|
|
'type' => 'text',
|
|
'exampleValue' => 'lamp',
|
|
'required' => true
|
|
],
|
|
'hide_expired' => [
|
|
'name' => 'Hide expired deals',
|
|
'type' => 'checkbox',
|
|
],
|
|
'hide_local' => [
|
|
'name' => 'Hide local deals',
|
|
'type' => 'checkbox',
|
|
'title' => 'Hide deals in physical store',
|
|
],
|
|
'priceFrom' => [
|
|
'name' => 'Minimal Price',
|
|
'type' => 'text',
|
|
'title' => 'Minmal Price in Pounds',
|
|
'required' => false
|
|
],
|
|
'priceTo' => [
|
|
'name' => 'Maximum Price',
|
|
'type' => 'text',
|
|
'title' => 'Maximum Price in Pounds',
|
|
'required' => false
|
|
],
|
|
],
|
|
|
|
'Deals per group' => [
|
|
'group' => [
|
|
'name' => 'Group',
|
|
'type' => 'text',
|
|
'exampleValue' => 'broadband',
|
|
'title' => 'Group name in the URL : The group name that must be entered is present after "https://www.hotukdeals.com/tag/" and before any "?".
|
|
Example: If the URL of the group displayed in the browser is :
|
|
https://www.hotukdeals.com/tag/broadband?sortBy=temp
|
|
Then enter :
|
|
broadband',
|
|
],
|
|
'order' => [
|
|
'name' => 'Order by',
|
|
'type' => 'list',
|
|
'title' => 'Sort order of deals',
|
|
'values' => [
|
|
'From the most to the least hot deal' => '-hot',
|
|
'From the most recent deal to the oldest' => '-new',
|
|
]
|
|
]
|
|
],
|
|
'Discussion Monitoring' => [
|
|
'url' => [
|
|
'name' => 'Discussion URL',
|
|
'type' => 'text',
|
|
'required' => true,
|
|
'title' => 'Discussion URL to monitor. Ex: https://www.hotukdeals.com/discussions/title-123',
|
|
'exampleValue' => 'https://www.hotukdeals.com/discussions/the-hukd-lego-thread-3599357',
|
|
],
|
|
'only_with_url' => [
|
|
'name' => 'Exclude comments without URL',
|
|
'type' => 'checkbox',
|
|
'title' => 'Exclude comments that does not contains URL in the feed',
|
|
'defaultValue' => false,
|
|
]
|
|
]
|
|
|
|
|
|
];
|
|
|
|
public $lang = [
|
|
'bridge-uri' => self::URI,
|
|
'bridge-name' => self::NAME,
|
|
'context-keyword' => 'Search by keyword(s))',
|
|
'context-group' => 'Deals per group',
|
|
'context-talk' => 'Discussion Monitoring',
|
|
'uri-group' => 'tag/',
|
|
'uri-deal' => 'deals/',
|
|
'uri-merchant' => 'search/deals?merchant-id=',
|
|
'request-error' => 'Could not request HotUKDeals',
|
|
'thread-error' => 'Unable to determine the thread ID. Check the URL you entered',
|
|
'currency' => '£',
|
|
'price' => 'Price',
|
|
'shipping' => 'Shipping',
|
|
'origin' => 'Origin',
|
|
'discount' => 'Discount',
|
|
'title-keyword' => 'Search',
|
|
'title-group' => 'Group',
|
|
'title-talk' => 'Discussion Monitoring',
|
|
'deal-type' => 'Deal Type',
|
|
'localdeal' => 'Local deal',
|
|
'context-hot' => '-hot',
|
|
'context-new' => '-new',
|
|
];
|
|
}
|