giseldo/neodataset huggingface dataset:
TypeError: Cannot set property 'hidden' of undefined

Sentry Issue: [FRONT-7H0](https://sentry.io/organizations/minds-inc/issues/1723610275/?referrer=gitlab_integration)

```
TypeError: Cannot set property 'hidden' of undefined
  at e.show (/static/en/main.060a243c762a4d984556.js:10:2644372)
  at e.show (/static/en/main.060a243c762a4d984556.js:10:997636)
  at e.checkXHRError (/static/en/main.060a243c762a4d984556.js:10:4090010)
  at t.o [as _next] (/static/en/main.060a243c762a4d984556.js:10:2271205)
  at t.__tryOrUnsub (/static/en/main.060a243c762a4d984556.js:10:989498)
...
(25 additional frame(s) were not displayed)
```

Story points: 2.0
Do not show "This video is still transcoding" if the video plays

"This video is still transcoding. You will receive a notification when it is complete."

The video should not actually post to subs until the minimum transcodes in done, right?

Also, it should not show up after the first version is done. 


 ![stillll](/uploads/815583b220792b22191f0f923935479d/stillll.PNG)

Story points: 1.0
Implement custom private support tiers for Custom paywalls

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 2.0
Implement one-way sync for Support Tiers

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Implement Support Tiers

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 3.0
Referrals not working reliably

![image](/uploads/9449324f42751b9b2a29219812c4908a/image.png)

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

(How one can reproduce the issue - this is very important)

### Platform information 

(Browser, device, system stats, screen size)

### What is the current *bug* behavior?

(What actually happens)

### What is the expected *correct* behavior?

(What you should see instead)

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 2.0
Enable suggested hashtag widget when inside composer

The suggested hashtag widget is not showing up inside the composer. It is however working in comment fields. This feature should be used within the composer as well to help users understand what hashtags are trending or popular, and to help with typing.

![Screen_Shot_2020-05-25_at_11.51.24_AM](/uploads/28c3e39367ef679224aab0a06107565e/Screen_Shot_2020-05-25_at_11.51.24_AM.png)

Story points: 1.0
Add direct unsubscribe to email footer

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

(Summarize the bug encountered concisely)

### Steps to reproduce

Send an email, try unsub directly.

### Platform information 

Platform agnostic.

### What is the current *bug* behavior?

Users can't unsub with the new footer, some users have usernames with characters in them that are not encoded and break the url, thus cant unsub.

### What is the expected *correct* behavior?

It should unsubscribe all accounts from emails for the address.
Users should be able to unsub if they have non-standard characters in their names

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 3.0
Composer text body is appearing behind rich-embed.

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

Composer text body is appearing behind rich-embed.

### Steps to reproduce

1. Take a youtube video
2. Type into composer https://www.youtube.com/watch?v=_ncWbyqINcYasdasdasd
3. Try to enter a post - you can't.

### Platform information 

Replicated on Firefox.

### What is the current *bug* behavior?

Can't post, the text area is hidden.

### What is the expected *correct* behavior?

Should see the text area under the rich-embed

### Relevant logs and/or screenshots

![image](/uploads/702b359844475f71a9ac999bde1d367e/image.png)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 2.0
Safari upload issue

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

https://www.minds.com/newsfeed/1110149539545145344?focusedCommentUrn=urn:comment:1110149539545145344:0:0:0:1110235589262401536

DreamPondTX

> Day two of Minds upgrade and still can't upload vids. iMac Safari, Click the "+" then "upload". The mp4 files show up but are not highlighted (even mp4 files that were previously uploaded are not highlighted) Minds will not allow them to be selected.

### Steps to reproduce

Presumably, try to upload an MP4 using Safari.

### Platform information 

Safari, seems to be reported on Macs multiple places - unsure if it applies to mobile / other OS.

### What is the current *bug* behavior?

User cant upload - they're greyed out.

### What is the expected *correct* behavior?

Should be able to upload MP4s

### Relevant logs and/or screenshots

![image](/uploads/3dd92a75f72ab6fe51c06a2b1d5b74fe/image.png)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Stop sending old ban email for strikes

After testing our strike process and giving a test account three strikes for spam, I received two of our old ban email, which should no longer be sent out. I should only receive the new ban email

![Screen_Shot_2020-05-18_at_4.11.13_PM](/uploads/2b364aba1f86f43f2867ead7ba3cc6ed/Screen_Shot_2020-05-18_at_4.11.13_PM.png)

![Screen_Shot_2020-05-18_at_4.11.08_PM](/uploads/40cac8a89130f9d115864ffd15bbf2d1/Screen_Shot_2020-05-18_at_4.11.08_PM.png)

Story points: 1.0
Canary onboarding landing page is old discovery, should be newsfeed

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

When you create an account with staging cookie enabled for Canary, when you finish onboarding you land on https://www.minds.com/newsfeed/global/top. You should land on https://www.minds.com/newsfeed/subscriptions.

### Steps to reproduce

1. Create account
2. Complete onboarding
3. See landing page

### Platform information 

Macbook, chrome

### What is the current *bug* behavior?

See summary

### What is the expected *correct* behavior?

See summary

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Add Boost option to all posts

## Goal

- Enable more boosting opportunities. (Increase boosts.)
- Enable Minds team to promote good content.

## What needs to be done

Currently, the option to boost a post appears only on posts that you own.

For this change, we want to add the option to boost from any post.

## QA

<!---
Consideration is given to how the issue will be demoed and tested prior to being deployed
--->


## UX/Design

See acceptance criteria

## Personas

- Minds staff

## Experiments

n/a

## Acceptance Criteria

- [ ] The option to boost posts appears on all activity posts, not just ones yours.
- [ ] The option should appear in the dropdown menu if it is not your post

## Definition of Ready Checklist

- [ ] Definition Of Done (DoD)
- [ ] Acceptance criteria
- [ ] Weighted
- [ ] QA
- [ ] UX/Design
- [ ] Personas
- [ ] Experiments

Story points: 2.0
Search history issues

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

Two issues:

1. Clicking on a search history item takes you to the old discovery results page, should take you to the new search results page

2. Clicking on an auto-suggested search channel is not populating search history, but it should

### Steps to reproduce

1. Click on a search history item in canary mode and see where it takes you

2. Search for @ottman and click his name from the suggestions, notice it does not populate his name in your search history


### Platform information 

Canary mode, chrome, web

### What is the current *bug* behavior?

See steps to reproduce 

### What is the expected *correct* behavior?

see steps to reproduce

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

Story points: 1.0
Create a feature flags for reading and reading ES clusters

## Overview
We need to be able to run our existing and new ElasticSearch clusters in parallel. All flags will be off by default with the `es7-dualwrite` flag enabled when our new cluster is running. 

**The _type field should not be sent to ES7.**.

The lower level **Data\ElasticSearch\Client** should be able to support all these actions.

## Feature flags
- [ ] `es7-read` (all reads will happen on ES7 only)
- [ ] `es7-write` (all writes will happen on ES7 only)
- [ ] `es7-dualwrite` (writes will happen on ES6 and ES7)

Story points: 1.0
Email confirmation on account creation

When a new user signs up, send them an email with a hashcode. The email should use a queue and an email event.

The hashcode should be a the user's guid and a timestamp.

The user account record in cassandra should contain the date the verification time stamp was sent.

When the user clicks the verification link with an email, the router should validate the hash with the user id and the timestamp. If the user clicked the URL within 48 hours, the hash is valid. The user's record should be updated with a "validated_at" timestamp and the User entity should expose an "isValidated()" function.

The 48 hours should be a default value in editable by helm / settings.php

Currently, we send out two emails after 2 hours of user signup. That mechanism should be replaced by this email which sends immediately. When they verify their email, then we can send either welcome_complete or welcome_incomplete based on their onboarding status

Follow the "Welcome_incomplete" template for now and use the existing header and footer structure, but change the text to:

```

@name,

Please take a moment to validate your email address. This helps us prevent spam and ensure users are real. Click this link and we'll know it's you.

<link and call to action button like the other template.>

Thanks,

The Minds Team

```

Be sure to provide the tracking information so we can identify the success of this email.

- [ ] Send a verification hash email through the queue
- [ ] Use the existing email template and events mechanism.
- [ ] Extend the router to parse and validate the url clicked within a configurable value of 48 hours
- [ ] Replace the welcome emails with this one that sends immediately
- [ ] Send them the welcome_complete or welcome_incomplete on verficiation based on their onboarding progress
- [ ] Extend the commandline tool to allow easy testing of the email
- [ ] Write end to end tests for the events
- [ ] Provide phpunit tests for the new email and router callback

Story points: 8.0
Video section missing for user

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

The video (media/video) section of this user (https://www.minds.com/LadySarahRose/) is missing.

### Steps to reproduce

1. Go to 'video' section of user
2. No videos

### Relevant logs and/or screenshots

https://www.minds.com/newsfeed/1050574845545676800

Story points: 1.0
Implement live updating vote counters on posts

<!---
Please read this!

The Definition of Ready (DoR) can be found at https://developers.minds.com/docs/handbook/how-we-work/#definition-of-ready-dor

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "Type::Feature" label and verify the feature you're about to submit isn't a duplicate.
--->

## Goal

<!---
Clearly outline the goal of the issue and why we are doing it
--->

Implement live updating metrics on posts to increase real time engagement

## What needs to be done

<!---
Clearly detail what needs to be done to achieve the goal set out above
--->

- Subscribe to socket.io topic of entity
- Pulsar subscription to push to socket.io entity topic

## QA

<!---
Consideration is given to how the issue will be demoed and tested prior to being deployed
--->

Yes, metrics update

## UX/Design

<!---
Sufficient wireframes have been presented and understood by the development team. Full mockups are not required and re-usable components are encouraged.
--->

N/A

## Personas

<!---
Who does this user impact and why (optional)
--->

Consumers

## Experiments

<!---
Experiments are not required, but it should be made clear if one is expected. If experiments are required, the hypothesis should be outlined.
--->

Yes. 

## Acceptance Criteria

<!--
Everyone should be able to understand what is expected to be delivered
--->

- [ ] Frontend to subscribe to metric updates
- [ ] Rolling animation
- [ ] Backend to emit metric update
- [ ] Spec tests

## Definition of Ready Checklist

- [x] Definition Of Done (DoD)
- [x] Acceptance criteria
- [ ] Weighted
- [x] QA
- [x] UX/Design
- [x] Personas
- [ ] Experiments

Story points: 8.0
Add "Custom Support" to Pro marketing / upgrade pages

## Pro marketing page

In the "Build your own website" panel, add a bullet that reads:

"Custom support from the Minds team"

- [x] Add bullet to this page https://www.minds.com/pro

## Upgrades marketing page

Add "Custom support" as a bullet under the Pro panel.

- [x] add bullet top this page https://www.minds.com/upgrades under upgrade options

Story points: 2.0
Images not being indexed on save

Regression caused by 06a5be9d4fd491cd324ab06c21840ac27bc783ac

This is a pretty serious issue as no images uploaded since November 19th (when this went live) have been indexed. We will need to prepare an sync script to go over all activity posts since then and reindex. @xander-miller please add this check to your smoke tests. 

### Steps to replicate
1) Upload an image
2) Go to images filter on channel feed
3) Image not visible
4) Go to image full view (/media/10...) via modal/activity
5) Edit
6) Index still not triggered

