summaryrefslogtreecommitdiff
path: root/scripts/model/model.js
blob: 39b5f0be0cbb400576dd99255ef5f3a2a06d8795 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
"use strict"

/**
 * core model module - currently unused
 */
define([], function() {

    /**
     * return a random id
     */
    var random_id = function() {
        return Math.random().toString(36).substring(2);
    }

    function Node() {
    }

    this.create_node_with_random_id = function(node_spec) {
        var ret = new Node();
        ret.id = random_id();

        ret.name = spec.name;
        ret.type = spec.type;
        ret.state = spec.state;
        ret.status = spec.status;
        ret.url = spec.url;

        ret.start = spec.start;
        ret.end = spec.end;

        return ret;
    }

    this.create_link_with_random_id = function(link_spec) {
        var ret = new Link();
        ret.id = random_id();
    }

    /**
     * determine if nodes are equal by ID
     * 
     * @param other_node
     * @returns {Boolean}
     */
    Node.prototype.equlas_by_id = function(other) {
        ret = this.id.toLowerCase() == other.id.toLowerCase();
        if (false == ret) {
            console.debug(this.id + ' != ' + other.id);
        }
        return ret;
    }

    function Link() {

    }

    /**
     * determine if links are equal by ID
     * 
     * @param other_node
     * @returns {Boolean}
     */
    Link.prototype.equlas_by_id = function(other) {
        return this.id.toLowerCase() == other.id.toLowerCase();
    }

    return {
        create_node_with_random_id : create_node_with_random_id,
        create_link_with_random_id : create_link_with_random_id,
    };
});