~launchpad-pqm/launchpad/devel

« back to all changes in this revision

Viewing changes to lib/lp/app/javascript/privacy.js

[r=benji][bug=814414,
        819401] Adds the privacy ribbon notification to private branches and
        private merge proposals.

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
 *
7
7
 * This should be called after the page has loaded e.g. on 'domready'.
8
8
 */
 
9
 
 
10
function setup_privacy_notification(config) {
 
11
    var notification_text = 'The information on this page is private';
 
12
    var hidden = true;
 
13
    var target_id = "maincontent";
 
14
    if (config !== undefined) {
 
15
        if (config.notification_text !== undefined) {
 
16
            notification_text = config.notification_text;
 
17
        }
 
18
        if (config.hidden !== undefined) {
 
19
            hidden = config.hidden;
 
20
        }
 
21
        if (config.target_id !== undefined) {
 
22
            target_id = config.target_id;
 
23
        }
 
24
    }
 
25
    var id_selector = "#" + target_id;
 
26
    var main = Y.one(id_selector);
 
27
    var notification = Y.Node.create('<div></div>')
 
28
        .addClass('global-notification');
 
29
    if (hidden) {
 
30
        notification.addClass('hidden');
 
31
    }
 
32
    var notification_span = Y.Node.create('<span></span>')
 
33
        .addClass('sprite')
 
34
        .addClass('notification-private');
 
35
    var close_link = Y.Node.create('<a></a>')
 
36
        .addClass('global-notification-close')
 
37
        .set('href', '#');
 
38
    var close_span = Y.Node.create('<span></span>')
 
39
        .addClass('sprite')
 
40
        .addClass('notification-close');
 
41
 
 
42
    notification.set('text', notification_text);
 
43
    close_link.set('text', "Hide");
 
44
 
 
45
    main.appendChild(notification);
 
46
    notification.appendChild(notification_span);
 
47
    notification.appendChild(close_link);
 
48
    close_link.appendChild(close_span);
 
49
 
 
50
}
 
51
namespace.setup_privacy_notification = setup_privacy_notification;
 
52
 
9
53
function display_privacy_notification(highlight_portlet_on_close) {
10
54
    /* Check if the feature flag is set for this notification. */
11
55
    var highlight = true;
69
113
            var fade_out = new Y.Anim({
70
114
                node: '.global-notification',
71
115
                to: {opacity: 0},
72
 
                duration: 0.3 
 
116
                duration: 0.3
73
117
            });
74
118
            var body_space = new Y.Anim({
75
119
                node: 'body',