### Solution
Removing the newly introduced `__sleep` function resolved.

Story points: 1.0
Mechanism for Boosts to be requested and integrated into an existing feed

This will be an implementation/extension of the Feed class that was introduced for Boost Campaign refactoring work.

NB: Needs that work to be cherry-picked into master for this work to be based off.

- [ ] Remove `m-featured-content` and dependency on FeaturedContentService
- [ ] Place in boosts from backend api 

### Dev notes

- Core/Feeds/Top/Manager
- Boosts to be placed inside of `FeedSyncEntity`
- Benefit of this is changing boosts slots from single backend location

Story points: 32.0
posts by NSFW tagged channels showing uncovered in discovery, also "mature content" prompt is not showing

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

Channels that have an NSFW tag are showing up unmasked in discovery.
Also when you visit the channel there is no "MATURE CONTENT" prompt.
https://www.minds.com/hismith/

verified in chrome and firefox, both admin and non admin accounts.
noticed 11/14/2019

### Steps to reproduce

1. Click the above link
2. Observe no mature warning
3. Try find the post in discovery

### Platform information 

Cross-platform web.

### What is the current *bug* behavior?

mature content warning does not show and nsfw tagged channels showing in discoery

### What is the expected *correct* behavior?

mature content warning should show and nsfw tagged channels should only show up with nsfw filters disabled.

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

