Blame view

PFE06/src/main/resources/static/js/update.js 7.54 KB
f6a02b6c   Unknown   Mise à jour front...
1
2
  $(document).ready(function() {
  
4ca22bac   Unknown   Bouton "Lancer la...
3
      /********** Start saved maj ************/
cb678ccc   Unknown   Changement pour l...
4
  
4ca22bac   Unknown   Bouton "Lancer la...
5
      var startMaj = document.getElementById("start_maj");
cb678ccc   Unknown   Changement pour l...
6
  
4ca22bac   Unknown   Bouton "Lancer la...
7
      startMaj.addEventListener('click', function() {
cb678ccc   Unknown   Changement pour l...
8
9
          var modalContent = document.getElementById("modal-content");
          var modalTitle = document.getElementById("modal-title");
4ca22bac   Unknown   Bouton "Lancer la...
10
11
          var majNameSelect = document.getElementById("maj_name").value;
          if(majNameSelect !== "" && majNameSelect !== "--") {
cb678ccc   Unknown   Changement pour l...
12
              var request = new XMLHttpRequest();
4ca22bac   Unknown   Bouton "Lancer la...
13
14
15
              request.open("POST", "/startsavedmaj");
              var formData = new FormData();
              formData.append("majname", majNameSelect);
cb678ccc   Unknown   Changement pour l...
16
17
18
19
  
              request.onreadystatechange = function() {
                  if(this.readyState === XMLHttpRequest.DONE && this.status === 200) {
                      var modalButton = document.getElementById("modal-button");
4ca22bac   Unknown   Bouton "Lancer la...
20
                      modalButton.addEventListener('click', function() {
cb678ccc   Unknown   Changement pour l...
21
22
                          location.reload();
                      })
cb678ccc   Unknown   Changement pour l...
23
                      modalTitle.innerHTML = "Félicitations";
4ca22bac   Unknown   Bouton "Lancer la...
24
                      modalContent.innerHTML = "La mise à jour a bien été paramétrée";
cb678ccc   Unknown   Changement pour l...
25
26
27
                      $("#warningFilesNumber").modal();
                  }
              }
cb678ccc   Unknown   Changement pour l...
28
29
30
              request.send(formData);
          }
          else {
4ca22bac   Unknown   Bouton "Lancer la...
31
32
33
              modalTitle.innerHTML = "Attention !";
              modalContent.innerHTML = "Veuillez choisir le nom d'une mise à jour";
              $("#warningFilesNumber").modal();
cb678ccc   Unknown   Changement pour l...
34
          }
cb678ccc   Unknown   Changement pour l...
35
36
      })
  
4ca22bac   Unknown   Bouton "Lancer la...
37
38
39
  
      /********** Configuration file ***********/
  
e7370ebe   Antoine Duquenoy   Backend - Configu...
40
41
42
43
44
45
46
  
  
  
  
  
  
      /*
4ca22bac   Unknown   Bouton "Lancer la...
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
      var configName = document.getElementById("config_name");
      var configSend = document.getElementById("config_send");
      var file = document.getElementById("configInputFile");
      var readyToSend = false;
      var formData = new FormData();
  
      if(file != null) {
          file.addEventListener('change', function () {
              delete formData;
              formData = new FormData();
              configName.innerHTML = this.files[0].name;
              formData.append("file", this.files[0]);
              readyToSend = true;
          }, false)
  
          configSend.addEventListener('click', function () {
              var modalContent = document.getElementById("modal-content");
              var modalTitle = document.getElementById("modal-title");
              if (readyToSend) {
                  var request = new XMLHttpRequest();
                  request.open("POST", "/config");
  
                  request.onreadystatechange = function () {
                      if (this.readyState === XMLHttpRequest.DONE && this.status === 200) {
                          var modalButton = document.getElementById("modal-button");
                          modalButton.addEventListener('click', function (e) {
                              location.reload();
                          })
                          modalContent.innerHTML = "Upload terminé !";
                          modalTitle.innerHTML = "Félicitations";
                          $("#warningFilesNumber").modal();
                      }
                  }
  
                  request.send(formData);
              }
              else {
                  modalContent.innerHTML = "Veuillez sélectionner un fichier !";
                  $("#warningFilesNumber").modal()
              }
  
          })
      }
  
e7370ebe   Antoine Duquenoy   Backend - Configu...
91
92
  */
  
f6a02b6c   Unknown   Mise à jour front...
93
94
95
96
97
98
99
100
101
102
      /********** Tableau **********/
  
        var tableNodes = $('#nodes-table').DataTable( {
            responsive: true,
            select: {
                style: 'multi'
            }
        } );
  
        var nodeSet = new Set();
180f54e5   Antoine Duquenoy   Spring : ajouts m...
103
104
        var arch = "";
        var first = true;
f6a02b6c   Unknown   Mise à jour front...
105
106
107
  
        tableNodes.on('select', function (e, dt, type, indexes) {
          var rowData = tableNodes.rows(indexes).data().toArray()[0];
c6289fa5   Antoine Duquenoy   Modifications min...
108
          nodeSet.add(rowData[3] + "@" + rowData[1]);
180f54e5   Antoine Duquenoy   Spring : ajouts m...
109
110
111
112
113
114
115
116
117
118
          var lastArch = arch;
          arch = rowData[2];
          if(first != true && lastArch != arch)
          {
              alert("Veuillez choisir la même architecture");
              tableNodes.rows().deselect();
              nodeSet.clear();
              first = true;
          }
          first = false;
f6a02b6c   Unknown   Mise à jour front...
119
120
121
122
        } );
  
        tableNodes.on('deselect', function (e, dt, type, indexes) {
          var rowData = tableNodes.rows(indexes).data().toArray()[0];
c6289fa5   Antoine Duquenoy   Modifications min...
123
          nodeSet.delete(rowData[3] + "@" + rowData[1]);
f6a02b6c   Unknown   Mise à jour front...
124
125
        } );
  
4ca22bac   Unknown   Bouton "Lancer la...
126
        var sendInfoMaj = function(action) {
4ca22bac   Unknown   Bouton "Lancer la...
127
128
129
            var form = document.createElement('form');
            form.setAttribute('action', action);
            form.setAttribute('method', 'post');
f6a02b6c   Unknown   Mise à jour front...
130
  
4ca22bac   Unknown   Bouton "Lancer la...
131
132
133
            var modalContent = document.getElementById("modal-content");
            var majName = document.getElementById("majName").value;
            var majDate = document.getElementById("majDate").value;
c6289fa5   Antoine Duquenoy   Modifications min...
134
            var majTime = document.getElementById("majTime").value;
4ca22bac   Unknown   Bouton "Lancer la...
135
            var majFile = document.getElementById("file_choice").value;
f6a02b6c   Unknown   Mise à jour front...
136
  
4ca22bac   Unknown   Bouton "Lancer la...
137
138
139
            if(nodeSet.size == 0) {
                $("#warningFilesNumber").modal();
            }
f6a02b6c   Unknown   Mise à jour front...
140
  
4ca22bac   Unknown   Bouton "Lancer la...
141
142
143
144
            else if(majName === "") {
                modalContent.innerHTML = "Veuillez choisir un nom pour la mise à jour";
                $("#warningFilesNumber").modal();
            }
f6a02b6c   Unknown   Mise à jour front...
145
  
4ca22bac   Unknown   Bouton "Lancer la...
146
147
148
149
            else if(majDate === "") {
                modalContent.innerHTML = "Veuillez choisir une date pour la mise à jour"
                $("#warningFilesNumber").modal();
            }
f6a02b6c   Unknown   Mise à jour front...
150
  
c6289fa5   Antoine Duquenoy   Modifications min...
151
152
153
154
155
            else if(majTime === "") {
                modalContent.innerHTML = "Veuillez choisir une durée pour la mise à jour"
                $("#warningFilesNumber").modal();
            }
  
4ca22bac   Unknown   Bouton "Lancer la...
156
157
158
159
            else if(majFile === "" || majFile === "--") {
                modalContent.innerHTML = "Veuillez choisir un fichier pour la mise à jour"
                $("#warningFilesNumber").modal();
            }
2df8b522   Unknown   Choix du fichier ...
160
  
4ca22bac   Unknown   Bouton "Lancer la...
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
            else {
                var nodes = Array.from(nodeSet);
  
                var inputvar1 = document.createElement('input');
                inputvar1.setAttribute('type', 'hidden');
                inputvar1.setAttribute('name', 'name');
                inputvar1.setAttribute('value', majName);
                form.appendChild(inputvar1);
  
                var inputvar2 = document.createElement('input');
                inputvar2.setAttribute('type', 'hidden');
                inputvar2.setAttribute('name', 'date');
                inputvar2.setAttribute('value', majDate);
                form.appendChild(inputvar2);
  
                var inputvar3 = document.createElement('input');
                inputvar3.setAttribute('type', 'hidden');
                inputvar3.setAttribute('name', 'nodes');
                inputvar3.setAttribute('value', nodes.join(";"));
                form.appendChild(inputvar3);
  
                var inputvar4 = document.createElement('input');
                inputvar4.setAttribute('type', 'hidden');
                inputvar4.setAttribute('name', 'file');
                inputvar4.setAttribute('value', majFile);
                form.appendChild(inputvar4);
  
c6289fa5   Antoine Duquenoy   Modifications min...
188
189
190
191
192
193
                var inputvar5 = document.createElement('input');
                inputvar5.setAttribute('type', 'hidden');
                inputvar5.setAttribute('name', 'time');
                inputvar5.setAttribute('value', majTime);
                form.appendChild(inputvar5);
  
180f54e5   Antoine Duquenoy   Spring : ajouts m...
194
195
196
197
198
199
                var inputvar6 = document.createElement('input');
                inputvar6.setAttribute('type', 'hidden');
                inputvar6.setAttribute('name', 'arch');
                inputvar6.setAttribute('value', arch);
                form.appendChild(inputvar6);
  
4ca22bac   Unknown   Bouton "Lancer la...
200
201
202
203
                document.body.appendChild(form);
                form.submit();
            }
        }
f6a02b6c   Unknown   Mise à jour front...
204
  
4ca22bac   Unknown   Bouton "Lancer la...
205
206
207
208
209
        document.getElementById("save_maj").addEventListener('click', function() {
            sendInfoMaj('savemaj');
        });
        document.getElementById("run_maj").addEventListener('click', function() {
            sendInfoMaj('runmaj');
f6a02b6c   Unknown   Mise à jour front...
210
211
212
        });
  
  } );