Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
party-build-cloud
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
wangqinghua
party-build-cloud
Commits
78f53c6f
Commit
78f53c6f
authored
Apr 29, 2019
by
wangqinghua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix固定tabs菜单
parent
cf225349
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
88 additions
and
65 deletions
+88
-65
app.scss
src/app/app.scss
+2
-4
publish.html
src/pages/discover-pages/publish/publish.html
+0
-3
discover.html
src/pages/tabs/discover/discover.html
+6
-5
discover.scss
src/pages/tabs/discover/discover.scss
+16
-2
home.html
src/pages/tabs/home/home.html
+2
-2
home.ts
src/pages/tabs/home/home.ts
+13
-19
mine.ts
src/pages/tabs/mine/mine.ts
+2
-1
version.html
src/pages/version/version.html
+15
-14
version.scss
src/pages/version/version.scss
+2
-2
version.ts
src/pages/version/version.ts
+5
-11
common.service.ts
src/provide/common.service.ts
+25
-2
No files found.
src/app/app.scss
View file @
78f53c6f
...
@@ -300,11 +300,11 @@ p {
...
@@ -300,11 +300,11 @@ p {
background
:
url(../assets/imgs/home/signBgc.png)
repeat
;
background
:
url(../assets/imgs/home/signBgc.png)
repeat
;
background-size
:
cover
;
background-size
:
cover
;
.record-conten
{
.record-conten
{
margin-left
:
25
%
;
margin-left
:
18
%
;
margin-top
:
30%
;
margin-top
:
30%
;
color
:
#333333
;
color
:
#333333
;
font-size
:
1
.4rem
;
font-size
:
1
.4rem
;
line-height
:
1
.8
rem
;
line-height
:
2
rem
;
padding-right
:
1rem
;
padding-right
:
1rem
;
height
:
50%
;
height
:
50%
;
overflow
:
scroll
;
overflow
:
scroll
;
...
@@ -334,6 +334,5 @@ a[disabled], button[disabled], [ion-button][disabled],
...
@@ -334,6 +334,5 @@ a[disabled], button[disabled], [ion-button][disabled],
padding-top
:
4rem
;
padding-top
:
4rem
;
height
:
100%
;
height
:
100%
;
background-image
:
url('../assets/imgs/login-bg.png')
;
background-image
:
url('../assets/imgs/login-bg.png')
;
background-repeat
:
repeat
;
background-size
:
cover
;
background-size
:
cover
;
}
}
\ No newline at end of file
src/pages/discover-pages/publish/publish.html
View file @
78f53c6f
<ion-header>
<ion-header>
<ion-navbar>
<ion-navbar>
<ion-title>
发布
</ion-title>
<ion-title>
发布
</ion-title>
<ion-buttons
end
>
<ion-buttons
end
>
<button
ion-button
icon-only
(
click
)="
publish
()"
class=
"toolbar-icon"
>
<button
ion-button
icon-only
(
click
)="
publish
()"
class=
"toolbar-icon"
>
<ion-icon
name=
"share-alt"
></ion-icon>
<ion-icon
name=
"share-alt"
></ion-icon>
...
@@ -10,7 +8,6 @@
...
@@ -10,7 +8,6 @@
</button>
</button>
</ion-buttons>
</ion-buttons>
</ion-navbar>
</ion-navbar>
</ion-header>
</ion-header>
...
...
src/pages/tabs/discover/discover.html
View file @
78f53c6f
...
@@ -23,13 +23,13 @@
...
@@ -23,13 +23,13 @@
</ion-buttons>
</ion-buttons>
</ion-navbar>
</ion-navbar>
</ion-header>
</ion-header>
<
ion-content
>
<
div
class=
"tabs-fixed"
>
<div
class=
"scroll-tab"
>
<div
class=
"scroll-tab"
>
<div
class=
"news-content"
>
<div
class=
"news-content"
>
<div
#
tabsParent
class=
"tabs-parent"
>
<div
#
tabsParent
class=
"tabs-parent"
>
<div
#
tabsChildren
*
ngFor=
"let item of tabsList;"
(
click
)="
changeParent
(
item
)"
class=
"tabs-children"
>
<div
#
tabsChildren
*
ngFor=
"let item of tabsList;"
(
click
)="
changeParent
(
item
)"
class=
"tabs-children"
>
<span
#
tabSpan
[
style
.
color
]="
indexParent =
=
item
.
indexParent
?
'#
e12724
'
:
''"
>
{{item.name}}
</span>
<span
#
tabSpan
[
style
.
color
]="
indexParent =
=
item
.
indexParent
?
'#
e12724
'
:
''"
>
{{item.name}}
</span>
</div>
</div>
<span
#
tips
id=
"tips"
></span>
<span
#
tips
id=
"tips"
></span>
</div>
</div>
</div>
</div>
...
@@ -43,7 +43,8 @@
...
@@ -43,7 +43,8 @@
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<ion-content>
<div
class=
"search-content"
>
<div
class=
"search-content"
>
<ng-container
*
ngFor=
"let item of newList"
>
<ng-container
*
ngFor=
"let item of newList"
>
<div
class=
"search-item"
(
click
)="
goToDetail
(
item
)"
>
<div
class=
"search-item"
(
click
)="
goToDetail
(
item
)"
>
...
...
src/pages/tabs/discover/discover.scss
View file @
78f53c6f
...
@@ -59,6 +59,7 @@ page-discover {
...
@@ -59,6 +59,7 @@ page-discover {
//新闻区
//新闻区
.search-content
{
.search-content
{
padding
:
0
1rem
;
padding
:
0
1rem
;
margin-top
:
88px
;
.search-item
{
.search-item
{
padding
:
.8rem
0
;
padding
:
.8rem
0
;
.item-info
{
.item-info
{
...
@@ -82,7 +83,7 @@ page-discover {
...
@@ -82,7 +83,7 @@ page-discover {
}
}
.news-end
{
.news-end
{
align-self
:
flex-end
;
align-self
:
flex-end
;
color
:
#
999999
;
color
:
#
bbbbbb
;
font-size
:
1
.5rem
;
font-size
:
1
.5rem
;
margin-top
:
.8rem
;
margin-top
:
.8rem
;
span
{
span
{
...
@@ -110,7 +111,7 @@ page-discover {
...
@@ -110,7 +111,7 @@ page-discover {
color
:
#777777
;
color
:
#777777
;
border-radius
:
5px
;
border-radius
:
5px
;
margin-right
:
10px
;
margin-right
:
10px
;
width
:
6
rem
;
width
:
8
rem
;
padding
:
3px
0
;
padding
:
3px
0
;
text-align
:
center
;
text-align
:
center
;
font-size
:
1
.4rem
;
font-size
:
1
.4rem
;
...
@@ -122,4 +123,17 @@ page-discover {
...
@@ -122,4 +123,17 @@ page-discover {
border
:
1px
solid
#e12724
;
border
:
1px
solid
#e12724
;
}
}
}
}
.tabs-fixed
{
position
:
fixed
;
top
:
52px
;
left
:
0px
;
width
:
100%
;
z-index
:
1
;
background-color
:
#ffffff
;
border-bottom
:
1px
solid
#ffffff
;
.tabs-parent
{
background-color
:
#ffffff
;
}
}
}
}
src/pages/tabs/home/home.html
View file @
78f53c6f
...
@@ -23,7 +23,7 @@
...
@@ -23,7 +23,7 @@
</ion-navbar>
</ion-navbar>
</ion-header>
</ion-header>
<ion-content>
<ion-content>
<div
class=
"home-middle-tips"
>
<div
[
hidden
]="
isTips
"
class=
"home-middle-tips"
>
<ion-row>
<ion-row>
<ion-col
col-2
class=
"middle-left"
>
<ion-col
col-2
class=
"middle-left"
>
<img
src=
"./assets/imgs/flag.png"
>
<img
src=
"./assets/imgs/flag.png"
>
...
@@ -89,7 +89,7 @@
...
@@ -89,7 +89,7 @@
<div
class=
"mask-content"
>
<div
class=
"mask-content"
>
<ion-icon
class=
"close"
(
click
)="
isSign =
false"
name=
"close"
></ion-icon>
<ion-icon
class=
"close"
(
click
)="
isSign =
false"
name=
"close"
></ion-icon>
<div
class=
"record-conten"
>
<div
class=
"record-conten"
>
{{signObj.text}}
{{signObj.text}}
</div>
</div>
<div
class=
"mask-button"
>
<div
class=
"mask-button"
>
<button
*
ngIf=
"signObj.isSign == 'no'"
[
disabled
]="
disabledClick
"
class=
"submit-btn submit"
(
click
)="
signUp
()"
>
签到{{signText}}
</button>
<button
*
ngIf=
"signObj.isSign == 'no'"
[
disabled
]="
disabledClick
"
class=
"submit-btn submit"
(
click
)="
signUp
()"
>
签到{{signText}}
</button>
...
...
src/pages/tabs/home/home.ts
View file @
78f53c6f
import
{
Component
,
ElementRef
,
ViewChild
}
from
'@angular/core'
;
import
{
Component
,
ElementRef
,
ViewChild
}
from
'@angular/core'
;
import
{
NavController
,
IonicPage
,
Slides
}
from
'ionic-angular'
;
import
{
NavController
,
IonicPage
,
Slides
}
from
'ionic-angular'
;
import
{
ActivityListPage
}
from
"../../home/activity/activityList/activityList"
;
import
{
Http
,
Response
}
from
'@angular/http'
;
import
{
Http
,
Response
}
from
'@angular/http'
;
import
{
AppService
,
AppGlobal
}
from
'../../../service/http.service'
;
import
{
AppService
,
AppGlobal
}
from
'../../../service/http.service'
;
import
{
Calendar
}
from
'@ionic-native/calendar'
;
import
{
ActivityApplyPage
}
from
"../../home/activity/activityApply/activityApply"
;
import
{
ActivityDetailPage
}
from
"../../home/activity/activityDetail/activityDetail"
;
import
{
OutGoingReportPage
}
from
"../../home/report/outGoingReport/outGoingReport"
;
import
{
AnnouncementPage
}
from
'../../home/announcement/announcementList/announcement'
;
import
{
Storage
}
from
'@ionic/storage'
;
import
{
Storage
}
from
'@ionic/storage'
;
import
{
OutGoingReportEditPage
}
from
"../../home/report/outGoingReportEdit/outGoingReportEdit"
;
import
{
AnnouncementViewPage
}
from
'../../home/announcement/announcementView/announcementView'
;
import
{
CalendarComponentOptions
,
DayConfig
}
from
"ion2-calendar"
;
import
{
NoticePage
}
from
"../notice/notice"
;
import
{
NoticePage
}
from
"../notice/notice"
;
import
{
Badge
}
from
'@ionic-native/badge'
;
import
{
Badge
}
from
'@ionic-native/badge'
;
import
{
TabsService
}
from
"../tabs.service"
;
import
{
TabsService
}
from
"../tabs.service"
;
...
@@ -20,8 +11,7 @@ import {CommonService} from "../../../provide/common.service";
...
@@ -20,8 +11,7 @@ import {CommonService} from "../../../provide/common.service";
import
{
SearchNewPage
}
from
"../../home-pages/search-new/search-new"
;
import
{
SearchNewPage
}
from
"../../home-pages/search-new/search-new"
;
import
{
StuffDetailPage
}
from
"../../home-pages/stuff-detail/stuff-detail"
;
import
{
StuffDetailPage
}
from
"../../home-pages/stuff-detail/stuff-detail"
;
import
{
EmitService
}
from
"../../../provide/emit.service"
;
import
{
EmitService
}
from
"../../../provide/emit.service"
;
import
{
DatePipe
}
from
"@angular/common"
;
declare
var
Swiper
;
@
IonicPage
()
@
IonicPage
()
@
Component
({
@
Component
({
...
@@ -41,16 +31,17 @@ export class HomePage {
...
@@ -41,16 +31,17 @@ export class HomePage {
//1党章党规,2系列讲话,3中央精神,4本市部署,5通知公告,6党建动态,7工作提示,8党务参考
//1党章党规,2系列讲话,3中央精神,4本市部署,5通知公告,6党建动态,7工作提示,8党务参考
//9廉政格言,10纪检提示,11风险排查,12警示教育,13支部活动,14党建联建,15结对帮扶
//9廉政格言,10纪检提示,11风险排查,12警示教育,13支部活动,14党建联建,15结对帮扶
tabsList
=
[
tabsList
=
[
{
name
:
"系列讲话"
,
type
:
2
,
index
:
0
},
{
name
:
"系列讲话"
,
type
:
2
,
index
:
0
},
{
name
:
"党章党规"
,
type
:
1
,
index
:
1
},
{
name
:
"党章党规"
,
type
:
1
,
index
:
1
},
{
name
:
"中央精神"
,
type
:
3
,
index
:
2
},
{
name
:
"中央精神"
,
type
:
3
,
index
:
2
},
{
name
:
"本市部署"
,
type
:
4
,
index
:
3
}
{
name
:
"本市部署"
,
type
:
4
,
index
:
3
}
];
];
index
=
0
;
index
=
0
;
isSign
=
false
;
isSign
=
false
;
newList
=
[];
newList
=
[];
noReadNum
;
noReadNum
;
isTips
=
true
;
signObj
=
{
signObj
=
{
'text'
:
''
,
'text'
:
''
,
...
@@ -69,7 +60,7 @@ export class HomePage {
...
@@ -69,7 +60,7 @@ export class HomePage {
tmpH
=
0
;
tmpH
=
0
;
constructor
(
public
navCtrl
:
NavController
,
public
tts
:
TextToSpeech
,
constructor
(
public
navCtrl
:
NavController
,
public
tts
:
TextToSpeech
,
public
datePipe
:
DatePipe
,
public
commonSer
:
CommonService
,
public
emitSer
:
EmitService
,
public
commonSer
:
CommonService
,
public
emitSer
:
EmitService
,
public
appService
:
AppService
,
public
http
:
Http
,
public
storage
:
Storage
,
public
appService
:
AppService
,
public
http
:
Http
,
public
storage
:
Storage
,
public
badge
:
Badge
,
public
tabsSer
:
TabsService
)
{
public
badge
:
Badge
,
public
tabsSer
:
TabsService
)
{
...
@@ -106,7 +97,6 @@ export class HomePage {
...
@@ -106,7 +97,6 @@ export class HomePage {
}
else
{
}
else
{
this
.
tmpH
=
0
;
this
.
tmpH
=
0
;
this
.
lineChangeEle
.
nativeElement
.
appendChild
(
this
.
lineChangeEle
.
nativeElement
.
children
[
0
]);
this
.
lineChangeEle
.
nativeElement
.
appendChild
(
this
.
lineChangeEle
.
nativeElement
.
children
[
0
]);
// this.lineChangeEle.nativeElement.scrollTop = 0;
setTimeout
(()
=>
{
setTimeout
(()
=>
{
this
.
start
()
this
.
start
()
},
this
.
stopTime
);
//stopTime = 3000 ; scrollTime = 30 每移动一个单位延时30ms
},
this
.
stopTime
);
//stopTime = 3000 ; scrollTime = 30 每移动一个单位延时30ms
...
@@ -123,7 +113,6 @@ export class HomePage {
...
@@ -123,7 +113,6 @@ export class HomePage {
this
.
change
(
this
.
tabsList
[
0
]);
this
.
change
(
this
.
tabsList
[
0
]);
this
.
getBanner
();
this
.
getBanner
();
this
.
getInfo
();
this
.
getInfo
();
this
.
lineChange
();
}
}
//获取轮播图
//获取轮播图
...
@@ -163,6 +152,11 @@ export class HomePage {
...
@@ -163,6 +152,11 @@ export class HomePage {
this
.
tabsSer
.
getInfo
(
userid
).
subscribe
(
this
.
tabsSer
.
getInfo
(
userid
).
subscribe
(
(
res
)
=>
{
(
res
)
=>
{
this
.
partyObj
=
res
.
apiResult
.
data
;
this
.
partyObj
=
res
.
apiResult
.
data
;
let
message
=
this
.
partyObj
.
name
+
"同志,欢迎您,今天是"
+
this
.
datePipe
.
transform
(
this
.
partyObj
.
now
,
'yyyy年MM月dd日'
)
+
",是您加入中国共产党的第"
+
this
.
partyObj
.
partytime
+
"天,希望您不忘初心,牢记使命,永远奋斗。"
;
this
.
commonSer
.
alert2
(
message
,
''
,()
=>
{
this
.
isTips
=
false
;
this
.
lineChange
();
});
}
}
);
);
})
})
...
...
src/pages/tabs/mine/mine.ts
View file @
78f53c6f
...
@@ -131,7 +131,8 @@ export class MinePage {
...
@@ -131,7 +131,8 @@ export class MinePage {
}
}
goSet
()
{
goSet
()
{
this
.
app
.
getRootNav
().
push
(
'VersionPage'
);
// this.app.getRootNav().push('VersionPage');
this
.
navCtrl
.
push
(
'VersionPage'
);
}
}
goDuty
()
{
goDuty
()
{
...
...
src/pages/version/version.html
View file @
78f53c6f
<ion-header>
<ion-header>
<ion-navbar>
<ion-navbar>
<ion-title
text-center
>
设置
</ion-title>
<ion-title
text-center
>
设置
</ion-title>
</ion-navbar>
</ion-navbar>
</ion-header>
</ion-header>
<ion-content
class=
"bgc-e7e8ed"
>
<ion-content
class=
"bgc-e7e8ed"
>
<ion-list>
<ion-list>
<ion-item>
<ion-item>
<ion-label>
是否接受推送消息
</ion-label>
<ion-label>
是否接受推送消息
</ion-label>
<ion-toggle
[(
ngModel
)]="
pusNumber
"
(
ionChange
)="
savePush
()"
></ion-toggle>
<ion-toggle
[(
ngModel
)]="
pusNumber
"
(
ionChange
)="
savePush
()"
></ion-toggle>
</ion-item>
</ion-item>
<ion-item
class=
"margin-top-20"
>
<ion-item
class=
"margin-top-20"
>
<span>
当前版本
</span>
<span>
当前版本
</span>
<span
float-right
(
click
)="
update
()"
><span
*
ngIf=
"!isLatest"
class=
"red-span"
></span>
{{version}}
</span>
<span
float-right
(
click
)="
update
()"
><span
*
ngIf=
"!isLatest"
class=
"red-span"
></span>
{{version}}
</span>
</ion-item>
</ion-item>
</ion-list>
</ion-list>
<button
class=
"submit-btn submit"
(
click
)="
logoutApp
()"
>
退出
</button>
<button
class=
"submit-btn submit"
(
click
)="
logoutApp
()"
>
退出
</button>
</ion-content>
</ion-content>
\ No newline at end of file
src/pages/version/version.scss
View file @
78f53c6f
...
@@ -43,8 +43,8 @@ page-version {
...
@@ -43,8 +43,8 @@ page-version {
font-size
:
16px
;
font-size
:
16px
;
}
}
.submit
{
.submit
{
border
:
1px
solid
#
34b4fc
;
border
:
1px
solid
#
e12724
;
background-color
:
#
34b4fc
;
background-color
:
#
e12724
;
margin-top
:
20px
;
margin-top
:
20px
;
}
}
.list-ios
.item-block
.item-inner
{
.list-ios
.item-block
.item-inner
{
...
...
src/pages/version/version.ts
View file @
78f53c6f
...
@@ -5,7 +5,7 @@ import {AppVersion} from '@ionic-native/app-version';
...
@@ -5,7 +5,7 @@ import {AppVersion} from '@ionic-native/app-version';
import
{
AppUpdateService
}
from
"../../service/appUpdate.service"
;
import
{
AppUpdateService
}
from
"../../service/appUpdate.service"
;
import
{
Storage
}
from
"@ionic/storage"
;
import
{
Storage
}
from
"@ionic/storage"
;
import
{
LoginPage
}
from
"../login/login"
;
import
{
LoginPage
}
from
"../login/login"
;
import
{
HomePage
}
from
"../tabs/home/home
"
;
import
{
App
}
from
"ionic-angular
"
;
@
IonicPage
()
@
IonicPage
()
@
Component
({
@
Component
({
...
@@ -25,6 +25,7 @@ export class VersionPage {
...
@@ -25,6 +25,7 @@ export class VersionPage {
private
appUpdateService
:
AppUpdateService
,
private
appUpdateService
:
AppUpdateService
,
private
appVersion
:
AppVersion
,
private
appVersion
:
AppVersion
,
private
storage
:
Storage
,
private
storage
:
Storage
,
private
app
:
App
,
private
alertCtrl
:
AlertController
)
{
private
alertCtrl
:
AlertController
)
{
}
}
...
@@ -46,17 +47,11 @@ export class VersionPage {
...
@@ -46,17 +47,11 @@ export class VersionPage {
this
.
appService
.
ObserverHttpGet
(
'/wisdomgroup/modules/common/file/getAppPush'
,
null
)
this
.
appService
.
ObserverHttpGet
(
'/wisdomgroup/modules/common/file/getAppPush'
,
null
)
.
subscribe
(
.
subscribe
(
(
res
)
=>
{
(
res
)
=>
{
if
(
res
.
_body
==
""
)
{
if
(
res
.
_body
==
""
)
{
this
.
pusNumber
=
true
;
this
.
pusNumber
=
true
;
}
else
{
}
else
{
this
.
pusNumber
=
res
.
json
();
this
.
pusNumber
=
res
.
json
();
}
}
// if(res.json() == false){
// this.pusNumber = res.json();
// }else{
// this.pusNumber = true;
// }
}
}
)
)
}
}
...
@@ -126,8 +121,7 @@ export class VersionPage {
...
@@ -126,8 +121,7 @@ export class VersionPage {
this
.
storage
.
clear
();
this
.
storage
.
clear
();
this
.
appService
.
ObserverHttpGet
(
"/wisdomgroup/app/logout"
,
null
)
this
.
appService
.
ObserverHttpGet
(
"/wisdomgroup/app/logout"
,
null
)
.
subscribe
((
res
:
Response
)
=>
{
.
subscribe
((
res
:
Response
)
=>
{
let
data
=
res
.
json
();
this
.
app
.
getRootNav
().
setRoot
(
LoginPage
);
this
.
navCtrl
.
push
(
'LoginPage'
);
},
error
=>
{
},
error
=>
{
}
}
);
);
...
...
src/provide/common.service.ts
View file @
78f53c6f
...
@@ -66,7 +66,6 @@ export class CommonService{
...
@@ -66,7 +66,6 @@ export class CommonService{
* @param callback 如果有回调方法 就有确定、取消两个按钮,没有回调方法 则只有确认一个按钮
* @param callback 如果有回调方法 就有确定、取消两个按钮,没有回调方法 则只有确认一个按钮
*/
*/
alert
(
message
,
callback
?)
{
alert
(
message
,
callback
?)
{
console
.
log
(
message
)
if
(
callback
)
{
if
(
callback
)
{
let
alert
=
this
.
alertCtrl
.
create
({
let
alert
=
this
.
alertCtrl
.
create
({
title
:
'提示'
,
title
:
'提示'
,
...
@@ -81,7 +80,31 @@ export class CommonService{
...
@@ -81,7 +80,31 @@ export class CommonService{
alert
.
present
();
alert
.
present
();
}
else
{
}
else
{
let
alert
=
this
.
alertCtrl
.
create
({
let
alert
=
this
.
alertCtrl
.
create
({
title
:
'提示'
,
title
:
''
,
message
:
message
,
buttons
:
[
"确定"
]
});
alert
.
present
();
}
}
alert2
(
message
,
title
,
callback
?){
if
(
callback
)
{
let
alert
=
this
.
alertCtrl
.
create
({
title
:
title
,
message
:
message
,
buttons
:
[
{
text
:
"确定"
,
handler
:
data
=>
{
callback
();
}
}]
});
alert
.
present
();
}
else
{
let
alert
=
this
.
alertCtrl
.
create
({
title
:
title
,
message
:
message
,
message
:
message
,
buttons
:
[
"确定"
]
buttons
:
[
"确定"
]
});
});
...
...
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