1
0
Fork 0
mirror of synced 2024-05-20 20:52:36 +12:00

Upgrading JS framework version

This commit is contained in:
eldadfux 2019-05-09 11:23:22 +03:00
parent 81661159db
commit c8747a0c5e
23 changed files with 484 additions and 486 deletions

View file

@ -8,7 +8,7 @@ use Utopia\Locale\Locale;
</div>
<div class="zone xl">
<ul class="phases clear" data-ui-phases data-selected="{{state.params.tab}}">
<ul class="phases clear" data-ui-phases data-selected="{{router.params.tab}}">
<li data-state="/console/account">
<div class=""
data-appwrite="account.get"

View file

@ -4,7 +4,7 @@ use Utopia\Locale\Locale;
<header class="clear" data-ls-rerender="project.update">
&nbsp;&nbsp;&nbsp;
<div data-ls-wait="projects.load" class="list pull-start project-only">
<select data-ls-options="{{projects}}" data-key="{{option.$uid}}" data-label="{{option.name}}" data-ls-echo="{{state.params.project}}" aria-label="<?php echo $this->escape(Locale::getText('console.navigation.switch')); ?>" data-switch=""></select>
<select data-ls-options="{{projects}}" data-key="{{option.$uid}}" data-label="{{option.name}}" data-ls-echo="{{router.params.project}}" aria-label="<?php echo $this->escape(Locale::getText('console.navigation.switch')); ?>" data-switch=""></select>
</div>
<button style="width: 40px; height: 40px; line-height: 40px; overflow: visible;" id="setup" class="tooltip round down project-only" aria-label="Quick Start" data-tooltip="Create a new project"><i class="icon-plus"></i></button>
@ -51,7 +51,7 @@ use Utopia\Locale\Locale;
<ul class="links">
<li>
<a data-ls-href="/console/home?project={{state.params.project}}">
<a data-ls-href="/console/home?project={{router.params.project}}">
<i class="icon-home"></i>
Home
</a>
@ -62,19 +62,19 @@ use Utopia\Locale\Locale;
<ul class="links">
<li>
<a data-ls-href="/console/database?project={{state.params.project}}">
<a data-ls-href="/console/database?project={{router.params.project}}">
<i class="icon-database"></i>
Database
</a>
</li>
<li>
<a data-ls-href="/console/storage?project={{state.params.project}}">
<a data-ls-href="/console/storage?project={{router.params.project}}">
<i class="icon-folder"></i>
Storage
</a>
</li>
<li>
<a data-ls-href="/console/users?project={{state.params.project}}">
<a data-ls-href="/console/users?project={{router.params.project}}">
<i class="icon-users"></i>
Users
</a>
@ -85,19 +85,19 @@ use Utopia\Locale\Locale;
<ul class="links">
<li>
<a data-ls-href="/console/settings/keys?project={{state.params.project}}">
<a data-ls-href="/console/settings/keys?project={{router.params.project}}">
<i class="icon-key-inv"></i>
API Keys
</a>
</li>
<li>
<a data-ls-href="/console/settings/webhooks?project={{state.params.project}}">
<a data-ls-href="/console/settings/webhooks?project={{router.params.project}}">
<i class="icon-link"></i>
Webhooks
</a>
</li>
<li>
<a data-ls-href="/console/settings/tasks?project={{state.params.project}}">
<a data-ls-href="/console/settings/tasks?project={{router.params.project}}">
<i class="icon-clock"></i>
Tasks
</a>
@ -106,7 +106,7 @@ use Utopia\Locale\Locale;
<ul class="links bottom project-only">
<li>
<a data-ls-href="/console/settings?project={{state.params.project}}"><i class="icon-cog"></i> Settings</a>
<a data-ls-href="/console/settings?project={{router.params.project}}"><i class="icon-cog"></i> Settings</a>
</li>
</ul>
</div>
@ -125,11 +125,11 @@ use Utopia\Locale\Locale;
data-success-triggers="projects.load" data-singleton="true">
</div>
<div data-ls-if="'{{state.params.project}}' != 'undefined'" data-ls-rerender="project.reload">
<div data-ls-if="'{{router.params.project}}' != 'undefined'" data-ls-rerender="project.reload">
<div data-appwrite="projects.get"
data-event="load"
data-service="console-project"
data-param-project-id="{{state.params.project}}"
data-param-project-id="{{router.params.project}}"
data-success="render,trigger"
data-success-rerender="platform.new,platform.update,platform.delete"
data-success-triggers="project.load">

View file

@ -3,7 +3,7 @@ use Utopia\Locale\Locale;
?>
<div class="cover margin-bottom-large">
<h1 class="zone xl margin-bottom-large margin-top">
<a data-ls-href="/console/openings/new?company={{state.params.company}}" class="button icon margin-top-tiny pull-end"><i class="icon-plus"></i> &nbsp;Upload</a>
<a data-ls-href="/console/openings/new?company={{router.params.company}}" class="button icon margin-top-tiny pull-end"><i class="icon-plus"></i> &nbsp;Upload</a>
<?php echo Locale::getText('console.database.title'); ?>
</h1>

View file