(If you can, link to the line of code that might be responsible for the problem)

/label ~"T \- Bug" ~"S \- Triage:new" 


Story points: 6.0
Auto-complete missing used tags

<!---
Please read this!

Before opening a new issue, make sure to search for keywords in the issues
filtered by the "T - Bug" label and verify the issue you're about to submit isn't a duplicate.
--->

### Summary

Hashtags like #RonPaulSupporters are used a reasonable amount on the site but do not show up in suggested hashtags while typing.

https://www.minds.com/newsfeed/1039586447781003264?focusedCommentUrn=urn:comment:1039586447781003264:1039650621578424320:0:0:1041120858915094528

### Steps to reproduce

1. Type #RonPaulS
2. See it gets cut off when you type the 'S'.

### Platform information 

Cross-platform web.

### What is the current *bug* behavior?

Auto-complete window gives up.

### What is the expected *correct* behavior?

It should keep searching for hashtags.

### Relevant logs and/or screenshots

(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)

### Possible fixes

I think this could be one of two things; down to length of the tag, or maybe some runner job needs running to update auto-complete.

Story points: 4.0
Reduce resource allocation of ECS containers

Over 24 hours:

Memory never exceeds 50%. (5120Mb / 10240Mb)
![Screenshot_2019-11-06_at_15.27.48](/uploads/ea5d0b1ffc6f64c2047f4224342ff018/Screenshot_2019-11-06_at_15.27.48.png)

