Skip to content

Commit 417b1e7

Browse files
author
Parth Shah
committed
adding travis prod keys, fix for project progress
1 parent 0dad2fb commit 417b1e7

File tree

3 files changed

+68
-14
lines changed

3 files changed

+68
-14
lines changed

.travis.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,16 @@ deploy:
3333
local_dir: dist
3434
on:
3535
branch: qa
36+
- provider: s3
37+
cache_control: private, no-store, no-cache, must-revalidate, max-age=0
38+
detect_encoding: true
39+
access_key_id: $MASTER_AWS_KEY
40+
secret_access_key: $MASTER_AWS_SECRET
41+
bucket: connectv2.topcoder.com
42+
skip_cleanup: true
43+
local_dir: dist
44+
on:
45+
branch: master
3646
env:
3747
matrix:
3848
- CXX=g++-4.8
@@ -41,6 +51,10 @@ env:
4151
- secure: PG2eUElqRRmuskRQAsFxHggyj7Ci2KQh82x/ke/QKPcL6VyCQRYCVuMmfFnmmqzdIzCXPGA7QN+g2p1TPufBunLjoszsaq4nSJs0OZyH6viUqQHGjnnzr2+hORuqPS0nKiKTYEjrB+iiVV//E4axtJD0DuqUJODPS8C5MqdLpClSn2TWySiINa5pGTlVn1QqbnxmabltVIgiZhiOtU2hqIRsSQD21GljM7lj9y3ZsXIYHhEgaEUY6s7nWVkTy0nsVByZshzf6mtoGh9eZLzxILQ50GsKAVJLUzanzBQO55u916nmIHmcMxPXNPkUpMwlG0AWSxzTHMMLOQbnVTcD0MWSyEtsYR/vpWu5kxN7RDVBDtFtyO1hYHP8ggW+mIFEaPgpHFTIb8tMZWQ0jGAM2AoMP3aN4XoL9IGYKNw9/LkV+7lLWEZtgcehIxg7Lwdp4hINoNQ4cfY937+2ThxiaiwAyB2Xvoi7ER4zXUZyiXdHqPFP4EV368QeQXjzGyHoDhXNNO9AzgQTWfk7iq3B7RPSP5uQLv7Z61AkyAK78F0f3jo529gp0fB7J84NCMkZtvJnN40u4DXfQP/zJVJHfaJ1nRiim5egNtdzoHHnTL1kQrJpp/+yaf7ZghCJpIYymEoy5Es6H8UCQJoDKHiXlWqZBxPsrJkFAvMxe3qmXTE=
4252
- secure: Q+cczazPHfMFPTh3EUYElozt+UkOMKC3tHlRbiBKVHkJpgxxH03Bqs+vgWc2XDo/6Ge9xFGOCT28CJf1Q4Gs7Dm0N0TlME5RlVrZjS78h+85K/ZwTSo4Bu70Wk1hm2wZ9EJtumrzoKEXy+L/8XSTzMIjkhkDqbjp9GZuYxrbQrJSPvYntWMNBP6hht1H/MtLlZVGtcRTFkOy/2u+hy1ELgvHSRAqWqLJfP+CdjtkryllGKWrZ1JXtiCuSEkp1jB9QVDLV1cNGVFqfWwPPU+DbhZNEN/H3jdztWmBVdXuIl9SZUBsq2//CEAUf4wX4mzzuGjl/Y8sXni39yTCpFdjWwywxWPFHbg+qog9gOOayaQ7vSeCuARn+mJqoVtGiLAQJWHiIa+QeXo6lABlXBBI3KohnFd7qi4v89P/fJrzRXd5wAnsstkSNJoVdC2+E8XPl95QHDOaVoDubxZMaexmUleXO68sczEZcs1zutkFEMudt0iS1HuTpTislY8bWQwyU9rW0VsWc0PrlDgQZBZuZUCAH8fx3QlIghGN9wUqM3x1JMW9fH389B6i8FmZrkxSwhGlg/zpAFEr6xg3mnuZvV/SDIy6URUwjWY/DKca0Gk2P8+KQEXR7627pFc4Os86LQhoO1oNFPVHDHvvn5MWdNcXqkMf9isTb24JzAzuFUs=
4353
- secure: FQN6bnwY2uIhV7IxF/JrvFXErefhox+yhKZ/97q2yB+l+k4032RSOsJl0MdX4Khi0DR8Dqex8nR0emMX245Yj+zcjkfn3MLuTR454xERQiYqZ4ULJqQAbkdHQ4XHHU2JQeD2gLbXHSsbu6EXXWPEsTpoW4xAwcI3O9S14kmbN172CCIi54Ac8RQ6Z3oJ3LKGnToyXov/cMXstV3PCXBMrZVLMDQP5UEvbP+Ze+HrAIx4OnF9CMlWfa0SRFltjmNA5Lkg9iL+LRcjZMa+2F1U/uuMLXO4KLkUK1YgVf5pY8LKDZUVajdlyoTsLVdffrAutKiEvwsBMq4FXgJzr5aFs+xdA4dcRYM8WzwzMo8Wk8sMtLoW8An0fzDDBYD+gP+k+iL+XdriGtPOi0u/wIDguglLehMtsKwnnawS8eQ6cwgSa4jW3NPcvJuTmVgQWUvAez71ZZ0KC/WQVBsUUerMDnpmSsnPpnekJDNFBJmzS7hLF/ERuDG2yZsu1/yXPC0bVHz09WDVR7GA5ajQpSXBREXmf080fdDE20zA6gFKHYPnQvP4J6aJwDJ/VX63B0idI1DXXMMTitjuebDff9tP7AWwv+M1gkCTof6x+eJ84Zd80B9TO7nFcYCXQQHVXt9BMpOoov2iPv5lEFykh4qAwy0Mqv5IYwuvSAq6A6oh1as=
54+
# $MASTER_AWS_KEY
55+
- secure: C3NYP6gj6w6cWGBQYrgT1tioSfaYpRzBf5PWVW2RG2pfzcWduB9x1GYWGhYWe3nSGKt9eao1JVTKph3HQW2oVS8U5GjwuT8opfC4k+xzrydiX9xplTC74gcigGTg3MIRuKPB8IhCNxvtKCllCTuVoVfVjScVB22zgwM6b3OArbSXFpBQEHjL3tcwTcjXy82s0u4wl4gIDvwbnZkUO01sCA+Yk7dYQfE+R0sSrozdexjkR/6ska++s+LzdNgGLUtDvKdf8VtF5z/htaqBWCIYNIrQEz6yClEEb7fW+4f7fK5KcGgCsocLPaUZPZc0mypsFiFxLLFdu+yBDNItXcEfKBuUhTSZV0z/l/dBrGLrY+rbjrr3YsQvnmco9JbUyMh6Or4JYuf2ofvw31SXuf9lrmUHaul7Yu+ibdfuoYJ9xTgZs1AKaGbyhhF+hxOM4YMkVB7byWacqiVE2G9RKqD02HxOL0UYnRZUisyt7oSXDBMEXvhzr2zfD43NgngSHhxpy6vzFCsGsXBEoYZD4DFrV6dym60kGmXd/24d6t8cXiRq+6xsWH7aU61fu8AppKAZJeMv/qHxxtM9lXJ1LaHKsiav/leTVcy1OXLPNNDOK20I99FEqVSNKvJ79uagR6xbcDnI4LRlw+uDKaY6AMSLIw9M5tWdAc6LNR9Wcyzop6E=
56+
# $MASTER_AWS_SECRET
57+
- secure: QTbD+n84Eg1QRZs7yjLl2yRdKmesr/yTTvSSX77xiKJB3kcI6UivJDoaWkIKq2WaxxA6ewf7UGdvGiM/q6PSpHmP9khNdxj3qXCn3OpUKZ+wVCz6JZ6JWWBBIBnKhTgFLz8O9jpxMRsXB0ZbF0k2JE6n/2qD96+rF0UmjfsJs7havOuHPNI4LwrRYSP8KzdbGRbcAUWesASTyq8nktv+kF93NomNaaRyyHBWCQMpEGS67B536IfFjypR919SIv+Qu4sqDATelQlSZWZm1jzupz3cAo8GNB6v1vYGNRMnM56R0rgDpOIqN6b6Y6hmHodSBMYp52sxFvcTuDDLuLvyGRQ/ErINmdcaXqgMh5Gl3tDwHezT5s32B+rOsSIkZF8fnrNB74dMpuKp7g2XCVfPeqlnEttY/uGbuQBe3be0g3kGtK9MFRw75X6oQxESaO2NvkCqPNZl1TacDv1s46bz3Y+en4gTmJ1UXKwmWf7fOekYozNBnOtcWQZqJ0g3d1DU1Pul4QSFuszL6y0uH5ohWDjk0mOERuFIQXKCrTVsMzUogeGp3Z7rDAynwFYGbJWgeoclbH2fQpbCLFSZxfvbYzzkpYbWD3eMLcpuKjSjTew8KEiYk2uYEjW9Kaj1wWkAkIGDAawbMGw5XVS/3a/scAcVMkyYb9VVy1wDAHudiRI=
4458
# enable once travis supports branch specific builds
4559
# notifications:
4660
# slack:

