2019-05-09 18:54:39 +12:00
<?php
use Utopia\Locale\Locale;
?>
< div class = "cover" >
< h1 class = "zone xl margin-bottom-large margin-top" >
<?php echo Locale :: getText ( 'console.settings.title' ); ?>
< / h1 >
< / div >
2019-08-08 06:10:53 +12:00
< div class = "zone xl"
data-service="projects.getProject"
data-scope="console"
data-name="console-project"
data-event="load"
data-param-project-id="{{router.params.project}}"
data-success="trigger"
data-success-param-trigger-events="project-load">
2019-05-09 18:54:39 +12:00
< div class = "zone xl" >
2019-05-09 20:23:22 +12:00
< ul class = "phases clear" data-ui-phases data-selected = "{{router.params.tab}}" >
< li data-state = "/console/settings?project={{router.params.project}}" >
2019-05-09 18:54:39 +12:00
< h2 > <?php echo Locale :: getText ( 'console.settings.section.overview.title' ); ?> </ h2 >
2019-08-08 06:10:53 +12:00
< form
data-service="projects.updateProject"
data-scope="console"
data-event="submit"
data-param-project-id="{{router.params.project}}"
data-success="alert,trigger"
data-success-param-alert-text="Saved project successfully"
data-success-param-trigger-events="project-update"
2019-08-08 17:09:49 +12:00
data-failure="alert"
2019-08-09 01:43:24 +12:00
data-failure-param-alert-text="Failed to update project"
data-failure-param-alert-classname="error">
2019-05-09 18:54:39 +12:00
2019-05-10 04:15:51 +12:00
< input name = "$uid" type = "hidden" data-ls-bind = "{{console-project.$uid}}" / >
2019-05-09 18:54:39 +12:00
< div class = "row" >
< div class = "col span-9" >
< div class = "box" >
< label for = "name" > Name< / label >
2019-05-10 04:15:51 +12:00
< input name = "name" id = "name" type = "text" autocomplete = "off" data-ls-bind = "{{console-project.name}}" data-forms-text-direction required >
2019-05-09 18:54:39 +12:00
< label for = "name" > Project ID< / label >
< div class = "input-copy" >
2019-05-10 04:15:51 +12:00
< input data-forms-copy type = "text" disabled data-ls-bind = "{{router.params.project}}" / >
2019-05-09 18:54:39 +12:00
< / div >
< label for = "description" > Description < small > (optional)< / small > < / label >
2019-05-10 04:15:51 +12:00
< textarea name = "description" id = "description" autocomplete = "off" placeholder = "Help us make the world a better place" data-ls-bind = "{{console-project.description}}" data-forms-text-direction data-forms-text-count > < / textarea >
2019-05-09 18:54:39 +12:00
< label for = "url" > Website < small > (optional)< / small > < / label >
2019-05-10 04:15:51 +12:00
< input name = "url" id = "url" type = "url" class = "full-width" autocomplete = "off" placeholder = "https://acme-corp.com" data-ls-bind = "{{console-project.url}}" >
2019-05-09 18:54:39 +12:00
< hr / >
< h3 > Clients< / h3 >
< input name = "clients" type = "hidden" data-cast-to = "array-empty" >
< div data-ls-loop = "console-project.clients" data-ls-as = "client" style = "overflow: hidden" >
< div class = "margin-bottom-small" >
< div data-forms-remove class = "row thin" >
< div class = "col span-9" >
2019-05-10 04:15:51 +12:00
< input name = "clients" type = "url" class = "full-width" autocomplete = "off" placeholder = "https://acme-corp.com" data-ls-bind = "{{client}}" data-cast-to = "array" >
2019-05-09 18:54:39 +12:00
< / div >
< div class = "col span-3" >
< button type = "button" data-remove class = "reverse danger pull-end" > < i class = "icon-cancel" > < / i > < / button >
< / div >
< / div >
< / div >
< / div >
< div data-forms-clone = "" data-first = "0" >
< div class = "margin-bottom-small" >
< div data-forms-remove class = "row thin" >
< div class = "col span-9" >
< input name = "clients" type = "url" class = "full-width" autocomplete = "off" placeholder = "https://acme-corp.com" data-cast-to = "array" >
< / div >
< div class = "col span-3" >
< button type = "button" data-remove class = "reverse danger pull-end" > < i class = "icon-cancel" > < / i > < / button >
< / div >
< / div >
< / div >
< / div >
< hr / >
2019-08-06 16:19:16 +12:00
< button class = "" type = "submit" > Save< / button >
2019-05-09 18:54:39 +12:00
< / div >
< / div >
< div class = "col span-3 box-aside" >
< label for = "name" > Logo< / label >
< div class = "text-center clear" >
2019-08-05 17:51:02 +12:00
< input type = "hidden" name = "logo" data-ls-bind = "{{console-project.logo}}" data-read = " <?php echo $this -> escape ( json_encode ([ '*' ])); ?> " data-write = " <?php echo $this -> escape ( json_encode ([ 'team:{{console-project.teamId}}' ])); ?> " data-accept = "image/*" data-forms-upload = "" data-scope = "console" data-default = "" >
2019-05-09 18:54:39 +12:00
< / div >
< / div >
< / div >
< / form >
< / li >
2019-08-06 16:19:16 +12:00
< li data-state = "/console/settings/privacy?project={{router.params.project}}" >
2019-08-05 17:51:02 +12:00
2019-08-08 06:10:53 +12:00
< form
data-service="projects.updateProject"
data-scope="console"
data-event="submit"
data-param-project-id="{{router.params.project}}"
data-success="alert,trigger"
data-success-param-alert-text="Saved project successfully"
data-success-param-trigger-events="project-update"
2019-08-08 17:09:49 +12:00
data-failure="alert"
2019-08-09 01:43:24 +12:00
data-failure-param-alert-text="Failed to update project"
data-failure-param-alert-classname="error">
2019-08-05 17:51:02 +12:00
< h2 > Privacy & Legal< / h2 >
< div class = "box margin-bottom" >
< input name = "$uid" type = "hidden" data-ls-bind = "{{console-project.$uid}}" / >
< div class = "row thin" >
< div class = "col span-6" >
< label for = "legalName" > Legal Name< / label >
< input name = "legalName" id = "legalName" type = "text" autocomplete = "off" data-ls-bind = "{{console-project.legalName}}" data-forms-text-direction >
< label for = "legalCountry" > Country< / label >
< select id = "legalCountry" name = "legalCountry" data-ls-options = "{{geo-countries}}" data-ls-bind = "{{console-project.legalCountry}}" > < / select >
< label for = "legalCity" > City< / label >
< input name = "legalCity" id = "legalCity" type = "text" autocomplete = "off" data-ls-bind = "{{console-project.legalCity}}" data-forms-text-direction >
< / div >
< div class = "col span-6" >
< label for = "legalTaxId" > Tax ID< / label >
< input name = "legalTaxId" id = "legalTaxId" type = "text" autocomplete = "off" data-ls-bind = "{{console-project.legalTaxId}}" data-forms-text-direction >
< label for = "legalState" > State< / label >
< input name = "legalState" id = "legalState" type = "text" autocomplete = "off" data-ls-bind = "{{console-project.legalState}}" data-forms-text-direction >
< label for = "legalAddress" > Address< / label >
< input name = "legalAddress" id = "legalAddress" type = "text" autocomplete = "off" data-ls-bind = "{{console-project.legalAddress}}" data-forms-text-direction >
< / div >
< / div >
2019-08-07 00:22:54 +12:00
< hr / >
2019-08-05 17:51:02 +12:00
< button class = "" type = "submit" > Save< / button >
< / div >
< / form >
< / li >
2019-05-12 18:59:49 +12:00
< li data-state = "/console/settings/members?project={{router.params.project}}" >
2019-05-09 18:54:39 +12:00
< h2 > <?php echo Locale :: getText ( 'console.settings.section.members.title' ); ?> </ h2 >
2019-08-08 06:10:53 +12:00
< div class = "zone xl"
data-service="teams.getTeamMembers"
data-scope="console"
2019-08-08 17:09:49 +12:00
data-event="load,membership-create,membership-update,membership-delete"
2019-08-08 06:10:53 +12:00
data-name="members"
data-param-team-id="{{console-project.teamId}}"
data-success="trigger"
data-success-param-trigger-events="members-load">
2019-05-09 18:54:39 +12:00
< div class = "box margin-bottom" >
< ul data-ls-loop = "members" data-ls-as = "member" class = "list" >
< li class = "clear" >
2019-08-08 06:10:53 +12:00
< form class = "pull-end"
2019-08-09 09:49:46 +12:00
data-service="teams.deleteTeamMembership"
2019-08-08 06:10:53 +12:00
data-scope="console"
data-event="submit"
data-success="alert,trigger"
data-success-param-alert-text="<?php echo Locale :: getText ( 'console.settings.section.members.leave.success' ); ?> "
2019-08-08 17:09:49 +12:00
data-success-param-trigger-events="membership-delete"
data-failure="alert"
2019-08-09 01:43:24 +12:00
data-failure-param-alert-text="<?php echo Locale :: getText ( 'console.settings.section.members.leave.failure' ); ?> "
data-failure-param-alert-classname="error">
2019-05-09 18:54:39 +12:00
2019-08-07 08:31:09 +12:00
< input name = "teamId" id = "teamId" type = "hidden" data-ls-bind = "{{console-project.teamId}}" >
2019-05-10 04:15:51 +12:00
< input name = "inviteId" id = "inviteId" type = "hidden" data-ls-bind = "{{member.inviteId}}" >
2019-05-09 18:54:39 +12:00
< button class = "danger" > <?php echo Locale :: getText ( 'console.settings.section.members.labels.leave' ); ?> </ button >
< / form >
2019-05-12 03:26:03 +12:00
< div data-ls-if = "false === {{member.confirm}}" class = "pull-end margin-end" style = "display: none;" >
2019-08-08 06:10:53 +12:00
< form
2019-08-08 17:09:49 +12:00
data-service="teams.createTeamMembershipResend"
2019-08-08 06:10:53 +12:00
data-scope="console"
data-event="submit"
2019-08-09 09:49:46 +12:00
data-loading="Resending invitation, please wait..."
2019-08-08 06:10:53 +12:00
data-success="alert,trigger"
data-success-param-alert-text="<?php echo Locale :: getText ( 'console.settings.section.members.invite.success' ); ?> "
2019-08-08 17:09:49 +12:00
data-success-param-trigger-events="membership-resend"
data-failure="alert"
2019-08-09 01:43:24 +12:00
data-failure-param-alert-text="<?php echo Locale :: getText ( 'console.settings.section.members.invite.failure' ); ?> "
data-failure-param-alert-classname="error">
2019-08-09 09:49:46 +12:00
< input name = "teamId" id = "teamId" type = "hidden" data-ls-bind = "{{console-project.teamId}}" >
2019-05-10 04:15:51 +12:00
< input name = "inviteId" id = "inviteId" type = "hidden" data-ls-bind = "{{member.inviteId}}" >
< input name = "redirect" type = "hidden" data-ls-bind = "https://{{env.DOMAIN}}/auth/join?project={{router.params.project}}" / >
2019-05-09 18:54:39 +12:00
< button class = "reverse" > <?php echo Locale :: getText ( 'console.settings.section.members.labels.resend' ); ?> </ button >
< / form >
< / div >
2019-08-09 17:03:41 +12:00
< img src = "" data-ls-attrs = "src={{member|gravatar}}" data-size = "200" alt = "User Avatar" class = "avatar pull-start margin-end" / >
2019-08-07 00:22:54 +12:00
2019-05-09 18:54:39 +12:00
< div class = "margin-bottom-small" >
2019-05-12 03:26:03 +12:00
< span data-ls-bind = "{{member.name}}" ></ span > < span class = "tag" data-ls-bind = "{{member.roles.0|id2role}}" ></ span > < span data-ls-if = "false === {{member.confirm}}" class = "tag red" style = "display: none;" > <?php echo Locale :: getText ( 'console.settings.section.members.labels.pending' ); ?> </ span >
2019-05-09 18:54:39 +12:00
< / div >
2019-05-10 04:15:51 +12:00
< span class = "note" data-ls-bind = "{{member.email}}" > < / span >
2019-05-09 18:54:39 +12:00
< / li >
< / ul >
< / div >
< div data-ui-modal class = "modal close width-small" data-button-text = " <?php echo Locale :: getText ( 'console.settings.section.members.labels.invite' ); ?> " data-button-class = "" >
2019-05-13 08:27:33 +12:00
< button type = "button" class = "close pull-end" data-ui-modal-close > < i class = "icon-cancel" > < / i > < / button >
2019-05-09 18:54:39 +12:00
< h1 > <?php echo Locale :: getText ( 'console.settings.section.members.labels.invite' ); ?> </ h1 >
2019-08-08 17:09:49 +12:00
< form name = "teams.createTeamMembership"
data-service="teams.createTeamMembership"
2019-08-08 06:10:53 +12:00
data-scope="console"
data-event="submit"
2019-08-09 09:49:46 +12:00
data-loading="Sending invitation, please wait..."
2019-08-08 06:10:53 +12:00
data-success="alert,trigger,reset"
data-success-param-alert-text="<?php echo Locale :: getText ( 'console.settings.section.members.invite.success' ); ?> "
2019-08-08 17:09:49 +12:00
data-success-param-trigger-events="membership-create,modal-close"
data-failure="alert"
2019-08-09 01:43:24 +12:00
data-failure-param-alert-text="<?php echo Locale :: getText ( 'console.settings.section.members.invite.failure' ); ?> "
data-failure-param-alert-classname="error">
2019-05-09 18:54:39 +12:00
2019-08-08 17:09:49 +12:00
< input name = "teamId" id = "teamId" type = "hidden" data-ls-bind = "{{console-project.teamId}}" >
2019-05-10 04:15:51 +12:00
< input name = "redirect" type = "hidden" data-ls-bind = "https://{{env.DOMAIN}}/auth/join?project={{router.params.project}}" / >
2019-05-09 18:54:39 +12:00
< label for = "name" > <?php echo Locale :: getText ( 'console.settings.section.members.labels.name' ); ?> < small > (<?php echo Locale :: getText ( 'general.optional' ); ?> )</ small ></ label >
< input name = "name" id = "name" type = "text" autocomplete = "name" >
< label for = "email" > <?php echo Locale :: getText ( 'console.settings.section.members.labels.email' ); ?> </ label >
< input name = "email" id = "email" type = "email" autocomplete = "email" required >
< label for = "roles" > <?php echo Locale :: getText ( 'console.settings.section.members.labels.role' ); ?> </ label >
2019-08-08 17:09:49 +12:00
< select id = "roles" name = "roles" required data-ls-loop = "env.ROLES" data-ls-as = "role" data-cast-to = "array" >
< option data-ls-attrs = "value={{role.type}}" data-ls-bind = "{{role.label}}" > < / option >
< / select >
2019-05-09 18:54:39 +12:00
< div class = "clear" >
< button > <?php echo Locale :: getText ( 'console.settings.section.members.labels.send' ); ?> </ button >
2019-05-13 08:27:33 +12:00
< button data-ui-modal-close = "" type = "button" class = "reverse" > <?php echo Locale :: getText ( 'console.settings.section.members.labels.cancel' ); ?> </ button >
2019-05-09 18:54:39 +12:00
< / div >
< / form >
< / div >
< / div >
< / li >
< / ul >
< / div >
< / div >