Skip to content
Projects
Groups
Snippets
Help
Sign in / Register
Toggle navigation
Minds Frontend
Project overview
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Locked Files
Issues
804
Merge Requests
54
CI / CD
Security & Compliance
Packages
Wiki
Snippets
Members
Collapse sidebar
Close sidebar
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Minds
Minds Frontend
Compare Revisions
36499dfee0998e418472d1a6d859d64e75174fa3...eba84d39f4f2508db666a7ccbddce194eb798302
Source
eba84d39f4f2508db666a7ccbddce194eb798302
...
Target
36499dfee0998e418472d1a6d859d64e75174fa3
Compare
Commits (6)
(fix): comment counters should be vertically aligned
· 24583f57
Mark Harding
authored
7 hours ago
24583f57
(chore): remove old analytics page for channels - closes engine#1129
· ea78a039
Mark Harding
authored
6 hours ago
ea78a039
(chore): prevent nsfw from using stripe
· e10b954b
Mark Harding
authored
2 hours ago
e10b954b
(fix): bad merge
· cb6d9921
Mark Harding
authored
1 hour ago
cb6d9921
Merge branch 'master' of gitlab.com:minds/front into pro-settings-2163
· 76c5db04
Mark Harding
authored
1 hour ago
76c5db04
(feat): implement payout methods for pro
· eba84d39
Mark Harding
authored
17 minutes ago
eba84d39
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
146 additions
and
12 deletions
+146
-12
src/app/modules/analytics/analytics.module.ts
View file @
eba84d39
...
...
@@ -71,16 +71,7 @@ const routes: Routes = [
path
:
'
analytics
'
,
component
:
AnalyticsComponent
,
children
:
[
{
path
:
''
,
redirectTo
:
'
channel
'
,
pathMatch
:
'
full
'
},
{
path
:
'
channel
'
,
component
:
ChannelAnalyticsComponent
,
children
:
[
{
path
:
''
,
redirectTo
:
'
activity
'
,
pathMatch
:
'
full
'
},
{
path
:
'
activity
'
,
component
:
ChannelGeneralAnalyticsComponent
},
{
path
:
'
reach
'
,
component
:
ChannelReachAnalyticsComponent
},
],
},
{
path
:
''
,
redirectTo
:
'
dashboard/
'
,
pathMatch
:
'
full
'
},
{
path
:
'
admin
'
,
component
:
AdminAnalyticsComponent
,
...
...
This diff is collapsed.
src/app/modules/comments/comment/comment.component.scss
View file @
eba84d39
...
...
@@ -119,7 +119,7 @@
.minds-counter
{
font-size
:
12px
;
line-height
:
16px
;
vertical-align
:
top
;
vertical-align
:
middle
;
}
}
}
...
...
This diff is collapsed.
src/app/modules/pro/settings/settings.component.html
View file @
eba84d39
...
...
@@ -652,6 +652,104 @@
</div>
</div>
</ng-template>
<!-- Payouts -->
<ng-template
ngSwitchCase=
"payouts"
>
<div
class=
"m-shadowboxLayout__body"
>
<div
class=
"m-proSettings__tab--payouts"
formGroupName=
"payouts"
>
<div
class=
"m-proSettings__field--radio hasValidationRow"
>
<div
class=
"m-proSettings__row--label"
>
<label
for=
"domain"
i18n
>
Payout Method
</label>
<m-tooltip
icon=
"help"
><ng-container
i18n
>
Select a payout method below
</ng-container
></m-tooltip
>
</div>
<div
class=
"m-proSettings__row--input"
>
<label
for=
"method_usd"
class=
"m-proSettings__customInputContainer--radio"
i18n
>
USD
<input
type=
"radio"
value=
"usd"
id=
"method_usd"
name=
"method"
formControlName=
"method"
class=
"form-control"
/>
<span
class=
"m-proSettings__customInput--radio"
></span>
</label>
</div>
<div
class=
"m-proSettings__row--input"
>
<label
for=
"method_tokens"
class=
"m-proSettings__customInputContainer--radio"
i18n
>
Minds Tokens
<input
type=
"radio"
value=
"tokens"
name=
"method"
id=
"method_tokens"
formControlName=
"method"
class=
"form-control"
/>
<span
class=
"m-proSettings__customInput--radio"
></span>
</label>
</div>
<div
class=
"m-proSettings__row--input"
>
<label
for=
"method_eth"
class=
"m-proSettings__customInputContainer--radio"
i18n
>
Ether
<input
type=
"radio"
value=
"eth"
name=
"method"
id=
"method_eth"
formControlName=
"method"
class=
"form-control"
/>
<span
class=
"m-proSettings__customInput--radio"
></span>
</label>
</div>
<div
class=
"m-proSettings__row--input"
>
<label
for=
"method_btc"
class=
"m-proSettings__customInputContainer--radio"
i18n
>
Bitcoin
<input
type=
"radio"
value=
"btc"
name=
"method"
id=
"method_btc"
formControlName=
"method"
class=
"form-control"
/>
<span
class=
"m-proSettings__customInput--radio"
></span>
</label>
</div>
</div>
</div>
</div>
</ng-template>
</ng-container>
<ng-container
*ngTemplateOutlet=
"submitButton"
></ng-container>
</form>
...
...
This diff is collapsed.
src/app/modules/pro/settings/settings.component.ts
View file @
eba84d39
...
...
@@ -66,6 +66,12 @@ export class ProSettingsComponent implements OnInit, OnDestroy {
title
:
'
Domain
'
,
subtitle
:
'
Customize your site domain
'
,
},
{
id
:
'
payouts
'
,
title
:
'
Payouts
'
,
subtitle
:
'
Select the currency type you wish you be paid out in. Please note payouts only occur once you have received the equivalent of $100 or greater.
'
,
},
];
settings
:
any
;
...
...
@@ -120,6 +126,9 @@ export class ProSettingsComponent implements OnInit, OnDestroy {
domain
:
[
''
,
Validators
.
required
,
this
.
validateDomain
.
bind
(
this
)],
custom_head
:
[
''
],
}),
payouts
:
this
.
fb
.
group
({
method
:
[
'
usd
'
],
}),
});
constructor
(
...
...
@@ -202,6 +211,9 @@ export class ProSettingsComponent implements OnInit, OnDestroy {
domain
:
settings
.
domain
,
custom_head
:
settings
.
custom_head
,
},
payouts
:
{
method
:
settings
.
payout_method
,
},
});
this
.
setTags
(
settings
.
tag_list
);
...
...
@@ -330,6 +342,7 @@ export class ProSettingsComponent implements OnInit, OnDestroy {
footer_text
:
this
.
form
.
value
.
footer
.
title
,
tag_list
:
this
.
form
.
value
.
hashtags
,
footer_links
:
this
.
form
.
value
.
footer
.
links
,
payout_method
:
this
.
form
.
value
.
payouts
.
method
,
};
await
this
.
service
.
set
(
this
.
settings
,
this
.
user
);
this
.
formToastService
.
success
(
...
...
This diff is collapsed.
src/app/modules/pro/settings/sidebar-menu.default.ts
View file @
eba84d39
...
...
@@ -35,6 +35,10 @@ const sidebarMenu = {
label
:
'
Pro Subscription
'
,
path
:
'
pro
'
,
},
{
id
:
'
payouts
'
,
label
:
'
Payouts
'
,
},
{
id
:
'
:user
'
,
label
:
'
View Pro Channel
'
,
...
...
This diff is collapsed.
src/app/modules/wallet/usd/onboarding/onboarding.component.html
View file @
eba84d39
<div
*ngIf=
"eligible === false"
>
<p>
Due to Stripe's
<a
href=
"https://stripe.com/restricted-businesses"
target=
"_blank"
>
Terms of Use
</a
>
, this feature is currently unavailable for any channel determined to be
not safe for work (NSFW). If you are impacted by Stripe's terms and still
wish to monetize your channel, please consider onboarding to receive
payments in
<a
(click)=
"openBtc()"
>
Bitcoin
</a>
,
<a
routerLink=
"/wallet/tokens/addresses"
>
Ether
</a>
or
<a
routerLink=
"/wallet/tokens/addresses"
>
Minds Tokens
</a>
.
</p>
</div>
<form
*ngIf=
"eligible === true"
(submit)=
"submit()"
[formGroup]=
"form"
#f
="
ngForm
"
...
...
This diff is collapsed.
src/app/modules/wallet/usd/onboarding/onboarding.component.ts
View file @
eba84d39
...
...
@@ -13,6 +13,8 @@ import { Client } from '../../../../services/api';
import
{
requiredFor
,
optionalFor
}
from
'
./onboarding.validators
'
;
import
{
OverlayModalService
}
from
'
../../../../services/ux/overlay-modal
'
;
import
{
WalletUSDTermsComponent
}
from
'
../terms.component
'
;
import
{
Session
}
from
'
../../../../services/session
'
;
import
{
BTCSettingsComponent
}
from
'
../../../payments/btc/settings.component
'
;
@
Component
({
selector
:
'
m-walletUsd__onboarding
'
,
...
...
@@ -22,6 +24,7 @@ export class WalletUSDOnboardingComponent implements OnInit {
form
:
FormGroup
;
inProgress
:
boolean
=
false
;
restrictAsVerified
:
boolean
=
false
;
eligible
:
boolean
;
minds
=
window
.
Minds
;
merchant
:
any
;
...
...
@@ -36,7 +39,8 @@ export class WalletUSDOnboardingComponent implements OnInit {
private
client
:
Client
,
private
cd
:
ChangeDetectorRef
,
private
router
:
Router
,
protected
overlayModal
:
OverlayModalService
protected
overlayModal
:
OverlayModalService
,
private
session
:
Session
)
{}
ngOnInit
()
{
...
...
@@ -70,6 +74,12 @@ export class WalletUSDOnboardingComponent implements OnInit {
this
.
form
.
patchValue
(
this
.
merchant
);
}
if
(
this
.
session
.
getLoggedInUser
().
nsfw
.
length
>
0
)
{
this
.
eligible
=
false
;
}
else
{
this
.
eligible
=
true
;
}
this
.
disableRestrictedFields
();
}
...
...
@@ -180,6 +190,10 @@ export class WalletUSDOnboardingComponent implements OnInit {
this
.
overlayModal
.
create
(
WalletUSDTermsComponent
).
present
();
}
openBtc
()
{
this
.
overlayModal
.
create
(
BTCSettingsComponent
,
{}).
present
();
}
detectChanges
()
{
this
.
cd
.
markForCheck
();
this
.
cd
.
detectChanges
();
...
...
This diff is collapsed.