diff --git a/README.md b/README.md index 75247dc..27cd244 100644 --- a/README.md +++ b/README.md @@ -7,46 +7,172 @@ To load the Tampermonkey script: * Modify the *countiesToWin[]* array to contain the countyId's you wish to win the bid on. ## Wishlist / Todo - [] Sitewide bidcap checkbox (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] Inject div - [] start/stop buttons - [x] How often should the status check be performed? - [x] randomize refresh value to avoid detection - [] show rowAction1 array //AlwaysWin - [] show rowAction2 array //AlwaysTie - [] show rowAction3 array //WatchTie - [] PriceChangeOverTime Chart - [] Download Stats - [] Clear Stats - [] For each countyRow inject - [x] "rowAction" dropdown with options: - 0 - Ignore - 1 - Ensure I am highest bidder - 2 - Make sure I am Tied - 3 - Only watch tied bid - [] save to analytics checkbox - [x] expose countyId, tie, margin/clicksToWin data - [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 - [] enable apply, enableBidcap, bidCap, action inputs and persist values the values at a row level - [] Option to sell leads that don't fit your criteria but you can't return on the secondary market. - [x] Store tie values for statistical analysis over time. - [] Implement tieCounty code - [] Implement watchCounty code - [x] Auto login if on signin page - [x] Add verticle scroll overflow to awLog div - [] Figure out session timout/no longer refreshing/ not loaded issue (screensaver?, tab no focus?, os?, browser?) - [x] Refactor injection and alwayswin array code in main - [] if oversight div exists for county dont inject a new one - []] read from /app/subscriptions to get list of initial counties - if county is missing it automatically gets added. - [] if county action is ignore then hide the tr and dont inject oversight - [] expose toggle to hide/show ignored counties in settings +### Functionality For Release +- [ ] Read from /app/subscriptions to get list of initial counties - if county is missing it automatically gets added. +- [ ] 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 +- [ ] Add cap presidence setting. + + *If a row and settings cap are enabled then [options🔽] takes presidence.* + ```Options + S - SettingsBidCap + R - RowCap + H - The highest cap + L - The lowest cap + ``` +- [ ] Apply cap presidence logic +- [ ] Add settings option on where to apply the SettingsBidCap. + + *SettingsBidCap [200] applies to [options🔽] rows* + ```Options + N - None of the + A - All + C - Capped Only + U - UnCapped Only + ``` + +### 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) + +### 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 + + +### 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