<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>