CI / build (push) Failing after 6m2s
Introduce a Node build system for minified CSS/JS with content hashes, add PWA support, i18n helpers, accessibility improvements, and more translatable strings. Move theme configuration from bookmarks to localStorage, add Playwright tests, and set up CI workflows.
82 lines
4.7 KiB
HTML
82 lines
4.7 KiB
HTML
<!DOCTYPE html>
|
|
<html{if="$language !== 'auto'"} lang="{$language}"{/if}>
|
|
<head>
|
|
{$pageName="install"}
|
|
{include="includes"}
|
|
</head>
|
|
<body>
|
|
<div id="install" class="page-install">
|
|
<div class="container">
|
|
<div class="row">
|
|
<div class="col-md-6 col-md-offset-3">
|
|
<form method="post" action="{$base_path}/install" name="installform" id="installform">
|
|
<div class="card">
|
|
<div class="card-header">{'Welcome to your Shaarli'|t}</div>
|
|
<div class="card-body">
|
|
<p class="text-muted" style="margin-bottom: 1.5rem;">{'It looks like it\'s the first time you run Shaarli. Please configure it.'|t}</p>
|
|
<div class="form-group">
|
|
<label class="form-label" for="setlogin">{'Username'|t}</label>
|
|
<input type="text" name="setlogin" id="setlogin" class="form-control autofocus"/>
|
|
</div>
|
|
<div class="form-group">
|
|
<label class="form-label" for="setpassword">{'Password'|t}</label>
|
|
<input type="password" id="setpassword" name="setpassword" class="form-control"/>
|
|
</div>
|
|
<div class="form-group">
|
|
<label class="form-label" for="continent">{'Timezone'|t}</label>
|
|
<div class="row">
|
|
<div class="col-sm-6" id="timezone-continent">
|
|
<select name="continent" id="continent" class="form-control">
|
|
{loop="$continents"}
|
|
{if="$key !== 'selected'"}
|
|
<option value="{$value}" {if="$continents.selected === $value"}selected{/if}>
|
|
{$value}
|
|
</option>
|
|
{/if}
|
|
{/loop}
|
|
</select>
|
|
</div>
|
|
<div class="col-sm-6" id="timezone-city">
|
|
<select name="city" id="city" class="form-control">
|
|
{loop="$cities"}
|
|
{if="$key !== 'selected'"}
|
|
<option value="{$value.city}" {if="$cities.selected === $value.city"}selected{/if} data-continent="{$value.continent}">
|
|
{$value.city}
|
|
</option>
|
|
{/if}
|
|
{/loop}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label class="form-label" for="title">{'Shaarli title'|t}</label>
|
|
<input type="text" name="title" id="title" class="form-control" placeholder="{'My links'|t}"/>
|
|
</div>
|
|
<div class="form-group checkbox-wrapper">
|
|
<input type="checkbox" name="updateCheck" id="updateCheck" checked="checked" style="width: auto;">
|
|
<label for="updateCheck" style="margin: 0;">{'Notify me when a new release is ready'|t}</label>
|
|
</div>
|
|
<div class="form-group">
|
|
<div class="checkbox-wrapper">
|
|
<input type="checkbox" name="enableApi" id="enableApi" style="width: auto;">
|
|
<label for="enableApi" style="margin: 0;">{'Enable REST API'|t}</label>
|
|
</div>
|
|
<div class="sublabel" style="margin-left: 1.5rem;">{'Allow third party software to use Shaarli such as mobile application'|t}</div>
|
|
</div>
|
|
</div>
|
|
<div class="card-footer">
|
|
<button type="submit" name="Save" class="btn btn-primary">{'Install'|t}</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{include="server.requirements"}
|
|
</div>
|
|
{include="page.footer"}
|
|
</body>
|
|
</html>
|