107 lines
4.7 KiB
HTML
107 lines
4.7 KiB
HTML
|
<div ng-controller="SettingsController" class="user" data-ng-init="onInit()">
|
||
|
|
||
|
<div id="wrapper">
|
||
|
|
||
|
<div id="genericHeading">
|
||
|
<a href ng-click="goToPage('/')"><img src="img/logo-small.png" width="100" height="43" alt="[matrix]"/></a>
|
||
|
</div>
|
||
|
|
||
|
<h1>Settings</h1>
|
||
|
<div class="section">
|
||
|
<form>
|
||
|
<div class="profile-avatar">
|
||
|
<img ng-src="{{ (null !== profile.avatarUrl) ? profile.avatarUrl : 'img/default-profile.png' }}" m-file-input="profile.avatarFile"/>
|
||
|
</div>
|
||
|
<div>
|
||
|
<input id="user-displayname-input" size="40" ng-model="profile.displayName" placeholder="Your display name"/>
|
||
|
<br/>
|
||
|
<button id="user-save-button"
|
||
|
ng-disabled="(profile.displayName === profileOnServer.displayName) && (profile.avatarUrl === profileOnServer.avatarUrl)"
|
||
|
ng-click="saveProfile()">Save changes</button>
|
||
|
</div>
|
||
|
</form>
|
||
|
</div>
|
||
|
<br/>
|
||
|
|
||
|
<h3>Linked emails</h3>
|
||
|
<div class="section">
|
||
|
<form>
|
||
|
<input size="40" ng-model="linkedEmails.linkNewEmail" ng-enter="linkEmail(linkedEmails.linkNewEmail)" />
|
||
|
<button ng-disabled="!linkedEmails.linkNewEmail" ng-click="linkEmail(linkedEmails.linkNewEmail)">
|
||
|
Link Email
|
||
|
</button>
|
||
|
{{ emailFeedback }}
|
||
|
</form>
|
||
|
<form ng-hide="!linkedEmails.emailBeingAuthed">
|
||
|
Enter validation token for {{ linkedEmails.emailBeingAuthed }}:
|
||
|
<br />
|
||
|
<input size="20" ng-model="linkedEmails.emailCode" ng-enter="submitEmailCode(linkedEmails.emailCode)" />
|
||
|
<button ng-disabled="!linkedEmails.emailCode || !linkedEmails.linkNewEmail" ng-click="submitEmailCode(linkedEmails.emailCode)">
|
||
|
Submit Code
|
||
|
</button>
|
||
|
</form>
|
||
|
<table>
|
||
|
<tr ng-repeat="(address, info) in linkedEmails.linkedEmailList">
|
||
|
<td>{{address}}</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
</div>
|
||
|
<br/>
|
||
|
|
||
|
<h3>Desktop notifications</h3>
|
||
|
<div class="section" ng-switch="settings.notifications">
|
||
|
<div ng-switch-when="granted">
|
||
|
Notifications are enabled.
|
||
|
<div class="section">
|
||
|
<h4>Specific words to alert on:</h4>
|
||
|
<p>Leave blank to alert on all messages. Your username & display name always alerts.</p>
|
||
|
<input size=40 name="bingWords" ng-model="settings.bingWords" ng-list placeholder="Enter words separated with , (supports regex)"
|
||
|
ng-blur="saveBingWords()"/>
|
||
|
<ul>
|
||
|
<li ng-repeat="word in settings.bingWords">{{word}}</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div ng-switch-when="denied">
|
||
|
You have denied permission for notifications.<br/>
|
||
|
To enable it, reset the notification setting for this web site into your browser settings.
|
||
|
</div>
|
||
|
<div ng-switch-when="default">
|
||
|
<button ng-click="requestNotifications()" style="font-size: 14pt">Enable desktop notifications</button>
|
||
|
</div>
|
||
|
<div ng-switch-default="">
|
||
|
Sorry, your browser does not support notifications.
|
||
|
</div>
|
||
|
</div>
|
||
|
<br/>
|
||
|
|
||
|
<h3>Configuration</h3>
|
||
|
<div class="section">
|
||
|
<div>Home server: {{ config.homeserver }} </div>
|
||
|
<div>Identity server: {{ config.identityServer }} </div>
|
||
|
<div>User ID: {{ config.user_id }} </div>
|
||
|
<div>Access token: {{ config.access_token }} </div>
|
||
|
</div>
|
||
|
<br/>
|
||
|
|
||
|
<h3>Commands</h3>
|
||
|
<div class="section">
|
||
|
The following commands are available in the room chat:
|
||
|
<ul>
|
||
|
<li>/nick <display_name>: change your display name</li>
|
||
|
<li>/me <action>: send the action you are doing. /me will be replaced by your display name</li>
|
||
|
<li>/join <room_alias>: join a room</li>
|
||
|
<li>/kick <user_id> [<reason>]: kick the user</li>
|
||
|
<li>/ban <user_id> [<reason>]: ban the user</li>
|
||
|
<li>/unban <user_id>: unban the user</li>
|
||
|
<li>/op <user_id> <power_level>: set user power level</li>
|
||
|
<li>/deop <user_id>: reset user power level to the room default value</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
<br/>
|
||
|
|
||
|
{{ feedback }}
|
||
|
|
||
|
</div>
|
||
|
</div>
|