/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 Hatvigsson
  • Date: 2013-05-31 06:15:46 UTC
  • mfrom: (90.1.20 lenasys2)
  • Revision ID: gustav.hartvigsson@gmail.com-20130531061546-vj8z28sq375kvghq
Merged Jonsson:s changes:
Fixed the layout on cms index so the arrows and dots marks expanded objects.
Fixed so the course content is sorted by course occasion and not by name

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'