update language
This commit is contained in:
parent
f868969bde
commit
93a24234e7
@ -3,4 +3,68 @@ export default {
|
|||||||
"Blogs": "Blogs",
|
"Blogs": "Blogs",
|
||||||
"Career": "Career",
|
"Career": "Career",
|
||||||
"Contact": "Contact",
|
"Contact": "Contact",
|
||||||
|
"Summary": "Summary",
|
||||||
|
"Status": "Status",
|
||||||
|
"Date": "Date",
|
||||||
|
"withdraw": "withdraw",
|
||||||
|
"edit": "edit",
|
||||||
|
"Quote": "Quote",
|
||||||
|
"Payment": "Payment",
|
||||||
|
"Duration": "Duration",
|
||||||
|
"days": "days",
|
||||||
|
"Update": "Update",
|
||||||
|
"From": "From",
|
||||||
|
"reject": "reject",
|
||||||
|
"accept": "accept",
|
||||||
|
"Note": "Note",
|
||||||
|
"Invite": "Invite",
|
||||||
|
"Input E-mail to invite other": "Input E-mail to invite other",
|
||||||
|
"Submit": "Submit",
|
||||||
|
"Progress": "Progress",
|
||||||
|
"milestones": "milestones",
|
||||||
|
"Paid": "Paid",
|
||||||
|
"Milestone": "Milestone",
|
||||||
|
"Description": "Description",
|
||||||
|
"Mark As Paid": "Mark As Paid",
|
||||||
|
"Code Depot": "Code Depot",
|
||||||
|
"Commits": "Commits",
|
||||||
|
"Last committer": "Last committer",
|
||||||
|
"copy git url": "copy git url",
|
||||||
|
"Manage": "Manage",
|
||||||
|
"TO BE IMPLEMENTED.": "TO BE IMPLEMENTED.",
|
||||||
|
"Open issues": "Open issues",
|
||||||
|
"Resolved issues": "Resolved issues",
|
||||||
|
"Closed issues": "Closed issues",
|
||||||
|
"Add Issue": "Add Issue",
|
||||||
|
"New issue description": "New issue description",
|
||||||
|
"Issue title": "Issue title",
|
||||||
|
"Last updated": "Last updated",
|
||||||
|
"Issue description": "Issue description",
|
||||||
|
"Resolve": "Resolve",
|
||||||
|
"Confirm": "Confirm",
|
||||||
|
"Reopen": "Reopen",
|
||||||
|
"fd_1": "A platform where our users can find a trustworthy partner,",
|
||||||
|
"fd_2": "simplify software development, and secure return.",
|
||||||
|
"fd_3": "One stop platform",
|
||||||
|
"fd_4": "for hiring the best",
|
||||||
|
"fd_5": "freelance software development talent",
|
||||||
|
"Email address": "Email address",
|
||||||
|
"GET STARTED": "GET STARTED",
|
||||||
|
"Please type in your email": "Please type in your email",
|
||||||
|
"Your Freeleaps User ID": "Your Freeleaps User ID",
|
||||||
|
"SUBMIT": "SUBMIT",
|
||||||
|
"Please type in your Freeleaps user ID": "Please type in your Freeleaps user ID",
|
||||||
|
"Your password": "Your password",
|
||||||
|
"Repeat password": "Repeat password",
|
||||||
|
"SIGN UP": "SIGN UP",
|
||||||
|
"Please type in your password": "Please type in your password",
|
||||||
|
"The two passwords are not matched": "The two passwords are not matched",
|
||||||
|
"Authenticaion Code Sent To Your Email": "Authenticaion Code Sent To Your Email",
|
||||||
|
"SIGN IN": "SIGN IN",
|
||||||
|
"Please type in the code sent to your email": "Please type in the code sent to your email",
|
||||||
|
"Invalid auth code": "Invalid auth code",
|
||||||
|
"invalid code": "invalid code",
|
||||||
|
"Password": "Password",
|
||||||
|
"Forget password": "Forget password",
|
||||||
|
"Invalid password": "Invalid password",
|
||||||
}
|
}
|
||||||
@ -1,12 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="flex-colum-container front-container">
|
<div class="flex-colum-container front-container">
|
||||||
<div class="slogen">
|
<div class="slogen">{{$t('fd_1')}}<br />{{$t('fd_2')}}</div>
|
||||||
A platform where our users can find a trustworthy partner, <br />simplify software
|
|
||||||
development, and secure return.
|
|
||||||
</div>
|
|
||||||
<div class="poster">
|
<div class="poster">
|
||||||
<span class="blue">One stop platform</span> for hiring the best <br />freelance software
|
<span class="blue">{{$t('fd_3')}}</span> {{$t('fd_4')}} <br />{{$t('fd_5')}}
|
||||||
development talent
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input-container">
|
<div class="input-container">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
@ -19,10 +15,10 @@
|
|||||||
placeholder="name@example.com"
|
placeholder="name@example.com"
|
||||||
v-model="email"
|
v-model="email"
|
||||||
/>
|
/>
|
||||||
<label for="inputEmail">Email address</label>
|
<label for="inputEmail">{{$t('Email address')}}</label>
|
||||||
</div>
|
</div>
|
||||||
<button class="btn-start" ref="submitButton" @click="trySigninWithEmail()">
|
<button class="btn-start" ref="submitButton" @click="trySigninWithEmail()">
|
||||||
GET STARTED
|
{{$t('GET STARTED')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -53,7 +49,7 @@ export default {
|
|||||||
trySigninWithEmail() {
|
trySigninWithEmail() {
|
||||||
this.message = null
|
this.message = null
|
||||||
if (this.email === null || this.email.length < 1) {
|
if (this.email === null || this.email.length < 1) {
|
||||||
this.message = 'Please type in your email'
|
this.message = this.$t('Please type in your email')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -12,9 +12,9 @@
|
|||||||
:placeholder="'set your Freeleaps user id'"
|
:placeholder="'set your Freeleaps user id'"
|
||||||
v-model="flid"
|
v-model="flid"
|
||||||
/>
|
/>
|
||||||
<label for="inputCode">Your Freeleaps User ID</label>
|
<label for="inputCode">{{$t('Your Freeleaps User ID')}}</label>
|
||||||
</div>
|
</div>
|
||||||
<button type="submit" class="btn-start">SUBMIT</button>
|
<button type="submit" class="btn-start">{{$t('SUBMIT')}}</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="errorInput" v-if="message != null">{{ message }}</p>
|
<p class="errorInput" v-if="message != null">{{ message }}</p>
|
||||||
@ -52,7 +52,7 @@ export default {
|
|||||||
updateFlid() {
|
updateFlid() {
|
||||||
this.message = null
|
this.message = null
|
||||||
if (this.flid === null || this.flid.length < 1) {
|
if (this.flid === null || this.flid.length < 1) {
|
||||||
this.message = 'Please type in your Freeleaps user ID'
|
this.message = this.$t('Please type in your Freeleaps user ID')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -12,7 +12,7 @@
|
|||||||
:placeholder="'Type your password'"
|
:placeholder="'Type your password'"
|
||||||
v-model="password"
|
v-model="password"
|
||||||
/>
|
/>
|
||||||
<label for="inputCode">Your password</label>
|
<label for="inputCode">{{$t('Your password')}}</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -27,9 +27,9 @@
|
|||||||
:placeholder="'Repeat your password'"
|
:placeholder="'Repeat your password'"
|
||||||
v-model="password2"
|
v-model="password2"
|
||||||
/>
|
/>
|
||||||
<label for="inputCode">Repeat password</label>
|
<label for="inputCode">{{$t('Repeat password')}}</label>
|
||||||
</div>
|
</div>
|
||||||
<button type="submit" class="btn-start">SIGN UP</button>
|
<button type="submit" class="btn-start">{{$t('SIGN UP')}}</button>
|
||||||
</div>
|
</div>
|
||||||
<p class="error-msg" v-if="message != null">{{ message }}</p>
|
<p class="error-msg" v-if="message != null">{{ message }}</p>
|
||||||
</div>
|
</div>
|
||||||
@ -59,12 +59,12 @@ export default {
|
|||||||
updatePassword() {
|
updatePassword() {
|
||||||
this.message = null
|
this.message = null
|
||||||
if (this.password === null || this.password.length < 1) {
|
if (this.password === null || this.password.length < 1) {
|
||||||
this.message = 'Please type in your password'
|
this.message = this.$t('Please type in your password')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.password != this.password2) {
|
if (this.password != this.password2) {
|
||||||
this.message = 'The two passwords are not matched'
|
this.message = this.$t('The two passwords are not matched')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
this.message = passwordValidator.validate(this.password)
|
this.message = passwordValidator.validate(this.password)
|
||||||
|
|||||||
@ -12,9 +12,9 @@
|
|||||||
:placeholder="'Code sent to your email'"
|
:placeholder="'Code sent to your email'"
|
||||||
v-model="code"
|
v-model="code"
|
||||||
/>
|
/>
|
||||||
<label for="inputCode">Authenticaion Code Sent To Your Email</label>
|
<label for="inputCode">{{$t('Authenticaion Code Sent To Your Email')}}</label>
|
||||||
</div>
|
</div>
|
||||||
<button type="submit" class="btn-start">SIGN IN</button>
|
<button type="submit" class="btn-start">{{$t('SIGN IN')}}</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="error-msg" v-if="message != null">{{ message }}</p>
|
<p class="error-msg" v-if="message != null">{{ message }}</p>
|
||||||
@ -55,7 +55,7 @@ export default {
|
|||||||
signinWithCode() {
|
signinWithCode() {
|
||||||
this.message = null
|
this.message = null
|
||||||
if (this.code === null || this.code.length < 1) {
|
if (this.code === null || this.code.length < 1) {
|
||||||
this.message = 'Please type in the code sent to your email'
|
this.message = this.$t('Please type in the code sent to your email')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,7 +69,7 @@ export default {
|
|||||||
this.preferred_region = response.data.preferred_region
|
this.preferred_region = response.data.preferred_region
|
||||||
switch (signinAction) {
|
switch (signinAction) {
|
||||||
case signinActionEnum.VERIFY_EMAIL_WITH_AUTH_CODE:
|
case signinActionEnum.VERIFY_EMAIL_WITH_AUTH_CODE:
|
||||||
this.message = 'Invalid auth code'
|
this.message = this.$t('Invalid auth code')
|
||||||
break
|
break
|
||||||
case signinActionEnum.EXISTING_USER_PASSWORD_REQUIRED:
|
case signinActionEnum.EXISTING_USER_PASSWORD_REQUIRED:
|
||||||
this.mnx_navToSignWithEmailAndPassword(this.email)
|
this.mnx_navToSignWithEmailAndPassword(this.email)
|
||||||
@ -85,7 +85,7 @@ export default {
|
|||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
if (error.response && error.response.status == 401) {
|
if (error.response && error.response.status == 401) {
|
||||||
this.message = 'invalid code'
|
this.message = this.$t('invalid code')
|
||||||
} else {
|
} else {
|
||||||
console.log(error)
|
console.log(error)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,16 +12,16 @@
|
|||||||
:placeholder="'Type in your password'"
|
:placeholder="'Type in your password'"
|
||||||
v-model="password"
|
v-model="password"
|
||||||
/>
|
/>
|
||||||
<label for="inputCode">Password</label>
|
<label for="inputCode">{{$t('Password')}}</label>
|
||||||
</div>
|
</div>
|
||||||
<button type="submit" class="btn-start">SIGN IN</button>
|
<button type="submit" class="btn-start">{{$t('SIGN IN')}}</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="error-msg flex-row-container">
|
<div class="error-msg flex-row-container">
|
||||||
<p class="error-p" v-if="message != null">{{ message }}</p>
|
<p class="error-p" v-if="message != null">{{ message }}</p>
|
||||||
<div class="flex-1" />
|
<div class="flex-1" />
|
||||||
<button type="button" class="btn-forget-password" @click="forgetPassword()">
|
<button type="button" class="btn-forget-password" @click="forgetPassword()">
|
||||||
Forget password
|
{{$t('Forget password')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -60,7 +60,7 @@ export default {
|
|||||||
signinWithPassword() {
|
signinWithPassword() {
|
||||||
this.message = null
|
this.message = null
|
||||||
if (this.password === null || this.password.length < 1) {
|
if (this.password === null || this.password.length < 1) {
|
||||||
this.message = 'Please type in your password'
|
this.message = this.$t('Please type in your password')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -73,7 +73,7 @@ export default {
|
|||||||
let signinAction = response.data.signin_result
|
let signinAction = response.data.signin_result
|
||||||
switch (signinAction) {
|
switch (signinAction) {
|
||||||
case signinActionEnum.EXISTING_USER_PASSWORD_REQUIRED:
|
case signinActionEnum.EXISTING_USER_PASSWORD_REQUIRED:
|
||||||
this.message = 'Invalid password'
|
this.message = this.$t('Invalid password')
|
||||||
break
|
break
|
||||||
case signinActionEnum.REVIEW_AND_REVISE_FLID:
|
case signinActionEnum.REVIEW_AND_REVISE_FLID:
|
||||||
case signinActionEnum.USER_SIGNED_IN:
|
case signinActionEnum.USER_SIGNED_IN:
|
||||||
@ -97,7 +97,7 @@ export default {
|
|||||||
this.mnx_navToSignWithEmailAndCode(this.email)
|
this.mnx_navToSignWithEmailAndCode(this.email)
|
||||||
break
|
break
|
||||||
case signinActionEnum.EMAIL_NOT_ASSOCIATED_WITH_USER:
|
case signinActionEnum.EMAIL_NOT_ASSOCIATED_WITH_USER:
|
||||||
this.message = 'Invalid password'
|
this.message = this.$t('Invalid password')
|
||||||
break
|
break
|
||||||
default:
|
default:
|
||||||
console.log(signinAction)
|
console.log(signinAction)
|
||||||
|
|||||||
@ -21,15 +21,15 @@
|
|||||||
<div class="workspace-item-bar dashed-container">
|
<div class="workspace-item-bar dashed-container">
|
||||||
<div class="workspace-item-bar-left">
|
<div class="workspace-item-bar-left">
|
||||||
<div class="project-item-title-container">
|
<div class="project-item-title-container">
|
||||||
<label class="project-item-label">Summary</label>
|
<label class="project-item-label">{{$('Summary')}}</label>
|
||||||
<p class="project-item-text">{{ project.title }}</p>
|
<p class="project-item-text">{{ project.title }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-item-status-container">
|
<div class="project-item-status-container">
|
||||||
<label class="project-item-label">Status</label>
|
<label class="project-item-label">{{$('Status')}}</label>
|
||||||
<p class="project-item-text">{{ fromIntToProjectStatus(project.status) }}</p>
|
<p class="project-item-text">{{ fromIntToProjectStatus(project.status) }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-item-date-container">
|
<div class="project-item-date-container">
|
||||||
<label class="project-item-label">Date</label>
|
<label class="project-item-label">{{$('Date')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ getDateFromFulltimeString(project.update_time) }}
|
{{ getDateFromFulltimeString(project.update_time) }}
|
||||||
</p>
|
</p>
|
||||||
@ -52,7 +52,7 @@
|
|||||||
<div class="accordion-body" v-if="isOpenRequest(project)">
|
<div class="accordion-body" v-if="isOpenRequest(project)">
|
||||||
<div class="float-action-container">
|
<div class="float-action-container">
|
||||||
<button class="request-action-withdraw" @click="withdrawAndEditRequest(project)">
|
<button class="request-action-withdraw" @click="withdrawAndEditRequest(project)">
|
||||||
withdraw&edit
|
{{$('withdraw')}}&{{$('edit')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-container">
|
<div class="project-request-container">
|
||||||
@ -82,27 +82,27 @@
|
|||||||
>
|
>
|
||||||
<div class="project-request-proposal-bar-container">
|
<div class="project-request-proposal-bar-container">
|
||||||
<div class="project-request-proposal-quote-container">
|
<div class="project-request-proposal-quote-container">
|
||||||
<label class="project-item-label">Quote</label>
|
<label class="project-item-label">{{$('Quote')}}</label>
|
||||||
<p class="project-item-text">{{ proposal.price_in_usd }} USD</p>
|
<p class="project-item-text">{{ proposal.price_in_usd }} USD</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-proposal-payment-type-container">
|
<div class="project-request-proposal-payment-type-container">
|
||||||
<label class="project-item-label">Payment</label>
|
<label class="project-item-label">{{$('Payment')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ fromIntToPaymentType(proposal.payment_plan.type) }}
|
{{ fromIntToPaymentType(proposal.payment_plan.type) }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-proposal-duration-container">
|
<div class="project-request-proposal-duration-container">
|
||||||
<label class="project-item-label">Duration</label>
|
<label class="project-item-label">{{$t('Duration')}}</label>
|
||||||
<p class="project-item-text">{{ proposal.duration_in_day }} days</p>
|
<p class="project-item-text">{{ proposal.duration_in_day }} {{$t(days)}}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-proposal-date-container">
|
<div class="project-request-proposal-date-container">
|
||||||
<label class="project-item-label">Update</label>
|
<label class="project-item-label">{{$t('Update')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ getDateFromFulltimeString(proposal.update_time) }}
|
{{ getDateFromFulltimeString(proposal.update_time) }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-proposal-from-container">
|
<div class="project-request-proposal-from-container">
|
||||||
<label class="project-item-label">From</label>
|
<label class="project-item-label">{{$t('From')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ proposal.proposer.first_name }} {{ proposal.proposer.last_name }}
|
{{ proposal.proposer.first_name }} {{ proposal.proposer.last_name }}
|
||||||
</p>
|
</p>
|
||||||
@ -121,13 +121,13 @@
|
|||||||
class="request-proposal-action-reject"
|
class="request-proposal-action-reject"
|
||||||
@click="rejectProposal(project, proposal_index)"
|
@click="rejectProposal(project, proposal_index)"
|
||||||
>
|
>
|
||||||
reject
|
{{$t('reject')}}
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
class="request-proposal-action-accept"
|
class="request-proposal-action-accept"
|
||||||
@click="acceptProposal(project, proposal_index)"
|
@click="acceptProposal(project, proposal_index)"
|
||||||
>
|
>
|
||||||
accept
|
{{$t('accept')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="request-proposal-content-container">
|
<div class="request-proposal-content-container">
|
||||||
@ -141,17 +141,17 @@
|
|||||||
:id="'payment-stage-' + stage_index"
|
:id="'payment-stage-' + stage_index"
|
||||||
>
|
>
|
||||||
<div class="project-request-proposal-stage-payment-container">
|
<div class="project-request-proposal-stage-payment-container">
|
||||||
<label class="project-item-label">Payment</label>
|
<label class="project-item-label">{{$t('Payment')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ stage.amount }} {{ stage.currency }}
|
{{ stage.amount }} {{ stage.currency }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-proposal-stage-duration-container">
|
<div class="project-request-proposal-stage-duration-container">
|
||||||
<label class="project-item-label">Duration</label>
|
<label class="project-item-label">{{$t('Duration')}}</label>
|
||||||
<p class="project-item-text">{{ stage.duration_in_day }} days</p>
|
<p class="project-item-text">{{ stage.duration_in_day }} {{$t('days')}}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-proposal-stage-note-container">
|
<div class="project-request-proposal-stage-note-container">
|
||||||
<label class="project-item-label">Note</label>
|
<label class="project-item-label">{{$t('Note')}}</label>
|
||||||
<p class="project-item-text">{{ stage.note }}</p>
|
<p class="project-item-text">{{ stage.note }}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -165,7 +165,7 @@
|
|||||||
<div class="accordion-body" v-if="isPendingProposal(project)">
|
<div class="accordion-body" v-if="isPendingProposal(project)">
|
||||||
<div class="float-action-container">
|
<div class="float-action-container">
|
||||||
<button class="proposal-action-withdraw" @click="withdrawAndEditProposal(project)">
|
<button class="proposal-action-withdraw" @click="withdrawAndEditProposal(project)">
|
||||||
withdraw&edit
|
{{$t('withdraw')}}&{{$t('edit')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="request-proposal-content-container">
|
<div class="request-proposal-content-container">
|
||||||
@ -179,15 +179,15 @@
|
|||||||
:id="'payment-stage-' + stage_index"
|
:id="'payment-stage-' + stage_index"
|
||||||
>
|
>
|
||||||
<div class="project-request-proposal-stage-payment-container">
|
<div class="project-request-proposal-stage-payment-container">
|
||||||
<label class="project-item-label">Payment</label>
|
<label class="project-item-label">{{$t('Payment')}}</label>
|
||||||
<p class="project-item-text">{{ stage.amount }} {{ stage.currency }}</p>
|
<p class="project-item-text">{{ stage.amount }} {{ stage.currency }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-proposal-stage-duration-container">
|
<div class="project-request-proposal-stage-duration-container">
|
||||||
<label class="project-item-label">Duration</label>
|
<label class="project-item-label">{{$t('Duration')}}</label>
|
||||||
<p class="project-item-text">{{ stage.duration_in_day }} days</p>
|
<p class="project-item-text">{{ stage.duration_in_day }} {{$t('days')}}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-request-proposal-stage-note-container">
|
<div class="project-request-proposal-stage-note-container">
|
||||||
<label class="project-item-label">Note</label>
|
<label class="project-item-label">{{$t('Note')}}</label>
|
||||||
<p class="project-item-text">{{ stage.note }}</p>
|
<p class="project-item-text">{{ stage.note }}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -211,7 +211,7 @@
|
|||||||
aria-expanded="false"
|
aria-expanded="false"
|
||||||
aria-controls="collapse-project-invite-collaborator"
|
aria-controls="collapse-project-invite-collaborator"
|
||||||
>
|
>
|
||||||
<div class="project-invite-collaborator">+ Invite</div>
|
<div class="project-invite-collaborator">+ {{$t('Invite')}}</div>
|
||||||
</button>
|
</button>
|
||||||
<div
|
<div
|
||||||
id="collapse-project-invite-collaborator"
|
id="collapse-project-invite-collaborator"
|
||||||
@ -220,7 +220,7 @@
|
|||||||
>
|
>
|
||||||
<div class="project-invite-collaborator-form-container">
|
<div class="project-invite-collaborator-form-container">
|
||||||
<div class="project-invite-collaborator-form">
|
<div class="project-invite-collaborator-form">
|
||||||
<label class="project-item-label">Input E-mail to invite other</label>
|
<label class="project-item-label">{{$t('Input E-mail to invite other')}}</label>
|
||||||
<input
|
<input
|
||||||
class="project-invite-collaborator-input"
|
class="project-invite-collaborator-input"
|
||||||
v-model="newInviteCollaborator[project_index]"
|
v-model="newInviteCollaborator[project_index]"
|
||||||
@ -232,7 +232,7 @@
|
|||||||
inviteCollaborator(project.project_id, newInviteCollaborator[project_index])
|
inviteCollaborator(project.project_id, newInviteCollaborator[project_index])
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
Submit
|
{{$t('Submit')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -250,14 +250,14 @@
|
|||||||
>
|
>
|
||||||
<div class="project-milestone-bar-container">
|
<div class="project-milestone-bar-container">
|
||||||
<div class="project-milestone-bar-progress">
|
<div class="project-milestone-bar-progress">
|
||||||
<label class="project-item-label">Progress</label>
|
<label class="project-item-label">{{$t('Progress')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ project.project.progress.current_milestone }} /
|
{{ project.project.progress.current_milestone }} /
|
||||||
{{ project.project.progress.milestones.length }} milestones
|
{{ project.project.progress.milestones.length }} {{$('milestones')}}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-milestone-bar-status">
|
<div class="project-milestone-bar-status">
|
||||||
<label class="project-item-label">Status</label>
|
<label class="project-item-label">{{$t('Status')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{
|
{{
|
||||||
fromIntToMilestoneStatus(project.project.progress.milestone_status)
|
fromIntToMilestoneStatus(project.project.progress.milestone_status)
|
||||||
@ -265,7 +265,7 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-milestone-bar-paid">
|
<div class="project-milestone-bar-paid">
|
||||||
<label class="project-item-label">Paid</label>
|
<label class="project-item-label">{{$t('Paid')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ project.project.progress.actual_paid }} /
|
{{ project.project.progress.actual_paid }} /
|
||||||
{{ project.project.progress.expected_payment }}
|
{{ project.project.progress.expected_payment }}
|
||||||
@ -273,7 +273,7 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-milestone-bar-update">
|
<div class="project-milestone-bar-update">
|
||||||
<label class="project-item-label">Update</label>
|
<label class="project-item-label">{{$t('Update')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ getDateFromFulltimeString(project.project.progress.last_update) }}
|
{{ getDateFromFulltimeString(project.project.progress.last_update) }}
|
||||||
</p>
|
</p>
|
||||||
@ -294,32 +294,32 @@
|
|||||||
:id="'project-milestone-' + milestone.index"
|
:id="'project-milestone-' + milestone.index"
|
||||||
>
|
>
|
||||||
<div class="project-milestone-index">
|
<div class="project-milestone-index">
|
||||||
<label class="project-item-label">Milestone</label>
|
<label class="project-item-label">{{$t('Milestone')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ milestone.index }}
|
{{ milestone.index }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-milestone-description">
|
<div class="project-milestone-description">
|
||||||
<label class="project-item-label">Description</label>
|
<label class="project-item-label">{{$t('Description')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ milestone.description }}
|
{{ milestone.description }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-milestone-status">
|
<div class="project-milestone-status">
|
||||||
<label class="project-item-label">Status</label>
|
<label class="project-item-label">{{$t('Status')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ fromIntToMilestoneStatus(milestone.status) }}
|
{{ fromIntToMilestoneStatus(milestone.status) }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-milestone-payment">
|
<div class="project-milestone-payment">
|
||||||
<label class="project-item-label">Payment</label>
|
<label class="project-item-label">{{$t('Payment')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ milestone.actual_paid }} / {{ milestone.expected_payment }}
|
{{ milestone.actual_paid }} / {{ milestone.expected_payment }}
|
||||||
{{ project.project.progress.payment_currency }}
|
{{ project.project.progress.payment_currency }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-milestone-update">
|
<div class="project-milestone-update">
|
||||||
<label class="project-item-label">Update</label>
|
<label class="project-item-label">{{$t('Update')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ getDateFromFulltimeString(milestone.update_time) }}
|
{{ getDateFromFulltimeString(milestone.update_time) }}
|
||||||
</p>
|
</p>
|
||||||
@ -340,7 +340,7 @@
|
|||||||
class="project-milestone-payment-confirm-button"
|
class="project-milestone-payment-confirm-button"
|
||||||
@click="handlePaymentAction(project.project, milestone)"
|
@click="handlePaymentAction(project.project, milestone)"
|
||||||
>
|
>
|
||||||
Mark As Paid
|
{{$t('Mark As Paid')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -359,19 +359,19 @@
|
|||||||
>
|
>
|
||||||
<div class="project-code-bar-container">
|
<div class="project-code-bar-container">
|
||||||
<div class="project-code-git-status">
|
<div class="project-code-git-status">
|
||||||
<label class="project-item-label">Code Depot</label>
|
<label class="project-item-label">{{$t('Code Depot')}}</label>
|
||||||
<p class="project-item-text">{{ getGitStatus(project) }}</p>
|
<p class="project-item-text">{{ getGitStatus(project) }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-code-commits">
|
<div class="project-code-commits">
|
||||||
<label class="project-item-label">Commits</label>
|
<label class="project-item-label">{{$('Commits')}}</label>
|
||||||
<p class="project-item-text">{{ project.project.code.total_commits }}</p>
|
<p class="project-item-text">{{ project.project.code.total_commits }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-code-last-committer">
|
<div class="project-code-last-committer">
|
||||||
<label class="project-item-label">Last committer</label>
|
<label class="project-item-label">{{$('Last committer')}}</label>
|
||||||
<p class="project-item-text">{{ project.project.code.last_commiter }}</p>
|
<p class="project-item-text">{{ project.project.code.last_commiter }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-code-last-update">
|
<div class="project-code-last-update">
|
||||||
<label class="project-item-label">Update</label>
|
<label class="project-item-label">{{$t('Update')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ getDateFromFulltimeString(project.project.code.last_update) }}
|
{{ getDateFromFulltimeString(project.project.code.last_update) }}
|
||||||
</p>
|
</p>
|
||||||
@ -395,12 +395,12 @@
|
|||||||
trigger="click"
|
trigger="click"
|
||||||
delay='{"show":"500", "hide":"100"}'
|
delay='{"show":"500", "hide":"100"}'
|
||||||
>
|
>
|
||||||
copy git url
|
{{$t('copy git url')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-code-statistics-container">
|
<div class="project-code-statistics-container">
|
||||||
<button class="project-code-manage-button">Manage</button>
|
<button class="project-code-manage-button">{{$t('Manage')}}</button>
|
||||||
TO BE IMPLEMENTED.
|
{{$t('TO BE IMPLEMENTED.')}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -417,19 +417,19 @@
|
|||||||
>
|
>
|
||||||
<div class="project-issue-bar-container">
|
<div class="project-issue-bar-container">
|
||||||
<div class="project-issue-open-issues">
|
<div class="project-issue-open-issues">
|
||||||
<label class="project-item-label">Open issues</label>
|
<label class="project-item-label">{{$t('Open issues')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ project.project.issue.number_of_open_issues }}
|
{{ project.project.issue.number_of_open_issues }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-issue-resolved-issues">
|
<div class="project-issue-resolved-issues">
|
||||||
<label class="project-item-label">Resolved issues</label>
|
<label class="project-item-label">{{$t('Resolved issues')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ project.project.issue.number_of_resolved_issues }}
|
{{ project.project.issue.number_of_resolved_issues }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-issue-closed-issues">
|
<div class="project-issue-closed-issues">
|
||||||
<label class="project-item-label">Closed issues</label>
|
<label class="project-item-label">{{$t('Closed issues')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ project.project.issue.number_of_closed_issues }}
|
{{ project.project.issue.number_of_closed_issues }}
|
||||||
</p>
|
</p>
|
||||||
@ -455,7 +455,7 @@
|
|||||||
aria-expanded="false"
|
aria-expanded="false"
|
||||||
aria-controls="collapse-project-issue"
|
aria-controls="collapse-project-issue"
|
||||||
>
|
>
|
||||||
<div class="project-add-new-issue">+ Add Issue</div>
|
<div class="project-add-new-issue">+ {{$t('Add Issue')}}</div>
|
||||||
</button>
|
</button>
|
||||||
<div
|
<div
|
||||||
id="collapse-project-new-issue"
|
id="collapse-project-new-issue"
|
||||||
@ -464,7 +464,7 @@
|
|||||||
>
|
>
|
||||||
<div class="project-issue-description-container">
|
<div class="project-issue-description-container">
|
||||||
<div class="project-issue-description">
|
<div class="project-issue-description">
|
||||||
<label class="project-item-label">New issue description</label>
|
<label class="project-item-label">{{$t('New issue description')}}</label>
|
||||||
<textarea
|
<textarea
|
||||||
class="project-new-issue-textarea"
|
class="project-new-issue-textarea"
|
||||||
type="text"
|
type="text"
|
||||||
@ -482,7 +482,7 @@
|
|||||||
)
|
)
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
Submit
|
{{$t('Submit')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -506,17 +506,17 @@
|
|||||||
aria-controls="collapse-project-issue-details"
|
aria-controls="collapse-project-issue-details"
|
||||||
>
|
>
|
||||||
<div class="project-issue-title">
|
<div class="project-issue-title">
|
||||||
<label class="project-item-label">Issue title</label>
|
<label class="project-item-label">{{$t('Issue title')}}</label>
|
||||||
<p class="project-item-text">{{ issue.title }}</p>
|
<p class="project-item-text">{{ issue.title }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-issue-status">
|
<div class="project-issue-status">
|
||||||
<label class="project-item-label">Status</label>
|
<label class="project-item-label">{{$t('Status')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ fromIntToProjectIssueStatus(issue.status) }}
|
{{ fromIntToProjectIssueStatus(issue.status) }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-issue-update">
|
<div class="project-issue-update">
|
||||||
<label class="project-item-label">Last updated</label>
|
<label class="project-item-label">{{$t('Last updated')}}</label>
|
||||||
<p class="project-item-text">
|
<p class="project-item-text">
|
||||||
{{ getDateFromFulltimeString(issue.update_time) }}
|
{{ getDateFromFulltimeString(issue.update_time) }}
|
||||||
</p>
|
</p>
|
||||||
@ -529,7 +529,7 @@
|
|||||||
:data-bs-parent="'#collapse-project-issue-details' + issue_index"
|
:data-bs-parent="'#collapse-project-issue-details' + issue_index"
|
||||||
>
|
>
|
||||||
<div class="project-issue-description-container">
|
<div class="project-issue-description-container">
|
||||||
<label class="project-item-label">Issue description</label>
|
<label class="project-item-label">{{$t('Issue description')}}</label>
|
||||||
<p class="project-item-text">{{ issue.description }}</p>
|
<p class="project-item-text">{{ issue.description }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="project-issue-action-container">
|
<div class="project-issue-action-container">
|
||||||
@ -538,21 +538,21 @@
|
|||||||
class="project-issue-action-button"
|
class="project-issue-action-button"
|
||||||
@click="setProjectIssueStatus(issue.id, 1)"
|
@click="setProjectIssueStatus(issue.id, 1)"
|
||||||
>
|
>
|
||||||
Resolve
|
{{$t('Resolve')}}
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
:hidden="!showIssueActionButton(project.project, issue, 'Confirm')"
|
:hidden="!showIssueActionButton(project.project, issue, 'Confirm')"
|
||||||
class="project-issue-action-button"
|
class="project-issue-action-button"
|
||||||
@click="setProjectIssueStatus(issue.id, 2)"
|
@click="setProjectIssueStatus(issue.id, 2)"
|
||||||
>
|
>
|
||||||
Confirm
|
{{$t('Confirm')}}
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
:hidden="!showIssueActionButton(project.project, issue, 'Reopen')"
|
:hidden="!showIssueActionButton(project.project, issue, 'Reopen')"
|
||||||
class="project-issue-action-button"
|
class="project-issue-action-button"
|
||||||
@click="setProjectIssueStatus(issue.id, 0)"
|
@click="setProjectIssueStatus(issue.id, 0)"
|
||||||
>
|
>
|
||||||
Reopen
|
{{$t('Reopen')}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user