@ -8,11 +8,11 @@
<p data-ls-echo="{{console-project.description}}" data-default="Update your project description under project settings." class="note text-one-liner margin-bottom-large">&nbsp;</p>
<ul class="margin-top margin-bottom-large clear">
<li class="pull-start margin-end"><a data-ls-href="/console/settings?project={{state.params.project}}"><i class="icon-cog"></i> &nbsp;Settings</a> &nbsp;&nbsp;</li>
<li class="pull-start margin-end"><a data-ls-href="/console/settings/keys?project={{state.params.project}}"><i class="icon-key-inv"></i> &nbsp;API Keys</a> &nbsp;&nbsp;</li>
<li class="pull-start margin-end"><a data-ls-href="/console/settings/webhooks?project={{state.params.project}}"><i class="icon-link"></i> &nbsp;Webhooks</a> &nbsp;&nbsp;</li>
<li class="pull-start margin-end"><a data-ls-href="/console/settings/tasks?project={{state.params.project}}"><i class="icon-clock"></i> &nbsp;Tasks</a> &nbsp;&nbsp;</li>
<!--<li class="pull-start margin-end"><a data-ls-href="/console/settings/members?project={{state.params.project}}"><i class="icon-users"></i> &nbsp;Members</a> &nbsp;&nbsp;</li>-->
<li class="pull-start margin-end"><a data-ls-href="/console/settings?project={{router.params.project}}"><i class="icon-cog"></i> &nbsp;Settings</a> &nbsp;&nbsp;</li>
<li class="pull-start margin-end"><a data-ls-href="/console/settings/keys?project={{router.params.project}}"><i class="icon-key-inv"></i> &nbsp;API Keys</a> &nbsp;&nbsp;</li>
<li class="pull-start margin-end"><a data-ls-href="/console/settings/webhooks?project={{router.params.project}}"><i class="icon-link"></i> &nbsp;Webhooks</a> &nbsp;&nbsp;</li>
<li class="pull-start margin-end"><a data-ls-href="/console/settings/tasks?project={{router.params.project}}"><i class="icon-clock"></i> &nbsp;Tasks</a> &nbsp;&nbsp;</li>
<!--<li class="pull-start margin-end"><a data-ls-href="/console/settings/members?project={{router.params.project}}"><i class="icon-users"></i> &nbsp;Members</a> &nbsp;&nbsp;</li>-->
</ul>
</div>
</div>
@ -23,7 +23,7 @@
data-appwrite="projects.getProjectUsage"
data-event="load"
data-service="usage"
data-param-project-id="{{state.params.project}}"
data-param-project-id="{{router.params.project}}"
data-success="render,trigger"
data-error="render"
data-success-triggers="usage.load">
@ -126,7 +126,7 @@
</div>
</div>
<a data-ls-href="/console/settings/keys?project={{state.params.project}}" class="pull-end">Manage Your API Keys</a>
<a data-ls-href="/console/settings/keys?project={{router.params.project}}" class="pull-end">Manage Your API Keys</a>
<div class="drop-list pull-start" data-ls-ui-open="" data-button-text="Add Platform" data-button-class="button" tabindex="1">
<ul>

View file