src/components/ProjectInfo/ProjectInfo.jsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ class ProjectInfo extends Component {
3030
render() {
3131
const { type, directLinks, devices, currentMemberRole, status, onChangeStatus, duration, canDeleteProject } = this.props
3232
const { showDeleteConfirm } = this.state
33+
const displayProgress = status !== 'cancelled'
3334
return (
3435
<Panel>
3536
<Panel.Title>Project</Panel.Title>
@@ -44,9 +45,9 @@ class ProjectInfo extends Component {
4445
}
4546
<ProjectType type={type} devices={devices} />
4647
<ProjectStatus directLinks={directLinks} currentMemberRole={currentMemberRole} status={status} onChangeStatus={onChangeStatus} />
47-
<ProjectProgress title="Duration" percent={duration.percent} type="completed">
48+
{displayProgress && <ProjectProgress {...duration}>
4849
{duration.text}
49-
</ProjectProgress>
50+
</ProjectProgress>}
5051
{/* <ProjectProgress title="Budget" percent={budget.percent} type="working">
5152
{budget.text}
5253
</ProjectProgress> */}

src/projects/detail/containers/ProjectInfoContainer.js

Lines changed: 51 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,7 @@ class ProjectInfoContainer extends React.Component {
1515
constructor(props) {
1616
super(props)
1717
this.state = {
18-
duration: {
19-
percent: 0,
20-
text: 'Complete specification to get estimate'
21-
},
18+
duration: {},
2219
budget: { // FIXME
2320
percent: 80,
2421
text: '$1000 remaining'
@@ -34,16 +31,58 @@ class ProjectInfoContainer extends React.Component {
3431
return !_.isEqual(nextProps.project, this.props.project)
3532
}
3633

37-
componentWillReceiveProps({project}) {
38-
if (project.duration) {
39-
const percent = project.duration.actualDuration / project.duration.plannedDuration * 100
40-
this.setState({
41-
duration: {
42-
percent,
43-
text: percent === 0 ? 'Complete specification to get estimate' : ''
34+
setDuration({duration, status}) {
35+
let percent =''
36+
let title = ''
37+
let text = ''
38+
let type = ''
39+
if (duration) {
40+
const {actualDuration, plannedDuration} = duration
41+
if (status === 'draft') {
42+
title = 'Duration'
43+
percent = 0
44+
text = 'Complete specification to get estimate'
45+
} else if (status === 'in_review') {
46+
title = 'Duration'
47+
percent = 0
48+
text = 'Pending review'
49+
} else if (status === 'reviewed') {
50+
title = `${plannedDuration} days (projected)`
51+
percent = 0
52+
text = `${plannedDuration} days remaining`
53+
} else if (status === 'completed') {
54+
title = 'Completed'
55+
percent = 100
56+
text = ''
57+
type = 'completed'
58+
} else {
59+
text = `Day ${actualDuration} of ${plannedDuration}`
60+
percent = actualDuration / plannedDuration * 100
61+
if (0 <= percent && percent < 100) {
62+
const diff = plannedDuration - actualDuration
63+
title = `${diff} ${diff > 1 ? 'days' : 'day'} remaining`
64+
type = 'working'
65+
} else {
66+
percent = 100
67+
type = 'error'
68+
const diff = actualDuration - plannedDuration
69+
title = `${diff} ${diff > 1 ? 'days' : 'day'} over`
4470
}
45-
})
71+
}
72+
} else {
73+
title = 'Duration'
74+
percent = 0
75+
text = 'Complete specification to get estimate'
4676
}
77+
this.setState({duration: { title, text, percent, type }})
78+
}
79+
80+
componentWillMount() {
81+
this.setDuration(this.props.project)
82+
}
83+
84+
componentWillReceiveProps({project}) {
85+
this.setDuration(project)
4786
}
4887

4988
onChangeStatus(status) {

0 commit comments

Comments
 (0)