/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/user_guide/nav/moo.fx.js

  • Committer: Gustav Hatvigsson
  • Date: 2013-05-30 11:59:17 UTC
  • mfrom: (85.1.27 lenasys)
  • Revision ID: gustav.hartvigsson@gmail.com-20130530115917-nq06e5l455nfqok5
Merged Ohlssons changes:
added function to get ssn and name for the registrationspages in the user model.
added the registrationpage for students.
edited the registration page for instructors
edited the css for both the registrationpages

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
moo.fx, simple effects library built with prototype.js (http://prototype.conio.net).
3
 
by Valerio Proietti (http://mad4milk.net) MIT-style LICENSE.
4
 
for more info (http://moofx.mad4milk.net).
5
 
10/24/2005
6
 
v(1.0.2)
7
 
*/
8
 
 
9
 
//base
10
 
var fx = new Object();
11
 
fx.Base = function(){};
12
 
fx.Base.prototype = {
13
 
        setOptions: function(options) {
14
 
        this.options = {
15
 
                duration: 500,
16
 
                onComplete: ''
17
 
        }
18
 
        Object.extend(this.options, options || {});
19
 
        },
20
 
 
21
 
        go: function() {
22
 
                this.duration = this.options.duration;
23
 
                this.startTime = (new Date).getTime();
24
 
                this.timer = setInterval (this.step.bind(this), 13);
25
 
        },
26
 
 
27
 
        step: function() {
28
 
                var time  = (new Date).getTime();
29
 
                var Tpos   = (time - this.startTime) / (this.duration);
30
 
                if (time >= this.duration+this.startTime) {
31
 
                        this.now = this.to;
32
 
                        clearInterval (this.timer);
33
 
                        this.timer = null;
34
 
                        if (this.options.onComplete) setTimeout(this.options.onComplete.bind(this), 10);
35
 
                }
36
 
                else {
37
 
                        this.now = ((-Math.cos(Tpos*Math.PI)/2) + 0.5) * (this.to-this.from) + this.from;
38
 
                        //this time-position, sinoidal transition thing is from script.aculo.us
39
 
                }
40
 
                this.increase();
41
 
        },
42
 
 
43
 
        custom: function(from, to) {
44
 
                if (this.timer != null) return;
45
 
                this.from = from;
46
 
                this.to = to;
47
 
                this.go();
48
 
        },
49
 
 
50
 
        hide: function() {
51
 
                this.now = 0;
52
 
                this.increase();
53
 
        },
54
 
 
55
 
        clearTimer: function() {
56
 
                clearInterval(this.timer);
57
 
                this.timer = null;
58
 
        }
59
 
}
60
 
 
61
 
//stretchers
62
 
fx.Layout = Class.create();
63
 
fx.Layout.prototype = Object.extend(new fx.Base(), {
64
 
        initialize: function(el, options) {
65
 
                this.el = $(el);
66
 
                this.el.style.overflow = "hidden";
67
 
                this.el.iniWidth = this.el.offsetWidth;
68
 
                this.el.iniHeight = this.el.offsetHeight;
69
 
                this.setOptions(options);
70
 
        }
71
 
});
72
 
 
73
 
fx.Height = Class.create();
74
 
Object.extend(Object.extend(fx.Height.prototype, fx.Layout.prototype), {
75
 
        increase: function() {
76
 
                this.el.style.height = this.now + "px";
77
 
        },
78
 
 
79
 
        toggle: function() {
80
 
                if (this.el.offsetHeight > 0) this.custom(this.el.offsetHeight, 0);
81
 
                else this.custom(0, this.el.scrollHeight);
82
 
        }
83
 
});