Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
W
wechatapp.shangjiadao.com
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wangxuelai
wechatapp.shangjiadao.com
Commits
db646ab8
Commit
db646ab8
authored
Feb 12, 2020
by
ltz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
详情优化
parent
c6b3715d
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
388 additions
and
224 deletions
+388
-224
index.wxml
business/pages/unlockclocksituation/index.wxml
+7
-2
index.wxss
business/pages/unlockclocksituation/index.wxss
+16
-1
constants.js
constants/constants.js
+4
-4
icon_click.gif
images/2c/clockitemv2/icon_click.gif
+0
-0
takewebsite_bg.png
images/2c/clockitemv2/takewebsite_bg.png
+0
-0
index.wxml
src/components/clockitemv2/index.wxml
+43
-115
index.wxss
src/components/clockitemv2/index.wxss
+80
-83
index.wxss
src/pages/calendarthemeindex/index.wxss
+1
-1
newindex.js
src/pages/clockdetail/newindex.js
+45
-4
newindex.wxml
src/pages/clockdetail/newindex.wxml
+36
-5
newindex.wxss
src/pages/clockdetail/newindex.wxss
+151
-4
index.wxss
src/pages/growthrecord/index.wxss
+2
-2
index.wxss
src/pages/morethemeindex/index.wxss
+1
-1
index.wxss
src/pages/papersquare/index.wxss
+1
-1
index.wxss
src/pages/themeindex/index.wxss
+1
-1
No files found.
business/pages/unlockclocksituation/index.wxml
View file @
db646ab8
...
...
@@ -11,8 +11,13 @@
</view>
<view class="right">
<view class="nickname">{{item.school_student.formal_school_student && item.school_student.formal_school_student.name?item.school_student.formal_school_student.name:item.school_student.nickname}}</view>
<view class="time">{{item.min_created_at}} 加入</view>
<view class="num">已闯{{item.unlock_subject_count}}关</view>
<!--<view class="time">{{item.min_created_at}} 加入</view>-->
<view class="num">
<view class="item">已闯{{item.unlock_subject_count}}关</view>
<view class="item">分享{{item.unlock_subject_count}}次</view>
<view class="item">带来{{item.unlock_subject_count}}人</view>
</view>
<view class="mobile">手机号:{{item.school_student.formal_school_student.mobile? item.school_student.formal_school_student.mobile: '-'}}</view>
</view>
<view class="status {{item.is_formal_student?'status2':'status1'}}">{{item.is_formal_student?'在读':'非在读'}}</view>
</view>
...
...
business/pages/unlockclocksituation/index.wxss
View file @
db646ab8
...
...
@@ -64,10 +64,25 @@ page{
color: #ADADAD;
padding-top: 10rpx;
}
.list-box .list-item .right .num{
padding-top: 12rpx;
display: flex;
align-items: center;
}
.list-box .list-item .right .num .item{
padding-right: 30rpx;
white-space: nowrap;
font-size: 22rpx;
color: #ADADAD;
padding-top: 20rpx;
}
.list-box .list-item .right .num .item:last-of-type{
padding-right: 0;
}
.list-box .list-item .right .mobile{
font-size: 22rpx;
color: #ADADAD;
padding-top: 17rpx;
}
.status{
width: 114rpx;
...
...
constants/constants.js
View file @
db646ab8
export
default
{
imageRoot
:
'https://cdn.img.shangjiadao.cn/qingxiao/daka/images/'
,
host
:
'https://qxapi.qingxiao.online/daka'
,
host2
:
'https://wx.m.shangjiadao.cn'
,
//
host: 'https://qxapi.qingxiao.online/daka',
//
host2: 'https://wx.m.shangjiadao.cn',
storageVersion
:
'5.0'
,
imageVersion
:
'20200117'
,
//
host: 'https://clock.wp53.cn',
//
host2: 'https://test.wp53.cn',
host
:
'https://clock.wp53.cn'
,
host2
:
'https://test.wp53.cn'
,
appId
:
'wxc1246ea029394785'
,
miniProgram
:
{
clock
:
'wxdeee20e52a1fd7ee'
...
...
images/2c/clockitemv2/icon_click.gif
0 → 100644
View file @
db646ab8
28.7 KB
images/2c/clockitemv2/takewebsite_bg.png
0 → 100644
View file @
db646ab8
8.5 KB
src/components/clockitemv2/index.wxml
View file @
db646ab8
This diff is collapsed.
Click to expand it.
src/components/clockitemv2/index.wxss
View file @
db646ab8
...
...
@@ -61,11 +61,9 @@
}
.sign-item {
padding: 24rpx
38rpx
;
padding: 24rpx
27rpx 0
;
background-color: #fff;
position: relative;
/* overflow: hidden; */
border-bottom: 1px solid rgba(236, 236, 236, 1);
}
.bindmask{
width: 100%;
...
...
@@ -302,10 +300,10 @@
}
.mediacontent .mediabox .bigimgbox.optionc .imgbox .img {
width: 20
2
rpx;
height: 20
2
rpx;
width: 20
0
rpx;
height: 20
0
rpx;
display: block;
border-radius:
8
rpx;
border-radius:
10
rpx;
overflow: hidden;
}
...
...
@@ -429,14 +427,14 @@
}
.mediacontent .mediabox .bigimgbox.optionc .imgbox {
width: 20
2
rpx;
width: 20
0
rpx;
}
.mediacontent .mediabox .bigimgbox.optionc {
width: 20
2
rpx;
width: 20
0
rpx;
float: left;
margin-right:
8
rpx;
margin-bottom:
8
rpx;
margin-right:
10
rpx;
margin-bottom:
10
rpx;
position: relative;
}
...
...
@@ -444,52 +442,32 @@
position: relative;
}
/*
浏览量+
点赞评论转发 */
/* 点赞评论转发 */
.operate-box {
display: flex;
/*
display: flex;
align-items: center;
justify-content: space-between;
justify-content: space-between; */
position: relative;
z-index: 10;
}
.operate-box .sharetipsicon {
width: 250rpx;
height: 90rpx;
position: absolute;
right: 0;
top: -60rpx;
z-index: 10;
}
.operate-box .view-num {
font-size: 22rpx;
color: #737373;
}
.operate-box .opt-box {
width: 100%;
display: flex;
align-items: center;
}
.operate-box .opt-box .btn {
padding: 8rpx 0 20rpx 0;
flex: 1;
padding: 20rpx 40rpx;
justify-content: center;
display: flex;
align-items: center;
position: relative;
margin-right: 30rpx;
}
.operate-box .opt-box .fingureup-btn {
justify-content: flex-start;
position: relative;
z-index: 10;
padding-left: 0;
}
.operate-box .opt-box .fingureup-btn .fingureup-animation-wrapper {
background: url('https://cdn.img.shangjiadao.cn/qingxiao/daka/images/2c/clockitemv2/web_heart_animation.png');
background-position: left;
...
...
@@ -515,69 +493,68 @@
-webkit-animation-timing-function: steps(28);
animation-timing-function: steps(28);
background-position: right;
}
}
.operate-box .opt-box .share-btn {
justify-content: flex-end;
}
.operate-box .opt-box .btn:last-of-type {
margin-right: 0;
}
.operate-box .opt-box .btn .iconimg {
width: 40rpx;
height: 38rpx;
margin-right: 10rpx;
display: block;
}
.operate-box .opt-box .btn .fingureuplike {
width: 28rpx;
height: 27rpx;
}
.operate-box .opt-box .btn .messageconment {
width: 32rpx;
height: 28rpx;
}
.operate-box .opt-box .btn .icon-share {
width: 44rpx;
height: 34rpx;
}
.operate-box .opt-box .btn .btnname {
color: #
737373
;
color: #
959595
;
font-size: 22rpx;
letter-spacing: 2rpx;
line-height: 1;
/*
line-height: 1;
position: relative;
left: -50rpx;
left: -50rpx; */
}
.operate-box .opt-box .btn .sharetipsicon {
width: 250rpx;
height: 90rpx;
position: absolute;
right: 0;
top: -60rpx;
z-index: 10;
}
.operate-box .opt-box .btn .btnname.active {
/* color: #FF6161; */
}
.detail-operate-box {
padding: 32rpx 0;
}
.detail-operate-box .opt-box .btn .iconimg {
/* width: 50rpx;
height: 44rpx; */
.detail-operate-box{
padding: 30rpx 0;
border-bottom: none;
}
.detail-operate-box .opt-box .btn .icon-share {
/* width: 56rpx;
height: 56rpx; */
.detail-operate-box .opt-box {
display: flex;
justify-content: center;
}
.detail-operate-box .opt-box .btn .btnname {
font-size: 28rpx;
.detail-operate-box .opt-box .btn{
width: 163rpx;
height: 63rpx;
background: #fff;
border: 1px solid rgba(207,207,207,1);
border-radius: 32rpx;
display: flex;
align-items: center;
justify-content: center;
margin: 0 17rpx;
padding: 0;
}
.expand-content {
text-align: left;
padding-bottom: 18rpx;
...
...
@@ -665,11 +642,26 @@
/* 点赞、老师回复、私密点评 */
.teacher-opencomment-box {
background:
rgba(254, 251, 234, 1)
;
border: 1px solid rgba(2
55, 245, 185
, 1);
background:
#F7F7F9
;
border: 1px solid rgba(2
21, 221, 221
, 1);
border-radius: 10rpx;
position: relative;
padding-top: 56rpx;
}
.teacher-opencomment-box .box-label{
width: 140rpx;
height: 50rpx;
background: #FFD146;
border-radius: 10rpx 0;
display: flex;
align-items: center;
justify-content: center;
font-size: 24rpx;
color: #000;
position: absolute;
left: 0;
top: 0;
}
.teacher-opencomment-itembox {
padding: 0 16rpx 0 24rpx;
/* border-bottom: 1px solid rgba(0,0,0,0.05); */
...
...
@@ -678,8 +670,6 @@
.teacher-opencomment-itembox.teacher-comment-header-box.fingureupbox {
margin-bottom: 0;
/* padding-bottom: 10rpx; */
padding: 0;
white-space: initial;
}
...
...
@@ -722,11 +712,9 @@
.teacher-comment-header-box .fingure-count {
color: #6C7A97;
font-size: 24rpx;
font-weight: 500;
font-size: 26rpx;
letter-spacing: 2rpx;
line-height: 42rpx;
font-weight: bold;
z-index: 2;
}
...
...
@@ -860,9 +848,7 @@
.teacher-opencomment-box .teacher-commnet-text {
font-size: 26rpx;
font-family: PingFang SC;
font-weight: 400;
color: rgba(237, 124, 0, 1);
color: #545454;
word-break: break-all;
line-height: 44rpx;
/* justify-content: flex-start;
...
...
@@ -1399,11 +1385,22 @@
margin: 0 10rpx 10rpx 0rpx;
}
.detail-comment-content {}
.detail-comment-content {
padding: 0 27rpx;
}
.detail-comment-content .box-title{
font-size: 24rpx;
color: #565656;
padding-bottom: 28rpx;
border-bottom: 1px solid rgba(236, 236, 236, 1);
font-weight: bold;
line-height: 1;
}
.detail-comment-content .commen-comment-box{
padding: 20rpx 0;
}
.detail-comment-content .response-item {
border-bottom: 1px solid rgba(0, 0, 0, .05);
padding: 14rpx;
padding: 10rpx 0;
}
.detail-comment-content .response-item:last-of-type {
...
...
@@ -1412,7 +1409,7 @@
.detail-comment-content .response-item .response-info {
display: flex;
padding-bottom:
24
rpx;
padding-bottom:
10
rpx;
}
.detail-comment-content .response-item .response-info .advatar {
...
...
@@ -1489,7 +1486,7 @@
}
.teacherstudent-comment-box .response-item {
line-height:
1
;
line-height:
39rpx
;
padding-bottom: 15rpx
}
...
...
@@ -1667,7 +1664,7 @@
}
.score-box {
/* margin-bottom: 24rpx; */
padding: 20rpx 0
}
.score-temp-list-box {
...
...
src/pages/calendarthemeindex/index.wxss
View file @
db646ab8
...
...
@@ -1252,7 +1252,7 @@ page {
@import "../../../style/radio.wxss";
.clock-list .clock-item {
/* border-bottom: 15rpx solid rgba(0, 0, 0, 0.05) */
border-bottom: 15rpx solid rgba(0, 0, 0, 0.05)
}
.clock-list .clock-item:last-of-type {
...
...
src/pages/clockdetail/newindex.js
View file @
db646ab8
...
...
@@ -32,6 +32,7 @@ import {
}
from
'../../../utilities/index.js'
;
import
{
unlockmodesdetail
,
modeStudent
}
from
'../../../service/customer/morethemeindex.js'
;
import
{
commonclock
...
...
@@ -50,7 +51,9 @@ import {
getSchoolDetail
}
from
'../../../service/customer/schoolindex.js'
;
import
regexp
from
'../../../constants/regexp.js'
;
import
{
behaviorLog
}
from
'../../../service/customer/staticlog.js'
;
var
app
=
getApp
();
Page
({
/**
...
...
@@ -139,6 +142,7 @@ Page({
clockPage
:
1
,
clockPerPage
:
5
,
clockGetting
:
false
,
studentsList
:
[],
//打卡学员头像列表
},
/**
...
...
@@ -189,7 +193,6 @@ Page({
})
}
})
},
queryActivtySchoolInfo
(
sid
)
{
const
visitor
=
LocalStorage
.
getItem
(
'visitor'
);
...
...
@@ -304,6 +307,26 @@ Page({
})
},
200
)()
},
// 获取打卡学员头像列表
getModeStudent
()
{
let
type
=
this
.
data
.
clock
.
subject_type
;
console
.
log
(
'type'
,
type
);
let
params
=
{};
if
(
type
==
3
){
params
=
{
mode_id
:
this
.
data
.
tid
}
}
else
{
params
=
{
subject_id
:
this
.
data
.
tid
}
}
modeStudent
(
params
).
then
((
res
)
=>
{
const
{
code
,
data
}
=
res
;
if
(
code
==
200
)
{
this
.
setData
({
studentsList
:
data
.
list
.
splice
(
0
,
9
),
})
}
})
},
closeAd
()
{
this
.
setData
({
adShow
:
false
...
...
@@ -464,14 +487,16 @@ Page({
id
:
data
.
class_id
,
sid
:
data
.
school_id
,
hasData
:
true
,
tid
:
data
.
subject_id
//
tid: data.subject_id
},
()
=>
{
console
.
log
(
this
.
data
.
clock
,
'clock'
)
this
.
queryActivtySchoolInfo
(
this
.
data
.
sid
);
this
.
circleDetailGet
(
data
.
class_id
)
this
.
schoolInfoGet
(
data
.
school_id
)
this
.
randomstudents
()
this
.
oddjobschools
()
this
.
userShow
()
this
.
userShow
();
that
.
getModeStudent
()
})
const
visitor1
=
LocalStorage
.
getItem
(
'visitor'
);
activityLog
({
...
...
@@ -1342,6 +1367,8 @@ Page({
// })
// },
clockListGet
(
type
)
{
// 不获取推荐 所以 return了
return
const
that
=
this
;
const
visitor
=
LocalStorage
.
getItem
(
'visitor'
);
if
(
!
this
.
data
.
hasmore
)
{
...
...
@@ -1738,6 +1765,20 @@ Page({
})
},
goWebsiteindex
(){
const
{
originParams
,
originScene
,
}
=
app
.
globalData
;
behaviorLog
({
source_path
:
`src/pages/clockdetail/newindex:notintrest`
,
source_id
:
this
.
data
.
tid
,
source_type_model
:
1
,
scene
:
originScene
||
''
,
param
:
JSON
.
stringify
({
from
:
originParams
,
source
:
this
.
data
.
options
,
})
})
wx
.
navigateTo
({
url
:
`/src/pages/websiteindex/index?sid=
${
this
.
data
.
sid
}
`
,
})
...
...
src/pages/clockdetail/newindex.wxml
View file @
db646ab8
...
...
@@ -116,10 +116,41 @@
bind:playvideo="playvideo" widthtext="{{true}}"></sjd-media-show>
</view>
</view>
<!-- <view class="line-20" wx:if="{{noUserinfo}}">
</view> -->
<view class="introduce" wx:if="{{clockList.length>0}}" style="{{clockList.length<clockTotal ? 'padding-bottom: 44rpx' : ''}}">
<!-- 我也要打卡 加入 -->
<view class="join-box">
<view class="left">
<block wx:if="{{clock.subject.clock_count}}">
<view class="item-avatar" wx:for="{{studentsList}}" wx:key="index">
<image src="{{filter.imagify(item.avatar)}}"></image>
</view>
</block>
<view class="join-num">{{clock.subject.clock_count || 0}}人加入</view>
</view>
<view class="right">
<view class="title">{{clock.subject.title}}</view>
<view class="line-item">
<view class="num-box">1位好友参与</view>
<view class="btn-join" bindtap="goClock">我也要加入
<image class="icon-arr" src="{{imageRoot}}2b/common/arrowblack.png?{{imageVersion}}"></image>
</view>
</view>
</view>
</view>
<view class="othercheck-box">
<view class="website-box" bindtap="goWebsiteindex">
<view class="title">对此课程不感兴趣?</view>
<view class="subtitle">马上查看学校其他课程,总有一个适合你</view>
<view class="btn">戳此查看</view>
<image class="box-bg" src="{{localImageRoot}}2c/clockitemv2/takewebsite_bg.png?{{imageVersion}}" ></image>
<image class="icon_click" src="{{localImageRoot}}2c/clockitemv2/icon_click.gif?{{imageVersion}}" ></image>
</view>
</view>
<!-- 内容推荐 -->
<view class="introduce" wx:if="{{clockList.length>0}}" style="{{clockList.length<clockTotal ? 'padding-bottom: 44rpx' : ''}}" style="display: none;">
<view class="title">内容推荐</view>
<!-- <view class="line-16"></view> -->
<view class="content">
...
...
@@ -191,7 +222,7 @@
<view class="center animation">立即免费领取试听课</view>
<image class="footer-bg" src="" mode="aspectFit|aspectFill|widthFix" lazy-load="false" binderror="" bindload="" />
</view> -->
<view class="footer-box">
<view class="footer-box"
style="display: none;"
>
<view class="business-box" bindtap="goWebsiteindex">
<image class="" src="{{imageRoot}}2c/papersquare/websitehome.png" mode="aspectFit|aspectFill|widthFix" />机构
</view>
...
...
src/pages/clockdetail/newindex.wxss
View file @
db646ab8
...
...
@@ -69,13 +69,10 @@
animation: leftfade 2s linear forwards;
}
page{
padding-bottom:
14
0rpx;
padding-bottom:
8
0rpx;
}
.container{
/* padding-bottom: 70rpx; */
overflow-x: hidden;
/* background:rgba(247,247,247,1); */
min-height: 100vh;
}
.container .banner-box{
width:100%;
...
...
@@ -746,4 +743,154 @@ page{
-webkit-animation-timing-function: steps(28);
animation-timing-function: steps(28);
background-position: right;
}
.join-box{
width: 702rpx;
height: 184rpx;
border-radius: 10rpx;
background: #FFF6D9;
padding: 25rpx;
display: flex;
align-items: center;
margin: 30rpx auto 50rpx;
line-height: 1;
border: 1px solid #FFF19F;
}
.join-box .left{
width: 144rpx;
min-width: 144rpx;
height: 144rpx;
background: #fff;
position: relative;
margin-right: 20rpx;
border-radius: 10rpx;
padding: 2rpx;
overflow: hidden;
}
.join-box .left .item-avatar{
width: 46rpx;
height: 46rpx;
padding: 2rpx;
float: left;
border-radius: 4rpx;
overflow: hidden;
}
.join-box .left .item-avatar image{
width: 100%;
height: 100%;
border-radius: 4rpx;
}
.join-box .left .join-num{
width: 100%;
height: 72rpx;
position: absolute;
left: 0;
bottom: 0;
background: linear-gradient(0deg,rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%);
opacity: .6;
text-align: center;
font-size: 22rpx;
color: #fff;
font-weight: bold;
padding-top: 40rpx;
}
.join-box .right{
width: 500rpx;
height: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.join-box .right .title{
width: 100%;
font-size: 26rpx;
color: #161515;
font-weight: bold;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.join-box .right .line-item{
display: flex;
align-items: flex-end;
justify-content: space-between;
}
.join-box .right .line-item .num-box{
font-size: 24rpx;
color: #787878;
line-height: 42rpx;
}
.join-box .right .line-item .btn-join{
width: 190rpx;
height: 59rpx;
display: flex;
align-items: center;
justify-content: center;
position: relative;
font-size: 26rpx;
color: #000;
font-weight: bold;
border-radius: 30rpx;
background: #FFC845;
}
.join-box .right .line-item .btn-join .icon-arr{
width: 22rpx;
height: 12rpx;
margin-left: 6rpx;
transform: rotate(90deg);
}
.othercheck-box{
width: 100%;
padding: 48rpx 24rpx 20rpx;
border-top: 20rpx solid #EFEFEF;
}
.othercheck-box .website-box{
width: 100%;
height: 219rpx;
border-radius: 10rpx;
background: #525367;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
line-height: 1;
color: #fff;
position: relative;
}
.othercheck-box .website-box .title{
font-size: 30rpx;
font-weight: bold;
}
.othercheck-box .website-box .subtitle{
font-size: 26rpx;
padding: 25rpx 0;
}
.othercheck-box .website-box .btn{
width: 206rpx;
height: 55rpx;
background:#fff;
border-radius: 28rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 26rpx;
color: #FA5300;
font-weight: bold;
}
.othercheck-box .website-box .box-bg{
width: 680rpx;
height: 154rpx;
position: absolute;
right: 0;
bottom: 0;
}
.othercheck-box .website-box .icon_click{
width: 60rpx;
height: 60rpx;
position: absolute;
left: 400rpx;
bottom: 4rpx;
}
\ No newline at end of file
src/pages/growthrecord/index.wxss
View file @
db646ab8
...
...
@@ -806,10 +806,10 @@ sjd-input-footer .sure{
@import "../../../style/radio.wxss";
.clock-list .clock-item{
/* border-bottom: 15rpx solid #F7F7F9; */
border-bottom: 15rpx solid #F0F0F0;
}
.clock-list .clock-item:last-of-type{
border-bottom: 0;
/* border-bottom: 0; */
}
...
...
src/pages/morethemeindex/index.wxss
View file @
db646ab8
...
...
@@ -1427,7 +1427,7 @@ page{
@import "../../../style/radio.wxss";
.clock-list .clock-item{
/* border-bottom: 15rpx solid rgba(0, 0, 0, 0.05) */
border-bottom: 15rpx solid rgba(0, 0, 0, 0.05)
}
.clock-list .clock-item:last-of-type{
border-bottom: none;
...
...
src/pages/papersquare/index.wxss
View file @
db646ab8
...
...
@@ -920,7 +920,7 @@ page{
}
.clock-list .clock-item{
position: relative;
/* border-bottom: 16rpx solid rgba(238,239,243,1); */
border-bottom: 16rpx solid rgba(238,239,243,1);
}
.clock-list .clock-item:last-of-type{
border-bottom: 0;
...
...
src/pages/themeindex/index.wxss
View file @
db646ab8
...
...
@@ -1066,7 +1066,7 @@ page {
.clock-list {}
.clock-list .clock-item {
/* border-bottom: 15rpx solid rgba(0, 0, 0, 0.05) */
border-bottom: 15rpx solid rgba(0, 0, 0, 0.05)
}
.clock-list .clock-item:last-of-type {
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment