# AlwaysWin-ntsmhf Tampermonkey To load the Tampermonkey script: * Install the [Tampermonkey Chrome Extension] (https://www.tampermonkey.net/) * Click on the Extension and select **Create a new script...** * Copy the contents of [tampermonkey.js](tampermonkey.js) into the editor and save the changes * Modify the *countiesToWin[]* array to contain the countyId's you wish to win the bid on. ## Wishlist / Todo ### Functionality For Release - [X] Add this link to the settings div: https://leads.needtosellmyhousefast.com/qhrei (added this instead because it made more sense:https://info.qhrei.com/temp/alwayswin-ntsmhf/index.htm) - [X] Add donation/support message to div - [ ] Read from /app/subscriptions to get list of initial counties - if county is missing it automatically gets added. - [x] Expose Sitewide bidcap (if any county bid exceeds X only bid up to X for that county) - [x] Save button to persist changes (instead of waiting for refresh code to run) - [x] Save settings to local storage - [x] Retrieve settings from local storage - [x] county bidcap - store and read from settings - [ ] county isBidCapEnabled - store and read from settings - [ ] use isBidCapEnabled when processing each oversight - [ ] use bidcap when processing each oversight - [ ] Implement tieCounty code - [ ] Implement watchCounty code - [x] Add cap presidence setting. - [x] Add Presidence option to settings div *If a row and general cap are enabled then [options🔽] takes presidence.* ``` Options = [General Cap, Row Cap, Highest Cap, Lowest Cap] ``` - [X] Apply presidence logic to get true cap ### Feature Requests / Future Releases - [ ] Post stats to API instead of storing in local storage - [ ] Option to sell leads that don't fit your criteria but you can't return on the secondary market. - [ ] Hide/show ignored counties option in settings - [ ] Implement ignoreCounty code - [ ] start/stop buttons in settings - [ ] Stats: PriceChangeOverTime Chart - [ ] Stats: Download Stats - [ ] Stats: Clear Stats - [ ] if county action is ignore then hide the tr and dont inject oversight - [ ] expose toggle to hide/show ignored counties in settings (not at row level but read for ignore action at each level) - [ ] prices based on schedule (dont win ant night...) - [ ] schedule derived from statistical analysis gathered over time. - [ ] cooloff time (auto drops all bids for a specified amount of time then continues to win again.) - [ ] Add settings option on where to apply the GeneralBidCap *General Cap [200] applies to [applyTo] rows. Presidence [presidence🔽]* ``` applyTo Options = [None of the, All, Capped Only, Uncapped Only] ``` ### Bugs - [ ] Figure out session timout/no longer refreshing/ not loaded issue (screensaver?, tab no focus?, os?, browser?) - [ ] if oversight div exists for county don't inject a new one - [ ] if autoRefresh is not enabled DO NOT adjust bids on load (wait for the first refresh) (possibly expose "don't adjust bids on load" checkbox) ### UI Settings - [x] How often should the status check be performed? - [x] randomize refresh value to avoid detection ### UI Rows - [x] "rowAction" dropdown with options: ``` 0 - Ignore/Hide = Make this row invisible. 1 - Win = Ensure I am highest bidder 2 - Tie = Make sure I am Tied 3 - Watch = Dont bid just monitor ``` - [x] expose countyId, tie, margin/clicksToWin data - [ ] enable apply, enableBidcap, bidCap, action inputs and persist values the values at a row level - [x] Store tie values for statistical analysis over time. - [x] Auto login if on signin page - [x] Add verticle scroll overflow to awLog div - [x] Refactor injection and alwayswin array code in main - [ ] Bidcap input for row is only visible if cap is checked for row or settings bidcap is enabled. - [ ] Refactor Row injections layout to be: MYBID: 500 11223 margin:0 [Win🔽] 475 |☐cap 11224 margin:4 [Win🔽] 475 |☑cap at [400] 11225 margin:0 [Tie🔽] 700 |☑cap at [300]☒600 ## Examples of Row Injection behaviour based on settings. ### General Rules: * The option to enable a cap on a cappable row is always available * A cap will not be made visible on the row if the row can't have a cap applied to it base on settings * myBid is only set on Win or Tie actions - never watch or ignore which shall display their last saved value. * myBid is only set if a row is active * when presidence IS settingsBidCap and appliesTo IS (All || Capped Only) row bidcap stikethru, settingscap is readonly on row. ### Key |Key|Value| |---|-----| |☑| Selected and not overridden | |☐| Not selected | |☒| Overridden (wether selected or not) | |^r | rowCap is being applied to myBid | |^s | means the settingsBidCap is being applied to myBid | |__ | no bidCaps have been applied to myBid ### Example 1: [Win🔽] |☑cap at [400] | Tie:350 | margin:0 Note how cap is visible for all rows (exept watch) *SettingsBidCap [200], [All] rows, [HighestCap] presidence* |Modified | Action | r s| BidCap | TrueCap | Tie | Bid | Margin |---- | :------ | -- | :--- | :--- | :--- | :--- | :--- |AH^r | [Win🔽] | ☑☑ |☑[400]200 | 400 | Tie: 350 | myBid:375 | margin:0 |AH^r | [Tie🔽] | ☑☑ |☑[400]200 | 400 | Tie: 350 | myBid:350 | margin:0 |__ | [Watch🔽] | | | | Tie: 350 | myBid:75 | margin:11 |AH^s | [Win🔽] | ☑☑ |☑[300]200 | 300 | Tie: 350 | myBid:300 | margin:3 |AH^s | [Win🔽] | ☐☑ |☒[300]200 | 200 | Tie: 350 | myBid:200 | margin:8 |__ | [Win🔽] | ☐☑ |☒[---]200 | 200 | Tie: 125 | myBid:150 | margin:0 |__ | [Tie🔽] | ☑☑ |☒[200]200 | 200 | Tie: 125 | myBid:125 | margin:0 |AH^s | [Win🔽] | ☑☑ |☒[100]200 | 100 | Tie: 125 | myBid:100 | margin:2 ### Example 2: [Win🔽] |☑cap at [400] | Tie:350 | margin:0 Note options in row have not changed only settings have changed. *SettingsBidCap [200], [Capped] rows, [lowest] presidence* |Modified | Action | r s| BidCap | TrueCap | Tie | Bid | Margin |---- | :------ | -- | :--- | :--- | :--- | :--- | :--- |CL^s | [Win🔽] | ☑☑ |☒[400]200 | 200 | Tie: 350 | myBid:200 | margin:8 |CL^s | [Tie🔽] | ☑☑ |☒[400]200 | 200 | Tie: 350 | myBid:200 | margin:7 |__ | [Watch🔽] | | | | Tie: 350 | myBid:75 | margin:11 |CL^s | [Win🔽] | ☑☑ |☒[300]200 | 200 | Tie: 350 | myBid:200 | margin:8 |__ | [Win🔽] | ☐☑ |☐[300]200 | | Tie: 350 | **myBid:375** | margin:0 |__ | [Win🔽] | ☐☑ |☐[---]200 | | Tie: 125 | myBid:150 | margin:0 |__ | [Tie🔽] | ☑☑ |☒[200]200 | 200 | Tie: 125 | myBid:125 | margin:0 |CL^s | [Win🔽] | ☑☑ |☒[100]200 | 100 | Tie: 125 | myBid:100 | margin:2 ### Example 3: [Win🔽] |☑cap at [400] | Tie:350 | margin:0 Note options in row have not changed only settings have changed. Basically Settings cap is disabled *SettingsBidCap [200], [NoneOfThe] rows, [RowCap] presidence* |Modified | Action | r s| BidCap | TrueCap | Tie | Bid | Margin |---- | :------ | -- | :--- | :--- | :--- | :--- | :--- |NR^r | [Win🔽] | ☑☐ |☑[400]200 | 400 | Tie: 350 | myBid:375 | margin:0 |NR^r | [Tie🔽] | ☑☐ |☑[400]200 | 400 | Tie: 350 | myBid:350 | margin:0 |__ | [Watch🔽] | | | | Tie: 350 | myBid:75 | margin:11 |NR^r | [Win🔽] | ☑☐ |☑[300]200 | 300 | Tie: 350 | myBid:300 | margin:4 |__ | [Win🔽] | ☐☐ |☐[300]200 | | Tie: 350 | myBid:375 | margin:0 |__ | [Win🔽] | ☐☐ |☐[---]200 | | Tie: 125 | myBid:150 | margin:0 |__ | [Tie🔽] | ☑☐ |☑[200]200 | 200 | Tie: 125 | myBid:125 | margin:0 |NR^r | [Win🔽] | ☑☐ |☑[100]200 | 100 | Tie: 125 | myBid:100 | margin:2 ### Example 4: [Win🔽] |☒cap at ~~400~~200 | Tie:350 | margin:0 Note options in row have not changed only settings have changed. Settings Bidcap Rules all and row caps and checkbox are disabled and strukthru *SettingsBidCap [200], [SettingsBidCap] rows, [All] presidence* |Modified | Action | r s| BidCap | TrueCap | Tie | Bid | Margin |---- | :------ | -- | :--- | :--- | :--- | :--- | :--- |SA^s | [Win🔽] | ☑☑ |☒~~400~~200 | 200 | Tie: 350 | myBid:200 | margin:8 |SA^s | [Tie🔽] | ☑☑ |☒[400]200 | 200 | Tie: 350 | myBid:200 | margin:7 |__ | [Watch🔽] | | | | Tie: 350 | myBid:75 | margin:11 |SA^s | [Win🔽] | ☑☑ |☒[300]200 | 200 | Tie: 350 | myBid:200 | margin:8 |SA^s | [Win🔽] | ☐☑ |☒[300]200 | 200 | Tie: 350 | myBid:200 | margin:8 |SA^s | [Win🔽] | ☐☑ |☒[---]200 | 200 | Tie: 125 | myBid:150 | margin:0 |SA^s | [Tie🔽] | ☑☑ |☒[200]200 | 200 | Tie: 125 | myBid:125 | margin:0 |SA^s | [Win🔽] | ☑☑ |☒[100]200 | 200 | Tie: 125 | myBid:150 | margin:2 # AlwaysWin-ntsmhf Bookmarklet - Original route (probably abandoning) Version: 0.1 To load the bookmark go to the [AlwaysWin-ntsmhf Bookmarklet site](https://info.qhrei.com/temp/alwayswin-ntsmhf/index.htm) Drag & drop the above link into your bookmarks to save it. Compiled JavaScript thanks to [Google's Closure Compiler](https://closure-compiler.appspot.com/home)