##// END OF EJS Templates
svn-support: Use utf-8 to encode mod_dav_svn configuration before writing to disk....
svn-support: Use utf-8 to encode mod_dav_svn configuration before writing to disk. Repository or group names may contain non ASCII characters. Therfore we have to encode the configuration before writing it to the file.

File last commit:

r777:5a8d261e default
r830:7ca2d1db default
Show More
my_account_notifications.html
87 lines | 3.3 KiB | text/html | HtmlLexer
/ rhodecode / templates / admin / my_account / my_account_notifications.html
notifications: replace toggle button with actual toggle element - fixes #4171
r692 <template is="dom-bind" id="notificationsPage">
<iron-ajax id="toggleNotifications"
method="post"
url="${url('my_account_notifications_toggle_visibility')}"
content-type="application/json"
loading="{{changeNotificationsLoading}}"
on-response="handleNotifications"
handle-as="json"></iron-ajax>
notifications: support real-time notifications with websockets via channelstream
r526 <div class="panel panel-default">
<div class="panel-heading">
styling: capitalisation and spinner colours
r706 <h3 class="panel-title">${_('Your Live Notification Settings')}</h3>
notifications: support real-time notifications with websockets via channelstream
r526 </div>
<div class="panel-body">
<p><strong>IMPORTANT:</strong> This feature requires enabled channelstream websocket server to function correctly.</p>
<p class="hidden">Status of browser notifications permission: <strong id="browser-notification-status"></strong></p>
notifications: replace toggle button with actual toggle element - fixes #4171
r692 <div class="form">
<div class="fields">
<div class="field">
<div class="label">
styling: capitalisation and spinner colours
r706 <label for="new_email">${_('Notifications Status')}:</label>
notifications: replace toggle button with actual toggle element - fixes #4171
r692 </div>
<div class="checkboxes">
components: completed rhodecode-toggle for notification settings
r727 <rhodecode-toggle id="live-notifications" active="[[changeNotificationsLoading]]" on-change="toggleNotifications" ${'checked' if c.rhodecode_user.get_instance().user_data.get('notification_status') else ''}></rhodecode-toggle>
notifications: replace toggle button with actual toggle element - fixes #4171
r692 </div>
</div>
<div class="buttons">
my_account: fix test notifications for IE10+
r777 <a class="btn btn-default" id="test-notification" on-tap="testNotifications">Test notification</a>
notifications: replace toggle button with actual toggle element - fixes #4171
r692 </div>
</div>
</div>
notifications: support real-time notifications with websockets via channelstream
r526
</div>
</div>
my_account: fix test notifications for IE10+
r777 <script type="text/javascript">
notifications: replace toggle button with actual toggle element - fixes #4171
r692 /** because im not creating a custom element for this page
* we need to push the function onto the dom-template
* ideally we turn this into notification-settings elements
* then it will be cleaner
*/
var ctrlr = $('#notificationsPage')[0];
ctrlr.toggleNotifications = function(event){
var ajax = $('#toggleNotifications')[0];
ajax.headers = {"X-CSRF-Token": CSRF_TOKEN}
ajax.body = {notification_status:event.target.active};
ajax.generateRequest();
};
ctrlr.handleNotifications = function(event){
notifications: fixing bug w/spinner in toggle
r729 $('#live-notifications')[0].checked = event.detail.response;
notifications: replace toggle button with actual toggle element - fixes #4171
r692 };
notifications: support real-time notifications with websockets via channelstream
r526
function checkBrowserStatus(){
var browserStatus = 'Unknown';
if (!("Notification" in window)) {
browserStatus = 'Not supported'
}
else if(Notification.permission === 'denied'){
browserStatus = 'Denied';
$('.flash_msg').append('<div class="alert alert-error">Notifications are blocked on browser level - you need to enable them in your browser settings.</div>')
}
else if(Notification.permission === 'granted'){
browserStatus = 'Allowed';
}
$('#browser-notification-status').text(browserStatus);
my_account: fix test notifications for IE10+
r777 }
notifications: support real-time notifications with websockets via channelstream
r526
my_account: fix test notifications for IE10+
r777 ctrlr.testNotifications = function(event){
var levels = ['info', 'error', 'warning', 'success'];
var level = levels[Math.floor(Math.random()*levels.length)];
var payload = {
message: {
message: 'This is a test notification.',
level: level,
force: true
}
};
$.Topic('/notifications').publish(payload);
}
notifications: support real-time notifications with websockets via channelstream
r526 </script>
notifications: replace toggle button with actual toggle element - fixes #4171
r692 </template>