Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mallapp
Project
Project
Details
Activity
Releases
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
viitto
mallapp
Commits
5ce81878
Commit
5ce81878
authored
Jun 04, 2020
by
罗超
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/viitto/mallapp
parents
f1ce0435
c62d67bf
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
382 additions
and
358 deletions
+382
-358
style11.vue
components/cats/style11.vue
+239
-256
list.vue
components/goods/list.vue
+6
-6
style1.vue
components/goods/style1.vue
+3
-5
style2.vue
components/goods/style2.vue
+3
-3
style3.vue
components/goods/style3.vue
+3
-5
style4.vue
components/goods/style4.vue
+4
-6
style5.vue
components/goods/style5.vue
+3
-3
style6.vue
components/goods/style6.vue
+3
-3
goods.vue
pages/goods/goods.vue
+18
-16
index.vue
pages/order/index/index.vue
+84
-41
search.vue
pages/search/search.vue
+16
-14
No files found.
components/cats/style11.vue
View file @
5ce81878
This diff is collapsed.
Click to expand it.
components/goods/list.vue
View file @
5ce81878
...
@@ -6,16 +6,16 @@
...
@@ -6,16 +6,16 @@
<view
class=
"good-img"
>
<view
class=
"good-img"
>
<image
<image
mode=
"aspectFill"
mode=
"aspectFill"
:src=
"cx.
CoverImage
"
:src=
"cx.
cover_pic
"
style=
"width: 100%; height: 100%;"
style=
"width: 100%; height: 100%;"
/>
/>
</view>
</view>
<view
class=
"good-name"
v-if=
"setting.is_show_goods_name=='1'"
>
{{
cx
.
N
ame
}}
</view>
<view
class=
"good-name"
v-if=
"setting.is_show_goods_name=='1'"
>
{{
cx
.
n
ame
}}
</view>
<view
class=
"good-info"
>
<view
class=
"good-info"
>
<view
class=
"price"
:style=
"
{ color: mainColor }">
<view
class=
"price"
:style=
"
{ color: mainColor }">
¥
{{
cx
.
SellingP
rice
}}
</view>
¥
{{
cx
.
p
rice
}}
</view>
<!-- v-if="setting.is_show_sales_num=='1'" -->
<!-- v-if="setting.is_show_sales_num=='1'" -->
<view
class=
"sell"
>
已售
{{
cx
.
SalesNum
}}
</view>
<view
class=
"sell"
>
{{
cx
.
sales
}}
</view>
<view
v-if=
"setting.is_show_cart=='1'"
class=
"cart"
@
click
.
stop=
"showSkuHandler(cx)"
>
<view
v-if=
"setting.is_show_cart=='1'"
class=
"cart"
@
click
.
stop=
"showSkuHandler(cx)"
>
<u-icon
name=
"cart-o"
size=
"40"
:color=
"mainColor"
/>
<u-icon
name=
"cart-o"
size=
"40"
:color=
"mainColor"
/>
</view>
</view>
...
@@ -65,11 +65,11 @@ export default {
...
@@ -65,11 +65,11 @@ export default {
},
},
methods
:
{
methods
:
{
initConfig
()
{
initConfig
()
{
this
.
setting
=
uni
.
getStorageSync
(
"basedata"
).
mall
.
setting
this
.
setting
=
uni
.
getStorageSync
(
"basedata"
).
setting
},
},
clickHandler
(
item
)
{
clickHandler
(
item
)
{
console
.
log
(
"GoodsId"
,
item
)
console
.
log
(
"GoodsId"
,
item
)
uni
.
navigateTo
({
url
:
'/pages/goods/goods?GoodsId='
+
item
.
I
d
});
uni
.
navigateTo
({
url
:
'/pages/goods/goods?GoodsId='
+
item
.
i
d
});
},
},
showSkuHandler
(
g
)
{
showSkuHandler
(
g
)
{
this
.
sku
=
g
;
this
.
sku
=
g
;
...
...
components/goods/style1.vue
View file @
5ce81878
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
v-for=
"(item, gli) in goodList"
v-for=
"(item, gli) in goodList"
:key=
"gli"
:key=
"gli"
class=
"good-one"
class=
"good-one"
@
click=
"openGood(item
.page_url
)"
@
click=
"openGood(item)"
:style=
"
{
:style=
"
{
border: goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
border: goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
background:
background:
...
@@ -107,10 +107,8 @@ export default {
...
@@ -107,10 +107,8 @@ export default {
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
},
methods
:
{
methods
:
{
openGood
(
url
)
{
openGood
(
item
)
{
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
'/pages/goods/goods?GoodsId='
+
item
.
id
});
url
:
url
});
},
},
showSkuHandler
(
g
){
showSkuHandler
(
g
){
this
.
sku
=
g
this
.
sku
=
g
...
...
components/goods/style2.vue
View file @
5ce81878
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
<u-col
span=
"6"
v-for=
"(item, gli) in goodList"
:key=
"gli"
>
<u-col
span=
"6"
v-for=
"(item, gli) in goodList"
:key=
"gli"
>
<view
<view
class=
"good-two"
class=
"good-two"
@
click=
"openGood"
@
click=
"openGood
(item)
"
:style=
"
{
:style=
"
{
border:
border:
goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
...
@@ -103,8 +103,8 @@ export default {
...
@@ -103,8 +103,8 @@ export default {
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
},
methods
:
{
methods
:
{
openGood
(
e
)
{
openGood
(
item
)
{
console
.
log
(
e
);
uni
.
navigateTo
({
url
:
'/pages/goods/goods?GoodsId='
+
item
.
id
}
);
},
},
},
},
};
};
...
...
components/goods/style3.vue
View file @
5ce81878
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
v-for=
"(item, gli) in goodList"
v-for=
"(item, gli) in goodList"
:key=
"gli"
:key=
"gli"
>
>
<div
class=
"good-three"
@
click=
"openGood(item
.page_url
)"
:style=
"
{
<div
class=
"good-three"
@
click=
"openGood(item)"
:style=
"
{
border:
border:
goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
background:
background:
...
@@ -110,10 +110,8 @@ export default {
...
@@ -110,10 +110,8 @@ export default {
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
},
methods
:
{
methods
:
{
openGood
(
url
)
{
openGood
(
item
)
{
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
'/pages/goods/goods?GoodsId='
+
item
.
id
});
url
:
url
});
},
},
showSkuHandler
(
g
){
showSkuHandler
(
g
){
this
.
sku
=
g
this
.
sku
=
g
...
...
components/goods/style4.vue
View file @
5ce81878
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
class=
"good-four"
class=
"good-four"
v-for=
"(item, gli) in goodList"
v-for=
"(item, gli) in goodList"
:key=
"gli"
:key=
"gli"
@
click=
"openGood(item
.page_url
)"
@
click=
"openGood(item)"
:style=
"
{
:style=
"
{
border: goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
border: goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
background:
background:
...
@@ -99,14 +99,12 @@ export default {
...
@@ -99,14 +99,12 @@ export default {
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
},
methods
:
{
methods
:
{
openGood
(
url
)
{
openGood
(
item
)
{
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
'/pages/goods/goods?GoodsId='
+
item
.
id
});
url
:
url
});
},
},
showSkuHandler
(
g
){
showSkuHandler
(
g
){
this
.
sku
=
g
this
.
sku
=
g
this
.
showSku
=
true
this
.
showSku
=
true
},
},
//格式化价格添加.00
//格式化价格添加.00
// getPrice(value){
// getPrice(value){
...
...
components/goods/style5.vue
View file @
5ce81878
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
>
>
<view
<view
class=
"good-five"
class=
"good-five"
@
click=
"openGood"
@
click=
"openGood
(item)
"
v-for=
"(item, gli) in goodList"
v-for=
"(item, gli) in goodList"
:key=
"gli"
:key=
"gli"
:style=
"
{
:style=
"
{
...
@@ -100,8 +100,8 @@ export default {
...
@@ -100,8 +100,8 @@ export default {
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
},
methods
:
{
methods
:
{
openGood
(
e
)
{
openGood
(
item
)
{
console
.
log
(
e
);
uni
.
navigateTo
({
url
:
'/pages/goods/goods?GoodsId='
+
item
.
id
}
);
},
},
showSkuHandler
(
g
){
showSkuHandler
(
g
){
this
.
sku
=
g
this
.
sku
=
g
...
...
components/goods/style6.vue
View file @
5ce81878
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
class=
"good-four"
class=
"good-four"
v-for=
"(item, gli) in goodList"
v-for=
"(item, gli) in goodList"
:key=
"gli"
:key=
"gli"
@
click=
"openGood"
@
click=
"openGood
(item)
"
:style=
"
{
:style=
"
{
border: goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
border: goodsInfo.goodsStyle == 2 ? '1px solid rgb(226, 226, 226)' : '',
background:
background:
...
@@ -92,8 +92,8 @@ export default {
...
@@ -92,8 +92,8 @@ export default {
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
},
methods
:
{
methods
:
{
openGood
(
e
)
{
openGood
(
item
)
{
console
.
log
(
e
);
uni
.
navigateTo
({
url
:
'/pages/goods/goods?GoodsId='
+
item
.
id
}
);
},
},
},
},
};
};
...
...
pages/goods/goods.vue
View file @
5ce81878
...
@@ -231,7 +231,9 @@ export default {
...
@@ -231,7 +231,9 @@ export default {
isExsitGoods
:
true
,
isExsitGoods
:
true
,
pageTitle
:
"商品详情"
,
pageTitle
:
"商品详情"
,
setting
:{},
setting
:{},
prevPage
:
""
prevPage
:
""
,
//自定义接手传递
opTionObj
:{}
};
};
},
},
components
:
{
components
:
{
...
@@ -241,12 +243,14 @@ export default {
...
@@ -241,12 +243,14 @@ export default {
auth
,
auth
,
},
},
onLoad
(
option
)
{
onLoad
(
option
)
{
this
.
id
=
option
.
id
?
option
.
id
:
46942
;
//40887 59512 46942
console
.
log
(
option
,
'optionnnn'
);
this
.
opTionObj
=
option
;
this
.
id
=
option
.
GoodsId
?
option
.
GoodsId
:
46942
;
//40887 59512 46942
this
.
init
();
this
.
init
();
this
.
mc
=
this
.
$uiConfig
.
mainColor
;
this
.
mc
=
this
.
$uiConfig
.
mainColor
;
this
.
secondary
=
this
.
$uiConfig
.
secondary
;
this
.
secondary
=
this
.
$uiConfig
.
secondary
;
this
.
initPage
();
this
.
initPage
();
this
.
setting
=
uni
.
getStorageSync
(
"basedata"
).
mall
.
setting
this
.
setting
=
uni
.
getStorageSync
(
"basedata"
).
setting
},
},
methods
:
{
methods
:
{
initPage
()
{
initPage
()
{
...
@@ -271,17 +275,16 @@ export default {
...
@@ -271,17 +275,16 @@ export default {
},
},
init
()
{
init
()
{
this
.
loading
=
true
;
this
.
loading
=
true
;
this
.
request
(
this
.
request
2
(
{
{
url
:
""
,
url
:
"
/api/AppletGoods/GetAppletGoodsInfo
"
,
data
:
{
data
:
{
r
:
"api/goods/detail"
,
GoodsId
:
this
.
opTionObj
.
GoodsId
id
:
this
.
id
,
},
},
},
},
(
res
)
=>
{
(
res
)
=>
{
console
.
log
(
res
);
console
.
log
(
res
,
'详情'
);
if
(
res
.
code
==
0
)
{
if
(
res
.
resultCode
==
1
)
{
this
.
g
=
res
.
data
.
goods
;
this
.
g
=
res
.
data
.
goods
;
this
.
g
.
pic_url
.
forEach
((
x
)
=>
{
this
.
g
.
pic_url
.
forEach
((
x
)
=>
{
this
.
imgs
.
push
(
x
.
pic_url
);
this
.
imgs
.
push
(
x
.
pic_url
);
...
@@ -303,6 +306,7 @@ export default {
...
@@ -303,6 +306,7 @@ export default {
this
.
detailContent
=
richtext
;
this
.
detailContent
=
richtext
;
this
.
loading
=
false
;
this
.
loading
=
false
;
this
.
initComments
();
this
.
initComments
();
this
.
initRecommend
();
}
else
{
}
else
{
this
.
isExsitGoods
=
false
;
this
.
isExsitGoods
=
false
;
}
}
...
@@ -343,22 +347,20 @@ export default {
...
@@ -343,22 +347,20 @@ export default {
},
},
(
res
)
=>
{
(
res
)
=>
{
this
.
comments
=
res
.
data
;
this
.
comments
=
res
.
data
;
this
.
initRecommend
();
//
this.initRecommend();
}
}
);
);
},
},
initRecommend
()
{
initRecommend
()
{
this
.
request
(
this
.
request
2
(
{
{
url
:
""
,
url
:
"
/api/AppletGoods/GetAppletGoodsRecommendListForZY
"
,
data
:
{
data
:
{
r
:
"api/goods/new-recommend"
,
RecommendType
:
1
,
goods_id
:
this
.
id
,
type
:
"goods"
,
},
},
},
},
(
res
)
=>
{
(
res
)
=>
{
this
.
recommend
=
res
.
data
.
l
ist
;
this
.
recommend
=
res
.
data
.
L
ist
;
}
}
);
);
},
},
...
...
pages/order/index/index.vue
View file @
5ce81878
...
@@ -8,8 +8,8 @@
...
@@ -8,8 +8,8 @@
<view
style=
"padding: 10px 0; background: #fff;"
>
<view
style=
"padding: 10px 0; background: #fff;"
>
<u-tabs
<u-tabs
:list=
"list"
:list=
"list"
:is-scroll=
"false"
:current=
"current"
:current=
"current"
name=
"Name"
@
change=
"change"
@
change=
"change"
:active-color=
"mainColor"
:active-color=
"mainColor"
bg-color=
"#FFF"
bg-color=
"#FFF"
...
@@ -221,15 +221,7 @@ export default {
...
@@ -221,15 +221,7 @@ export default {
return
{
return
{
pageTitle
:
"我的订单"
,
pageTitle
:
"我的订单"
,
current
:
0
,
current
:
0
,
list
:
[
list
:
[],
{
name
:
"全部"
},
{
name
:
"待付款"
},
{
name
:
"待发货"
},
{
name
:
"待收货"
},
{
name
:
"待评价"
},
// { name: "已完成" },
// { name: "已取消" },
],
mainColor
:
""
,
mainColor
:
""
,
contentHeight
:
0
,
contentHeight
:
0
,
page
:
1
,
page
:
1
,
...
@@ -252,6 +244,17 @@ export default {
...
@@ -252,6 +244,17 @@ export default {
padding
:
"0 30rpx"
,
padding
:
"0 30rpx"
,
},
},
template_message
:
[],
template_message
:
[],
msg
:{
pageIndex
:
1
,
pageSize
:
15
,
OrderId
:
0
,
OrderType
:
0
,
DeliveryMethod
:
0
,
StartTime
:
''
,
EndTime
:
''
,
OrderStatus
:
0
,
OrderNo
:
''
,
},
};
};
},
},
created
()
{
created
()
{
...
@@ -280,8 +283,30 @@ export default {
...
@@ -280,8 +283,30 @@ export default {
this
.
current
=
option
.
status
||
-
1
;
this
.
current
=
option
.
status
||
-
1
;
this
.
loading
=
true
;
this
.
loading
=
true
;
this
.
init
();
this
.
init
();
this
.
getOrderStatus
();
},
},
methods
:
{
methods
:
{
getOrderStatus
()
{
this
.
request2
(
{
url
:
'/api/order/GetOrderStatusEnumList'
,
data
:
{}
},
res
=>
{
uni
.
hideNavigationBarLoading
();
if
(
res
.
resultCode
==
1
){
this
.
isloading
=
false
;
this
.
list
=
res
.
data
;
let
obj
=
{
Name
:
'全部'
,
Id
:
0
,
}
this
.
list
.
unshift
(
obj
)
console
.
log
(
"this.list"
,
this
.
list
)
}
}
);
},
redirectToDetail
(
id
)
{
redirectToDetail
(
id
)
{
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
"/pages/order/order-detail?id="
+
id
,
url
:
"/pages/order/order-detail?id="
+
id
,
...
@@ -315,43 +340,61 @@ export default {
...
@@ -315,43 +340,61 @@ export default {
});
});
},
},
change
(
index
)
{
change
(
index
)
{
this
.
current
=
index
;
this
.
current
=
index
;
this
.
page
=
1
;
this
.
msg
.
OrderStatus
=
this
.
list
[
index
].
Id
;
this
.
g
=
[];
this
.
msg
.
pageIndex
=
1
;
this
.
loading
=
true
;
this
.
g
=
[];
this
.
init
();
this
.
loading
=
true
;
this
.
init
();
},
},
init
()
{
init
()
{
this
.
isover
=
false
;
this
.
isover
=
false
;
let
h
=
this
.
apiheader
();
let
h
=
this
.
apiheader
();
this
.
request
(
this
.
request2
(
{
{
url
:
""
,
url
:
'/api/AppletOrder/GetAppletGoodsMyOrderPageList'
,
header
:
h
,
data
:
this
.
msg
data
:
{
},
r
:
"api/order/list"
,
res
=>
{
status
:
this
.
current
,
uni
.
hideNavigationBarLoading
();
page
:
this
.
page
,
if
(
res
.
resultCode
==
1
){
},
this
.
loading
=
false
;
},
this
.
g
=
this
.
g
.
concat
(
res
.
data
.
pageData
);
(
res
)
=>
{
this
.
page_count
=
res
.
data
.
page_count
;
this
.
loading
=
false
;
if
(
this
.
page_count
==
1
)
{
this
.
g
=
this
.
g
.
concat
(
res
.
data
.
list
);
this
.
isover
=
true
;
this
.
template_message
=
res
.
data
.
template_message
;
}
this
.
page_count
=
res
.
data
.
pagination
.
page_count
;
}
if
(
this
.
page_count
==
1
)
{
}
this
.
isover
=
true
;
);
}
// this.request(
}
// {
);
// url: "",
// header: h,
// data: {
// r: "api/order/list",
// status: this.current,
// page: this.page,
// },
// },
// (res) => {
// this.loading = false;
// this.g = this.g.concat(res.data.list);
// this.template_message = res.data.template_message;
// this.page_count = res.data.pagination.page_count;
// if (this.page_count == 1) {
// this.isover = true;
// }
// }
// );
},
},
lower
(
e
)
{
lower
(
e
)
{
if
(
this
.
page
<
this
.
page_count
)
{
if
(
this
.
msg
.
pageIndex
<
this
.
page_count
)
{
this
.
page
++
;
this
.
msg
.
pageIndex
++
;
this
.
init
();
this
.
init
();
}
else
{
}
else
{
this
.
isover
=
true
;
this
.
isover
=
true
;
}
}
},
},
cancel
(
e
,
index
)
{
cancel
(
e
,
index
)
{
this
.
showModal
=
true
;
this
.
showModal
=
true
;
...
...
pages/search/search.vue
View file @
5ce81878
...
@@ -166,18 +166,17 @@ export default {
...
@@ -166,18 +166,17 @@ export default {
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
},
methods
:
{
methods
:
{
//为你推荐
initRecommend
()
{
initRecommend
()
{
this
.
request
(
this
.
request
2
(
{
{
url
:
""
,
url
:
"
/api/AppletGoods/GetAppletGoodsRecommendListForZY
"
,
data
:
{
data
:
{
r
:
"api/goods/new-recommend"
,
RecommendType
:
1
goods_id
:
0
,
type
:
"goods"
,
},
},
},
},
(
res
)
=>
{
(
res
)
=>
{
this
.
recommedGoods
=
res
.
data
.
l
ist
;
this
.
recommedGoods
=
res
.
data
.
L
ist
;
}
}
);
);
},
},
...
@@ -249,20 +248,23 @@ export default {
...
@@ -249,20 +248,23 @@ export default {
this
.
isover
=
false
;
this
.
isover
=
false
;
this
.
loading
=
true
;
this
.
loading
=
true
;
this
.
showLoading
=
this
.
page
!=
1
;
this
.
showLoading
=
this
.
page
!=
1
;
this
.
request
(
this
.
request
2
(
{
{
url
:
""
,
url
:
"
/api/AppletGoods/GetAppletGoodsPageListForZY
"
,
data
:
{
data
:
{
r
:
"api/default/goods-list"
,
pageIndex
:
1
,
page
:
this
.
page
,
pageSize
:
20
,
keyword
:
this
.
searchKey
,
Name
:
this
.
searchKey
,
sign
:
""
,
GoodsType
:
0
,
CategoryIds
:
''
,
OrderBy
:
1
},
},
},
},
(
res
)
=>
{
(
res
)
=>
{
console
.
log
(
res
,
'搜索ress'
);
this
.
showLoading
=
true
;
this
.
showLoading
=
true
;
this
.
g
=
this
.
g
.
concat
(
res
.
data
.
list
);
this
.
g
=
this
.
g
.
concat
(
res
.
data
.
pageData
);
this
.
page_count
=
res
.
data
.
pag
ination
.
pag
e_count
;
this
.
page_count
=
res
.
data
.
page_count
;
if
(
this
.
page_count
==
1
)
{
if
(
this
.
page_count
==
1
)
{
this
.
isover
=
true
;
this
.
isover
=
true
;
this
.
status
=
"nomore"
;
this
.
status
=
"nomore"
;
...
...
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