@ -48,7 +48,7 @@ $scopes = [ // TODO sync with project list
data-scope="console"
data-service="console-project"
data-event="load"
data-param-project-id="{{state.params.project}}"
data-param-project-id="{{router.params.project}}"
data-success="render,trigger"
data-error="render"
data-success-rerender=""
@ -56,14 +56,14 @@ $scopes = [ // TODO sync with project list
data-success-triggers="project.load">
<div class="zone xl">
<ul class="phases clear" data-ui-phases data-selected="{{state.params.tab}}">
<li data-state="/console/settings?project={{state.params.project}}">
<ul class="phases clear" data-ui-phases data-selected="{{router.params.tab}}">
<li data-state="/console/settings?project={{router.params.project}}">
<h2><?php echo Locale::getText('console.settings.section.overview.title'); ?></h2>
<form data-appwrite="projects.update"
data-scope="console"
data-event="submit"
data-param-project-id="{{state.params.project}}"
data-param-project-id="{{router.params.project}}"
data-success="alert,trigger"
data-success-alert="Saved project successfully"
data-success-triggers="project.update"
@ -80,7 +80,7 @@ $scopes = [ // TODO sync with project list
<label for="name">Project ID</label>
<div class="input-copy">
<input data-forms-copy type="text" disabled data-ls-echo="{{state.params.project}}" />
<input data-forms-copy type="text" disabled data-ls-echo="{{router.params.project}}" />
</div>
<label for="description">Description &nbsp;<small>(optional)</small></label>
@ -171,7 +171,7 @@ $scopes = [ // TODO sync with project list
</div>
</form>
</li>
<li data-state="/console/settings/keys?project={{state.params.project}}">
<li data-state="/console/settings/keys?project={{router.params.project}}">
<h2><?php echo Locale::getText('console.settings.section.keys.title'); ?></h2>
<div class="zone xl"
@ -179,7 +179,7 @@ $scopes = [ // TODO sync with project list
data-scope="console"
data-event="load"
data-service="console-keys"
data-param-project-id="{{state.params.project}}"
data-param-project-id="{{router.params.project}}"
data-success="render,trigger"
data-success-rerender="key.new,key.update,key.delete"
data-success-triggers="project.load"
@ -316,7 +316,7 @@ $scopes = [ // TODO sync with project list
</div>
</div>
</li>
<li data-state="/console/settings/webhooks?project={{state.params.project}}">
<li data-state="/console/settings/webhooks?project={{router.params.project}}">
<h2><?php echo Locale::getText('console.settings.section.webhooks.title'); ?></h2>
<div class="zone xl"
@ -324,7 +324,7 @@ $scopes = [ // TODO sync with project list
data-scope="console"
data-event="load"
data-service="console-webhooks"
data-param-project-id="{{state.params.project}}"
data-param-project-id="{{router.params.project}}"
data-success="render,trigger"
data-success-rerender="webhook.new,webhook.update,webhook.delete"
data-success-triggers="project.load"
@ -514,7 +514,7 @@ $scopes = [ // TODO sync with project list
</div>
</li>
<li data-state="/console/settings/tasks?project={{state.params.project}}">
<li data-state="/console/settings/tasks?project={{router.params.project}}">
<h2><?php echo Locale::getText('console.settings.section.tasks.title'); ?></h2>
<div class="zone xl"
@ -522,7 +522,7 @@ $scopes = [ // TODO sync with project list
data-scope="console"
data-event="load"
data-service="console-tasks"
data-param-project-id="{{state.params.project}}"
data-param-project-id="{{router.params.project}}"
data-success="render,trigger"
data-success-rerender="task.new,task.update,task.delete"
data-success-triggers="project.load"
@ -815,7 +815,7 @@ $scopes = [ // TODO sync with project list
</div>
</div>
</li>
<li data-state="/console/settings/members?project={{state.params.project}}" data-ls-wait="project.load">
<li data-state="/console/settings/members?project={{router.params.project}}" data-ls-wait="project.load">
<h2><?php echo Locale::getText('console.settings.section.members.title'); ?></h2>
<div class="zone xl"
@ -858,7 +858,7 @@ $scopes = [ // TODO sync with project list
data-error="alert"
data-error-alert="<?php echo Locale::getText('console.settings.section.members.invite.failure'); ?>">
<input name="inviteId" id="inviteId" type="hidden" data-ls-echo="{{member.inviteId}}">
<input name="redirect" type="hidden" data-ls-echo="https://{{env.DOMAIN}}/auth/join?project={{state.params.project}}" />
<input name="redirect" type="hidden" data-ls-echo="https://{{env.DOMAIN}}/auth/join?project={{router.params.project}}" />
<button class="reverse"><?php echo Locale::getText('console.settings.section.members.labels.resend'); ?></button>
</form>
@ -889,7 +889,7 @@ $scopes = [ // TODO sync with project list
data-error-alert="<?php echo Locale::getText('console.settings.section.members.invite.failure'); ?>">
<input name="team" id="team" type="hidden" data-ls-echo="{{console-project.teamId}}">
<input name="redirect" type="hidden" data-ls-echo="https://{{env.DOMAIN}}/auth/join?project={{state.params.project}}" />
<input name="redirect" type="hidden" data-ls-echo="https://{{env.DOMAIN}}/auth/join?project={{router.params.project}}" />
<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">

View file

@ -6,7 +6,7 @@ $providers = $this->getParam('providers', []);
<div class="cover margin-bottom-large">
<h1 class="zone xl margin-bottom-large margin-top">
<a data-ls-href="/console/openings/new?company={{state.params.company}}" class="button icon margin-top-tiny pull-end"><i class="icon-plus"></i> &nbsp;Upload</a>
<a data-ls-href="/console/openings/new?company={{router.params.company}}" class="button icon margin-top-tiny pull-end"><i class="icon-plus"></i> &nbsp;Upload</a>
<?php echo Locale::getText('console.storage.title'); ?>
</h1>
@ -53,7 +53,7 @@ $providers = $this->getParam('providers', []);
<li>
<div class="box padding-small margin-bottom">
<img data-ls-src="//{{env.DOMAIN}}/v1/storage/files/{{file.$uid}}/preview?width=100&height=100&project={{state.params.project}}&mode=admin" class="pull-start avatar margin-end" />
<img data-ls-src="//{{env.DOMAIN}}/v1/storage/files/{{file.$uid}}/preview?width=100&height=100&project={{router.params.project}}&mode=admin" class="pull-start avatar margin-end" />
<button class="pull-end strip margin-top-tiny"><i class="icon icon-dot-3"></i></button>
<div data-ls-echo="{{file.name}}" data-ls-title="{{file.name}}" class="text-one-liner margin-bottom-tiny">&nbsp;</div>

View file

@ -11,8 +11,8 @@ $providers = $this->getParam('providers', []);
</div>
<div class="zone xl" data-ls-rerender="project.load">
<ul class="phases clear" data-ui-phases data-selected="{{state.params.tab}}">
<li data-state="/console/users?project={{state.params.project}}">
<ul class="phases clear" data-ui-phases data-selected="{{router.params.tab}}">
<li data-state="/console/users?project={{router.params.project}}">
<h2><?php echo Locale::getText('console.users.section.users.title'); ?></h2>
@ -96,7 +96,7 @@ $providers = $this->getParam('providers', []);
<img src="" data-ui-gravatar="{{user.email}}" data-name="{{user.name}}" data-size="60" alt="User Avatar" class="avatar pull-start" />
</td>
<td data-title="Name: ">
<a data-ls-href="/console/users/view?id={{user.$uid}}&project={{state.params.project}}" data-ls-echo="{{user.name}}"></a>
<a data-ls-href="/console/users/view?id={{user.$uid}}&project={{router.params.project}}" data-ls-echo="{{user.name}}"></a>
</td>
<td data-title="Email: ">
<span data-ls-echo="{{user.email}}" class="note"></span>
@ -141,7 +141,7 @@ $providers = $this->getParam('providers', []);
</div>
</div>
</li>
<li data-state="/console/users/teams?project={{state.params.project}}">
<li data-state="/console/users/teams?project={{router.params.project}}">
<h2><?php echo Locale::getText('console.users.section.teams.title'); ?></h2>
<div>
@ -265,7 +265,7 @@ $providers = $this->getParam('providers', []);
</div>
</div>
</li>
<li data-state="/console/users/providers?project={{state.params.project}}">
<li data-state="/console/users/providers?project={{router.params.project}}">
<h2><?php echo Locale::getText('console.users.section.providers.title'); ?></h2>
<div class="box margin-bottom margin-top-large">
@ -278,7 +278,7 @@ $providers = $this->getParam('providers', []);
<form data-appwrite="projects.updateOauth"
data-scope="console"
data-event="submit"
data-param-project-id="{{state.params.project}}"
data-param-project-id="{{router.params.project}}"
data-success="alert,trigger"
data-success-alert="Updated project OAuth settings successfully"
data-success-triggers="project.reload,modal-close"
@ -300,7 +300,7 @@ $providers = $this->getParam('providers', []);
<p>To complete set up, add this OAuth redirect URI to your <?php echo ucfirst($provider); ?> app configuration.</p>
<div class="input-copy">
<input data-forms-copy type="text" disabled data-ls-echo="https://{{env.DOMAIN}}/v1/oauth/callback/<?php echo $provider; ?>/{{state.params.project}}" class="margin-bottom-no" />
<input data-forms-copy type="text" disabled data-ls-echo="https://{{env.DOMAIN}}/v1/oauth/callback/<?php echo $provider; ?>/{{router.params.project}}" class="margin-bottom-no" />
</div>
</div>
</div>
@ -328,7 +328,7 @@ $providers = $this->getParam('providers', []);
</ul>
</div>
</li>
<li data-state="/console/users/templates?project={{state.params.project}}">
<li data-state="/console/users/templates?project={{router.params.project}}">
<h2><?php echo Locale::getText('console.users.section.templates.title'); ?></h2>
</li>
</ul>

View file

@ -5,7 +5,7 @@ use Utopia\Locale\Locale;
<div data-appwrite="users.get"
data-service="user"
data-event="load"
data-param-user-id="{{state.params.id}}"
data-param-user-id="{{router.params.id}}"
data-success="render,trigger"
data-error="render"
data-success-rerender="user.update"
@ -14,7 +14,7 @@ use Utopia\Locale\Locale;
<div class="cover">
<h1 class="zone xl margin-bottom-large">
<a data-ls-href="/console/users?project={{state.params.project}}" class="back text-size-small"><i class="icon-left-open"></i> <?php echo $this->escape(Locale::getText('console.users.title')); ?></a>
<a data-ls-href="/console/users?project={{router.params.project}}" class="back text-size-small"><i class="icon-left-open"></i> <?php echo $this->escape(Locale::getText('console.users.title')); ?></a>
<br />
<span data-ls-echo="{{user.name}}">&nbsp;</span>
@ -22,8 +22,8 @@ use Utopia\Locale\Locale;
</div>
<div class="zone xl">
<ul class="phases clear" data-ui-phases data-selected="{{state.params.tab}}">
<li data-state="/console/users/view?id={{state.params.id}}&project={{state.params.project}}">
<ul class="phases clear" data-ui-phases data-selected="{{router.params.tab}}">
<li data-state="/console/users/view?id={{router.params.id}}&project={{router.params.project}}">
<h2>General</h2>
<div data-ls-if="'{{user.status}}' === '<?php echo \Auth\Auth::USER_STATUS_BLOCKED; ?>'" style="display: none" class="box padding-small danger margin-bottom-xxl">
@ -55,7 +55,7 @@ use Utopia\Locale\Locale;
data-appwrite="users.getPrefs"
data-service="user-prefs"
data-event="load"
data-param-user-id="{{state.params.id}}"
data-param-user-id="{{router.params.id}}"
data-success="render,trigger"
data-error="render"
data-success-rerender=""
@ -98,7 +98,7 @@ use Utopia\Locale\Locale;
<form name="users.updateStatus" class="margin-bottom"
data-appwrite="users.updateStatus"
data-event="submit"
data-param-user-id="{{state.params.id}}"
data-param-user-id="{{router.params.id}}"
data-success="alert,trigger"
data-success-alert="Blocked User Successfully"
data-success-triggers="user.update"
@ -112,7 +112,7 @@ use Utopia\Locale\Locale;
<form name="users.updateStatus" class="margin-bottom"
data-appwrite="users.updateStatus"
data-event="submit"
data-param-user-id="{{state.params.id}}"
data-param-user-id="{{router.params.id}}"
data-success="alert,trigger"
data-success-alert="Blocked Activated Successfully"
data-success-triggers="user.update"
@ -125,12 +125,12 @@ use Utopia\Locale\Locale;
</div>
</div>
</li>
<li data-state="/console/users/view/devices?id={{state.params.id}}&project={{state.params.project}}">
<li data-state="/console/users/view/devices?id={{router.params.id}}&project={{router.params.project}}">
<h2>Devices</h2>
<div data-appwrite="users.getSessions"
data-service="sessions"
data-param-user-id="{{state.params.id}}"
data-param-user-id="{{router.params.id}}"
data-event="load"
data-success="render"
data-error="render"
@ -152,7 +152,7 @@ use Utopia\Locale\Locale;
data-success-triggers="user.update"
data-error="alert"
data-error-alert="Failed to logout session">
<input type="hidden" name="userId" data-ls-echo="{{state.params.id}}">
<input type="hidden" name="userId" data-ls-echo="{{router.params.id}}">
<input type="hidden" name="sessionId" data-ls-echo="{{session.id}}">
<button class="danger">Logout</button>
</form>
@ -171,7 +171,7 @@ use Utopia\Locale\Locale;
<form class="inline margin-bottom-large"
data-appwrite="users.deleteSessions"
data-param-user-id="{{state.params.id}}"
data-param-user-id="{{router.params.id}}"
data-event="submit"
data-success="trigger"
data-success-triggers="user.update"
@ -183,12 +183,12 @@ use Utopia\Locale\Locale;
</div>
</li>
<li data-state="/console/users/view/audit?id={{state.params.id}}&project={{state.params.project}}">
<li data-state="/console/users/view/audit?id={{router.params.id}}&project={{router.params.project}}">
<h2>Audit Log</h2>
<div data-appwrite="users.getLogs"
data-service="logs"
data-param-user-id="{{state.params.id}}"
data-param-user-id="{{router.params.id}}"
data-event="load"
data-success="render"
data-success-rerender="logs.load"

View file

@ -5,8 +5,8 @@ use Utopia\Locale\Locale;
<form data-appwrite="auth.confirm"
data-scope="console"
data-event="load"
data-param-token="{{state.params.token}}"
data-param-user-id="{{state.params.userId}}"
data-param-token="{{router.params.token}}"
data-param-user-id="{{router.params.userId}}"
data-success="redirect,alert,trigger"
data-success-redirect-url="/console"
data-success-alert="<?php echo $this->escape(Locale::getText('home.auth.confirm.success')); ?>"

View file

@ -6,26 +6,26 @@ use Utopia\Locale\Locale;
data-appwrite="auth.join"
data-scope="console"
data-event="submit"
data-param-invite-id="{{state.params.inviteId}}"
data-param-user-id="{{state.params.userId}}"
data-param-secret="{{state.params.secret}}"
data-param-invite-id="{{router.params.inviteId}}"
data-param-user-id="{{router.params.userId}}"
data-param-secret="{{router.params.secret}}"
data-success="redirect,alert,trigger"
data-success-redirect-url="/console?project={{state.params.project}}"
data-success-redirect-url="/console?project={{router.params.project}}"
data-success-alert="<?php echo $this->escape(Locale::getText('home.auth.join.success')); ?>"
data-success-triggers="account.update"
data-error="alert"
data-error-alert="<?php echo $this->escape(Locale::getText('home.auth.join.failure')); ?>">
<div class="text-danger margin-bottom-large" style="display: none;" data-ls-if="{{state.params.failure}} == 1"><?php echo $this->escape(Locale::getText('home.auth.join.failure')); ?></div>
<div class="text-danger margin-bottom-large" style="display: none;" data-ls-if="{{router.params.failure}} == 1"><?php echo $this->escape(Locale::getText('home.auth.join.failure')); ?></div>
<input name="success" type="hidden" data-ls-echo="https://{{env.DOMAIN}}/console?company={{state.params.company}}">
<input name="failure" type="hidden" data-ls-echo="https://{{env.DOMAIN}}/auth/join?failure=1&company={{state.params.company}}&inviteId={{state.params.inviteId}}&secret={{state.params.secret}}&userId={{state.params.userId}}">
<input name="success" type="hidden" data-ls-echo="https://{{env.DOMAIN}}/console?company={{router.params.company}}">
<input name="failure" type="hidden" data-ls-echo="https://{{env.DOMAIN}}/auth/join?failure=1&company={{router.params.company}}&inviteId={{router.params.inviteId}}&secret={{router.params.secret}}&userId={{router.params.userId}}">
<div class=""
data-appwrite="companies.getPreview"
data-scope="api"
data-service="api-company"
data-param-id="{{state.params.company}}"
data-param-id="{{router.params.company}}"
data-event="load"
data-success="render,trigger"
data-success-triggers="api-company.load"

View file

@ -21,8 +21,8 @@ use Utopia\Locale\Locale;
data-error="alert"
data-error-alert="<?php echo $this->escape(Locale::getText('home.auth.reset.failure')); ?>">
<input type="hidden" name="userId" data-ls-echo="{{state.params.userId}}">
<input type="hidden" name="token" data-ls-echo="{{state.params.token}}">
<input type="hidden" name="userId" data-ls-echo="{{router.params.userId}}">
<input type="hidden" name="token" data-ls-echo="{{router.params.token}}">
<label><?php echo $this->escape(Locale::getText('home.auth.reset.labels.passwordA')); ?></label>
<input name="passwordA" type="password" autocomplete="off" placeholder="" required data-forms-password-meter pattern=".{6,}" title="<?php echo $this->escape(Locale::getText('home.auth.reset.labels.password.validation')); ?>">

View file

@ -6,7 +6,7 @@ use Utopia\Locale\Locale;
<?php echo $this->escape(Locale::getText('home.auth.signin.title')); ?>
</h1>
<div class="text-danger margin-bottom-large" style="display: none;" data-ls-if="{{state.params.failure}} == 1"><?php echo $this->escape(Locale::getText('home.auth.signin.failure')); ?></div>
<div class="text-danger margin-bottom-large" style="display: none;" data-ls-if="{{router.params.failure}} == 1"><?php echo $this->escape(Locale::getText('home.auth.signin.failure')); ?></div>
<div class="row responsive force-reverse">
<div class="col span-6 oauth margin-bottom-large">

View file

@ -6,7 +6,7 @@ use Utopia\Locale\Locale;
<?php echo $this->escape(Locale::getText('home.auth.signup.title')); ?>
</h1>
<div class="text-danger margin-bottom-large" style="display: none;" data-ls-if="{{state.params.failure}} == 1"><?php echo $this->escape(Locale::getText('home.auth.signup.failure')); ?></div>
<div class="text-danger margin-bottom-large" style="display: none;" data-ls-if="{{router.params.failure}} == 1"><?php echo $this->escape(Locale::getText('home.auth.signup.failure')); ?></div>
<div class="row responsive">
<div class="col span-6 margin-bottom-large">
@ -29,7 +29,7 @@ use Utopia\Locale\Locale;
<input name="name" type="text" autocomplete="name" placeholder="" required>
<label><?php echo $this->escape(Locale::getText('home.auth.signup.labels.email')); ?></label>
<input name="email" type="email" autocomplete="email" placeholder="" required data-ls-echo="{{state.params.email}}">
<input name="email" type="email" autocomplete="email" placeholder="" required data-ls-echo="{{router.params.email}}">
<label><?php echo $this->escape(Locale::getText('home.auth.signup.labels.password')); ?></label>
<input name="password" type="password" autocomplete="off" placeholder="" required data-forms-password-meter pattern=".{6,}" title="<?php echo $this->escape(Locale::getText('home.auth.signup.labels.password.validation')); ?>">

View file

@ -72,10 +72,10 @@ $env = $this->getParam('env', '');
<?php echo $this->exec($this->getParam('head', [])); ?>
</head>
<body data-ls-init data-first-from-server="true">
<body>
<?php echo $this->exec($this->getParam('header', [])); ?>
<main data-ls-scope data-acl data-analytics-pageview>
<main data-ls-router data-first-from-server="true" data-acl data-analytics-pageview>
<?php echo $this->exec($this->getParam('body', [])); ?>
</main>

View file

@ -12,7 +12,6 @@ const gulpCleanCSS = require('gulp-clean-css');
const configApp = {
mainFile: 'app.js',
src: [
'public/scripts/litespeed.js',
'public/scripts/sdk.js',
'public/scripts/init.js',
@ -26,6 +25,8 @@ const configApp = {
'public/scripts/services/sdk.js',
'public/scripts/services/timezone.js',
'public/scripts/routes.js',
'public/scripts/filters.js',
'public/scripts/app.js',
'public/scripts/appwrite.js',
@ -78,8 +79,9 @@ const configDep = {
'public/scripts/dependencies/pell.js',
'public/scripts/dependencies/prism.js',
'public/scripts/dependencies/turndown.js',
'public/scripts/dependencies/litespeed.js',
'public/scripts/polyfills/date-input.js',
'public/scripts/polyfills/datalist.js'
'public/scripts/polyfills/datalist.js',
],
dest: './public/dist/scripts'
};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,285 +1,3 @@
window.ls.router
.add('/auth/signin', {
template: '/auth/signin',
scope: 'home'
})
.add('/auth/signup', {
template: '/auth/signup',
scope: 'home'
})
.add('/auth/recovery', {
template: '/auth/recovery',
scope: 'home'
})
.add('/auth/recovery/reset', {
template: '/auth/recovery/reset',
scope: 'home'
})
.add('/auth/confirm', {
template: '/auth/confirm',
scope: 'home'
})
.add('/auth/join', {
template: '/auth/join',
scope: 'home'
})
.add('/console', {
template: '/console',
scope: 'console'
})
.add('/console/account', {
template: '/console/account',
scope: 'console'
})
.add('/console/account/:tab', {
template: '/console/account',
scope: 'console'
})
.add('/console/home', {
template: '/console/home',
scope: 'console',
project: true
})
.add('/console/home/:tab', {
template: '/console/home',
scope: 'console',
project: true
})
.add('/console/platforms/:platform', {
template: function (window) {
return window.location.pathname;
},
scope: 'console',
project: true
})
.add('/console/notifications', {
template: '/console/notifications',
scope: 'console'
})
.add('/console/settings', {
template: '/console/settings',
scope: 'console',
project: true
})
.add('/console/settings/:tab', {
template: '/console/settings',
scope: 'console',
project: true
})
.add('/console/database', {
template: '/console/database',
scope: 'console',
project: true
})
.add('/console/database/:tab', {
template: '/console/database',
scope: 'console',
project: true
})
.add('/console/storage', {
template: '/console/storage',
scope: 'console',
project: true
})
.add('/console/storage/:tab', {
template: '/console/storage',
scope: 'console',
project: true
})
.add('/console/users', {
template: '/console/users',
scope: 'console',
project: true
})
.add('/console/users/view', {
template: '/console/users/view',
scope: 'console',
project: true
})
.add('/console/users/view/:tab', {
template: '/console/users/view',
scope: 'console',
project: true
})
.add('/console/users/:tab', {
template: '/console/users',
scope: 'console',
project: true
})
;
// Filters
let filter = window.ls.filter;
let date = window.ls.container.get('date');
let timezone = window.ls.container.get('timezone');
let markdown = window.ls.container.get('markdown');
filter
.add('lowerCase', function (value) {
return value.toLowerCase();
})
.add('date', function (value, options) {
return date.format('Y-m-d', value);
})
.add('date-time', function (value, options) {
return date.format('Y-m-d H:i', value);
})
.add('date-text', function (value, options) {
return date.format('d M Y', value);
})
.add('date-long', function (value, options) {
return date.format('l, j F, H:i', value);
})
.add('min2hum', function (value, options) {
if(value >= 60) {
if(value % 60 === 0) {
return Math.ceil(value / 60) + ' hours';
}
else {
return Math.ceil(value / 60) + ' hours and ' + (value % 60) + ' minutes';
}
}
return value + ' minutes';
})
.add('ms2hum', function (value, options) {
let temp = value;
const years = Math.floor( temp / 31536000 ),
days = Math.floor( ( temp %= 31536000 ) / 86400 ),
hours = Math.floor( ( temp %= 86400 ) / 3600 ),
minutes = Math.floor( ( temp %= 3600 ) / 60 ),
seconds = temp % 60;
if ( days || hours || seconds || minutes ) {
return ( years ? years + "y " : "" ) +
( days ? days + "d " : "" ) +
( hours ? hours + "h " : "" ) +
( minutes ? minutes + "m " : "" ) +
Number.parseFloat( seconds ).toFixed(0) + "s";
}
return "< 1s";
})
.add('nl2p', function (value, options) {
let result = "<p>" + value + "</p>";
result = result.replace(/\r\n\r\n/g, "</p><p>").replace(/\n\n/g, "</p><p>");
result = result.replace(/\r\n/g, "<br />").replace(/\n/g, "<br />");
return result;
})
.add('markdown', function (value, options) {
return markdown.render(value);
})
.add('id2name', function (value, options) {
let members = container.get('members');
if(members === null) {
return '';
}
for (let y = 0; y < members.length; y++) {
if(members[y]['$uid'] === value) {
value = members[y].name;
}
}
return value;
})
.add('id2role', function (value, options) {
if(APP_ENV.ROLES[value]) {
return APP_ENV.ROLES[value];
}
return '';
})
.add('humanFileSize', function (bytes) {
if(!bytes) {
return 0;
}
let thresh = 1000;
if(Math.abs(bytes) < thresh) {
return bytes + ' B';
}
let units = ['kB','MB','GB','TB','PB','EB','ZB','YB'];
let u = -1;
do {
bytes /= thresh;
++u;
} while(Math.abs(bytes) >= thresh && u < units.length - 1);
return bytes.toFixed(1) + '<span class="text-size-small unit">' + units[u] + '</span>';
})
.add('statsTotal', function (value) {
if(!value) {
return 0;
}
value = abbreviate(value, 1, false, false);
return (value === '0') ? 'N/A' : value;
});
function abbreviate(number, maxPlaces, forcePlaces, forceLetter) {
number = Number(number);
forceLetter = forceLetter || false;
if(forceLetter !== false) {
return annotate(number, maxPlaces, forcePlaces, forceLetter);
}
let abbr;
if(number >= 1e12) {
abbr = 'T';
}
else if(number >= 1e9) {
abbr = 'B';
}
else if(number >= 1e6) {
abbr = 'M';
}
else if(number >= 1e3) {
abbr = 'K';
}
else {
abbr = '';
}
return annotate(number, maxPlaces, forcePlaces, abbr);
}
function annotate(number, maxPlaces, forcePlaces, abbr) {
// set places to false to not round
let rounded = 0;
switch(abbr) {
case 'T':
rounded = number / 1e12;
break;
case 'B':
rounded = number / 1e9;
break;
case 'M':
rounded = number / 1e6;
break;
case 'K':
rounded = number / 1e3;
break;
case '':
rounded = number;
break
}
if(maxPlaces !== false) {
let test = new RegExp('\\.\\d{' + (maxPlaces + 1) + ',}$')
if(test.test(('' + rounded))) {
rounded = rounded.toFixed(maxPlaces)
}
}
if(forcePlaces !== false) {
rounded = Number(rounded).toFixed(forcePlaces)
}
return rounded + abbr
}
// Views
@ -289,7 +7,6 @@ window.ls.container.get('view')
controller: function(element, document, router, alerts) {
document.body.classList.remove('console');
document.body.classList.remove('home');
console.log(router.getCurrent());
document.body.classList.add(router.getCurrent().view.scope);
@ -304,7 +21,7 @@ window.ls.container.get('view')
// Special case for console index page
if('/console' === state.getCurrent().path) {
if('/console' === router.getCurrent().path) {
document.body.classList.add('index');
}
else {

170
public/scripts/filters.js Normal file
View file

@ -0,0 +1,170 @@
let date = window.ls.container.get('date');
let timezone = window.ls.container.get('timezone');
let markdown = window.ls.container.get('markdown');
window.ls.filter
.add('lowerCase', function (value) {
return value.toLowerCase();
})
.add('date', function (value, options) {
return date.format('Y-m-d', value);
})
.add('date-time', function (value, options) {
return date.format('Y-m-d H:i', value);
})
.add('date-text', function (value, options) {
return date.format('d M Y', value);
})
.add('date-long', function (value, options) {
return date.format('l, j F, H:i', value);
})
.add('min2hum', function (value, options) {
if(value >= 60) {
if(value % 60 === 0) {
return Math.ceil(value / 60) + ' hours';
}
else {
return Math.ceil(value / 60) + ' hours and ' + (value % 60) + ' minutes';
}
}
return value + ' minutes';
})
.add('ms2hum', function (value, options) {
let temp = value;
const years = Math.floor( temp / 31536000 ),
days = Math.floor( ( temp %= 31536000 ) / 86400 ),
hours = Math.floor( ( temp %= 86400 ) / 3600 ),
minutes = Math.floor( ( temp %= 3600 ) / 60 ),
seconds = temp % 60;
if ( days || hours || seconds || minutes ) {
return ( years ? years + "y " : "" ) +
( days ? days + "d " : "" ) +
( hours ? hours + "h " : "" ) +
( minutes ? minutes + "m " : "" ) +
Number.parseFloat( seconds ).toFixed(0) + "s";
}
return "< 1s";
})
.add('nl2p', function (value, options) {
let result = "<p>" + value + "</p>";
result = result.replace(/\r\n\r\n/g, "</p><p>").replace(/\n\n/g, "</p><p>");
result = result.replace(/\r\n/g, "<br />").replace(/\n/g, "<br />");
return result;
})
.add('markdown', function (value, options) {
return markdown.render(value);
})
.add('id2name', function (value, options) {
let members = container.get('members');
if(members === null) {
return '';
}
for (let y = 0; y < members.length; y++) {
if(members[y]['$uid'] === value) {
value = members[y].name;
}
}
return value;
})
.add('id2role', function (value, options) {
if(APP_ENV.ROLES[value]) {
return APP_ENV.ROLES[value];
}
return '';
})
.add('humanFileSize', function (bytes) {
if(!bytes) {
return 0;
}
let thresh = 1000;
if(Math.abs(bytes) < thresh) {
return bytes + ' B';
}
let units = ['kB','MB','GB','TB','PB','EB','ZB','YB'];
let u = -1;
do {
bytes /= thresh;
++u;
} while(Math.abs(bytes) >= thresh && u < units.length - 1);
return bytes.toFixed(1) + '<span class="text-size-small unit">' + units[u] + '</span>';
})
.add('statsTotal', function (value) {
if(!value) {
return 0;
}
value = abbreviate(value, 1, false, false);
return (value === '0') ? 'N/A' : value;
});
function abbreviate(number, maxPlaces, forcePlaces, forceLetter) {
number = Number(number);
forceLetter = forceLetter || false;
if(forceLetter !== false) {
return annotate(number, maxPlaces, forcePlaces, forceLetter);
}
let abbr;
if(number >= 1e12) {
abbr = 'T';
}
else if(number >= 1e9) {
abbr = 'B';
}
else if(number >= 1e6) {
abbr = 'M';
}
else if(number >= 1e3) {
abbr = 'K';
}
else {
abbr = '';
}
return annotate(number, maxPlaces, forcePlaces, abbr);
}
function annotate(number, maxPlaces, forcePlaces, abbr) {
// set places to false to not round
let rounded = 0;
switch(abbr) {
case 'T':
rounded = number / 1e12;
break;
case 'B':
rounded = number / 1e9;
break;
case 'M':
rounded = number / 1e6;
break;
case 'K':
rounded = number / 1e3;
break;
case '':
rounded = number;
break
}
if(maxPlaces !== false) {
let test = new RegExp('\\.\\d{' + (maxPlaces + 1) + ',}$')
if(test.test(('' + rounded))) {
rounded = rounded.toFixed(maxPlaces)
}
}
if(forcePlaces !== false) {
rounded = Number(rounded).toFixed(forcePlaces)
}
return rounded + abbr
}

109
public/scripts/routes.js Normal file
View file

@ -0,0 +1,109 @@
window.ls.router
.add('/auth/signin', {
template: '/auth/signin',
scope: 'home'
})
.add('/auth/signup', {
template: '/auth/signup',
scope: 'home'
})
.add('/auth/recovery', {
template: '/auth/recovery',
scope: 'home'
})
.add('/auth/recovery/reset', {
template: '/auth/recovery/reset',
scope: 'home'
})
.add('/auth/confirm', {
template: '/auth/confirm',
scope: 'home'
})
.add('/auth/join', {
template: '/auth/join',
scope: 'home'
})
.add('/console', {
template: '/console',
scope: 'console'
})
.add('/console/account', {
template: '/console/account',
scope: 'console'
})
.add('/console/account/:tab', {
template: '/console/account',
scope: 'console'
})
.add('/console/home', {
template: '/console/home',
scope: 'console',
project: true
})
.add('/console/home/:tab', {
template: '/console/home',
scope: 'console',
project: true
})
.add('/console/platforms/:platform', {
template: function (window) {
return window.location.pathname;
},
scope: 'console',
project: true
})
.add('/console/notifications', {
template: '/console/notifications',
scope: 'console'
})
.add('/console/settings', {
template: '/console/settings',
scope: 'console',
project: true
})
.add('/console/settings/:tab', {
template: '/console/settings',
scope: 'console',
project: true
})
.add('/console/database', {
template: '/console/database',
scope: 'console',
project: true
})
.add('/console/database/:tab', {
template: '/console/database',
scope: 'console',
project: true
})
.add('/console/storage', {
template: '/console/storage',
scope: 'console',
project: true
})
.add('/console/storage/:tab', {
template: '/console/storage',
scope: 'console',
project: true
})
.add('/console/users', {
template: '/console/users',
scope: 'console',
project: true
})
.add('/console/users/view', {
template: '/console/users/view',
scope: 'console',
project: true
})
.add('/console/users/view/:tab', {
template: '/console/users/view',
scope: 'console',
project: true
})
.add('/console/users/:tab', {
template: '/console/users',
scope: 'console',
project: true
})
;

View file

@ -1,11 +1,11 @@
(function (window) {
"use strict";
window.ls.container.set('sdk', function (window, state) {
window.ls.container.set('sdk', function (window, router) {
var sdk = new window.AppwriteSDK();
sdk.config.domain = APP_ENV.API;
sdk.config.project = state.params.project || null;
sdk.config.project = router.params.project || null;
sdk.config.locale = APP_ENV.LOCALE;
sdk.config.mode = 'admin';