/lenasys/trunk

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/lenasys/trunk

« back to all changes in this revision

Viewing changes to codeigniter/js/bannermenu.js

  • Committer: gustav.hartvigsson at gmail
  • Date: 2013-04-02 13:58:01 UTC
  • mfrom: (7.1.2 pvp)
  • Revision ID: gustav.hartvigsson@gmail.com-20130402135801-jo6now4rir3kyln3
Mergerd fix for the widget library.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* TODO: cHANGE THIS FILE ENTIRELY!!! CHANGE CALLED ID'S AND CLASSES */
2
 
 
3
 
/* Functions that run when the page loads */
4
 
$(document).ready(function() {
5
 
 
6
 
        /* Makes the bannermenu scrollable horizontally but not vertically */
7
 
        $('#bannerBody').scrollToFixed();
8
 
 
9
 
        $("#dropdownUserMenu").click(function(e) {
10
 
                e.stopPropagation();
11
 
        });
12
 
 
13
 
        /* Sets the click-function for the usermenubutton */
14
 
        $('#bannerUserMenuButton').click(function(e){
15
 
                e.stopPropagation();
16
 
                $.get('ajax/isLoggedIn', function(response) {
17
 
                        if(response == 'yes') {
18
 
                                // If the user is logged in and the usermenu-div is hidden it's shown.
19
 
                                        // TODO: Secure that the courseblock-div is hidden when the usermenu-div is oppened.
20
 
                                        /*
21
 
                                        if($('#dropdownMenuCourseBlock').is(':visible')) {
22
 
                                                $('#dropdownMenuCourseBlock').hide();
23
 
                                        }
24
 
                                        $('#dropdownUserMenu').load('bannermenu.php #dropdownUserMenu');
25
 
                                        */
26
 
                                        //$("#dropdownMenuCourseBlock").hide();
27
 
                                // If the user is logged in and the usermenu-div is shown it's hidden.
28
 
                                $('#dropdownMenuCourseBlock').hide();
29
 
                                $('#dropdownUserMenu').toggle();
30
 
                        }
31
 
 
32
 
                        else {
33
 
                                // If the user is not logged in and the popup-div is hidden it's filled and shown.
34
 
                                if($('#popup').is(':hidden')) {
35
 
                                        $('#popup').load('ajax/popup/login', function(){
36
 
                                                $('#popup').show().click(function(e){e.stopPropagation();});
37
 
                                                $("#popup .hint").click(loginHint);
38
 
                                                $("#popup #username").focus().keydown(function() {
39
 
                                                        $("#popup .hint").addClass("available");
40
 
                                                });
41
 
                                                $("#popup form").submit(loginSubmit);
42
 
                                        });
43
 
                                }
44
 
                                // If the user is not logged in and the popup-div shows it's hidden.
45
 
                                else {
46
 
                                        $('#popup').hide();
47
 
                                }
48
 
                        }
49
 
                });
50
 
                
51
 
        });
52
 
        
53
 
        // TODO: Refresh the div with it's php before show.
54
 
        /* Expand and collapse courses in dropdown menu */
55
 
        $('#dropdownMenuExpandCourses').click(function(){
56
 
        
57
 
                // If the course block is collapsed it's expanded.
58
 
                if($('#dropdownMenuCourseBlock').is(':hidden')) {
59
 
                        $('#dropdownMenuCourseBlock').show();
60
 
                }
61
 
                // If the course block is expanded it's collapsed .
62
 
                else {
63
 
                        $('#dropdownMenuCourseBlock').hide();
64
 
                }
65
 
 
66
 
        });
67
 
 
68
 
        $("#dropdownMenuLogout").click(function(e) {
69
 
                e.stopPropagation();
70
 
                window.location.href = "./start/logout";
71
 
        });
72
 
 
73
 
        $("html").click(function(e) {
74
 
                e.stopPropagation();
75
 
                $("#dropdownUserMenu").hide();
76
 
                $("#popup").hide();
77
 
        });
78
 
});
79
 
 
80
 
function loginSubmit(e) {
81
 
        e.stopPropagation();
82
 
        e.preventDefault();
83
 
 
84
 
        var un = $(this).find("#username").val();
85
 
        var pw = $(this).find("#password").val();
86
 
 
87
 
        $.post(
88
 
                "start/login",
89
 
                { username: un, password: pw},
90
 
                function(data) {
91
 
                        if(data == "true") {
92
 
                                window.location.href ="./cms";
93
 
                        } else {
94
 
                                if($("#popup .popup").hasClass("error")) {
95
 
                                        $("#popup .popup form .errorContainer").html('Error! '+data+' Please try again.');
96
 
                                } else {
97
 
                                        $("#popup .popup").addClass("error");
98
 
                                        $("#popup .popup form").prepend('<div class="errorContainer">Error! '+data+' Please try again. </div>');
99
 
                                }
100
 
                        }
101
 
                }
102
 
        );
103
 
}
104
 
 
105
 
function loginHint(e) {
106
 
        e.preventDefault();
107
 
        e.stopPropagation();
108
 
 
109
 
        // If username field is empty, inform user and exit function
110
 
        var uname = $("#login #username").val();
111
 
        if(uname == "") {
112
 
                return;
113
 
        }
114
 
 
115
 
        // POST username to the function /ajax/pwdhint which returns a json object with password hint
116
 
        $.post(
117
 
                // Replace with final production URL!!!
118
 
 
119
 
                "ajax/pwdhint",
120
 
                // Data sent through POST
121
 
                { username: uname },
122
 
 
123
 
                // Callback function
124
 
                function(data) {
125
 
                        var result = $.parseJSON(data)["hint"];
126
 
 
127
 
                        // result["hint"] is either a boolean false or a string containing the hint
128
 
                        if(result === false) {
129
 
                                $("#hinttext").html('<p class="error">No password hint available</p>');
130
 
                        } else {
131
 
                                $("#hinttext").html('<p>Hint: ' + result + '</p>');
132
 
                        }
133
 
 
134
 
                        $("#login").toggleClass("expanded");
135
 
                        $("#hinttext").toggle();
136
 
 
137
 
                }
138
 
        ); // End $.post {}
139
 
 
140
 
} // End loginHint()
 
 
b'\\ No newline at end of file'