Ver código fonte

Populate the list of loaded cards

crobi 10 anos atrás
pai
commit
112f19869d

+ 1
- 3
generator/data/card_data_example.js Ver arquivo

@@ -129,6 +129,4 @@ var card_data_example = [
129 129
             "fill | 3"
130 130
         ]
131 131
     }
132
-];
133
-
134
-card_data = card_data.concat(card_data_example);
132
+];

+ 0
- 5
generator/data/card_data_user.js Ver arquivo

@@ -1,5 +0,0 @@
1
-var card_data_user = [
2
-
3
-];
4
-
5
-card_data = card_data.concat(card_data_user);

+ 2
- 2
generator/generate.html Ver arquivo

@@ -12,7 +12,6 @@
12 12
     <link href="lib/colorpicker/css/bootstrap-colorselector.css" rel="stylesheet" />
13 13
     <script type="text/javascript" src="lib/colorpicker/js/bootstrap-colorselector.js" charset="utf-8"></script>
14 14
     <!-- Data -->
15
-    <script type="text/javascript" src="data/card_data.js"></script>
16 15
     <script type="text/javascript" src="data/card_data_example.js"></script>
17 16
     <!-- Javascript -->
18 17
     <script type="text/javascript" defer src="js/cards.js"></script>
@@ -82,9 +81,10 @@
82 81
             <div class="col-md-3">
83 82
                 <h3>Card list</h3>
84 83
                 <form role="form">
84
+                    <span class="help-block" id="total_card_count">Deck contains 0 cards.</span>
85 85
                     <div class="form-group">
86 86
                         <label for="selected_card">Selected card</label>
87
-                        <select class="form-control" id="selected_card" readonly></select>
87
+                        <select class="form-control" id="selected_card"></select>
88 88
                     </div>
89 89
                     <button type="button" class="btn btn-primary btn-block disabled">Delete selected card</button>
90 90
                     <button type="button" class="btn btn-primary btn-block disabled">Add new card</button>

+ 8
- 0
generator/js/cards.js Ver arquivo

@@ -13,6 +13,14 @@ function card_default_options() {
13 13
     }
14 14
 }
15 15
 
16
+function card_default_data() {
17
+    return {
18
+        count: 1,
19
+        title: "New card",
20
+        contents: []
21
+    }
22
+}
23
+
16 24
 // ============================================================================
17 25
 // Card definition related functions
18 26
 // ============================================================================

+ 31
- 1
generator/js/ui.js Ver arquivo

@@ -1,3 +1,6 @@
1
+// Ugly global variable holding the current card deck
2
+var card_data = [];
3
+
1 4
 function ui_generate() {
2 5
     // Generate output HTML
3 6
     var card_html = card_pages_generate_html(card_data);
@@ -13,10 +16,12 @@ function ui_generate() {
13 16
 
14 17
 function ui_load_sample() {
15 18
     card_data = card_data_example;
19
+    ui_update_card_list();
16 20
 }
17 21
 
18 22
 function ui_clear_all() {
19 23
     card_data = [];
24
+    ui_update_card_list();
20 25
 }
21 26
 
22 27
 function ui_load_files(evt) {
@@ -29,13 +34,36 @@ function ui_load_files(evt) {
29 34
 
30 35
         reader.onload = function (reader) {
31 36
             var data = JSON.parse(this.result);
32
-            card_data = card_data.concat(data);
37
+            ui_add_cards(data);
33 38
         };
34 39
 
35 40
         reader.readAsText(f);
36 41
     }
37 42
 }
38 43
 
44
+function ui_add_cards(data) {
45
+    card_data = card_data.concat(data);
46
+    ui_update_card_list();
47
+}
48
+
49
+function ui_add_new_card() {
50
+    card_data.push(card_default_data());
51
+    ui_update_card_list();
52
+}
53
+
54
+function ui_update_card_list() {
55
+    $("#total_card_count").text("Deck contains " + card_data.length + " cards.");
56
+
57
+    $('#selected_card').empty();
58
+    for (var i = 0; i < card_data.length; ++i) {
59
+        var card = card_data[i];
60
+        $('#selected_card')
61
+            .append($("<option></option>")
62
+            .attr("value", i)
63
+            .text(card.title));
64
+    }
65
+}
66
+
39 67
 function ui_save_file() {
40 68
     var str = JSON.stringify(card_data, null, "  ");
41 69
     var parts = [str];
@@ -56,6 +84,8 @@ $(document).ready(function () {
56 84
     $("#file-load").change(ui_load_files);
57 85
     $("#button-load-sample").click(ui_load_sample);
58 86
     $("#button-save").click(ui_save_file);
87
+
88
+    ui_update_card_list();
59 89
 });
60 90
 
61 91
 

Carregando…
Cancelar
Salvar