CPU never exceeds 30%. (1,706 / 5120 uCpus)
![Screenshot_2019-11-06_at_15.28.06](/uploads/8a493f4a04d6dfa43e933f9c651deb63/Screenshot_2019-11-06_at_15.28.06.png)

## Proposal

- [ ] Experiment with reduce all docker resource allocations by 30%/

Story points: 2.0
Error: Call to a member function getGuid() on null

Sentry Issue: [ENGINE-R](https://sentry.io/organizations/minds-inc/issues/1177510374/?referrer=gitlab_integration)

```
Error: Call to a member function getGuid() on null
  File "/Controllers/api/v2/moderation/appeals.php", line 28, in Minds\Controllers\api\v2\moderation\appeals::get
    'owner_guid' => Core\Session::getLoggedInUser()->getGuid(),
  File "/Api/Factory.php", line 90, in Minds\Api\Factory::build
    return $handler->$method($pages);
  File "/Controllers/api/api.php", line 76, in Minds\Controllers\api\api::get
    return Factory::build($pages, $this->request, $this->response);
  File "/Core/Router.php", line 157, in Minds\Core\Router::route
    return $handler->$method($pages);
  File "/index.php", line 9
    $router->route();
```

Story points: 2.0
Add ability to use "ordered list" and "unordered list" in blog post editor

Suggestion: Add ability to use "ordered list" and "unordered list" in blog post editor

![Screen_Shot_2019-11-01_at_9.38.59_AM](/uploads/e9c61c57611506efcf175f954efcf5ef/Screen_Shot_2019-11-01_at_9.38.59_AM.png)

Story points: 1.0
Extract the logic that records views out of the View API

The functionality that verifies and records a view for a boost (and then triggers lifecycle events) is hidden away inside `v2/analytics/views` api controller alongside the functionality for recording entity/activity views. This boost functionality needs to be extracted and implemented within `Core\Boost` namespace with either a common `View` interface or extending a View abstract and then implement the concrete boost view functionality.

Story points: 3.0