application.form.main.html 15.6 KB
Newer Older
Open Source Developer's avatar
commit  
Open Source Developer committed
1 2 3
<div class="row">
             <breadcrubs></breadcrubs>
</div>
4
<div class = "loading" *ngIf="(criteria$ | async).size === 0"></div>
Open Source Developer's avatar
trans  
Open Source Developer committed
5
  <h4> Προσωπικά Στοιχεία Μαθητή </h4>
6
  <form novalidate  [formGroup]="studentDataGroup" #form>
7
    <form [formGroup]="applicantDataGroup">
Open Source Developer's avatar
trans  
Open Source Developer committed
8 9 10 11
      <p style="margin-top: 20px; line-height: 2em;"> Παρακαλώ συμπληρώστε τα στοιχεία του μαθητή και στη συνέχεια επιλέξτε <i>Συνέχεια</i>. <strong>Προσοχη!</strong> Παρακαλώ να συμπληρώσετε τα στοιχεία ακριβώς όπως είναι στον τελευταίο τίτλο κτήσης απολυτηρίου/ πτυχίου του μαθητή.</p>

      <p style="margin-top: 20px; line-height: 2em;"> <strong> Η ακρίβεια των στοιχείων που υποβάλλονται με αυτή τη δήλωση μπορεί να ελεγχθεί με βάση το αρχείο άλλων υπηρεσιών (άρθρο 8 παρ. 4 Ν. 1599/1986)</strong></p>

12 13 14 15 16 17 18 19 20 21 22 23 24 25
      <table>
        <tr><td>
          <div class="form-group">
            <label for="guardianfirstname">Όνομα κηδεμόνα</label><input class="form-control" type="text" formControlName="guardianfirstname" disabled = "true">
          </div>
        </td>
        <td>
          <div class="form-group">
            <label for="guardiansurname">Επώνυμο κηδεμόνα</label><input class="form-control" type="text" formControlName="guardiansurname" disabled = "true">
          </div>
        </td></tr>
      </table>
    </form>

26
    <div class="form-group">
27
        <label for="name">Όνομα μαθητή</label><input class="form-control" type="text" formControlName="name">
28
    </div>
29
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('name').touched && studentDataGroup.get('name').hasError('required')">
30 31
        Το πεδίο δεν μπορεί να αφεθεί κενό!
    </div>
32
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('name').dirty && studentDataGroup.get('name').hasError('pattern')">
33 34 35
        Δεν επιτρέπονται ψηφία ή άλλοι μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
    </div>

36
    <div class="form-group">
37
        <label for="studentsurname">Επώνυμο μαθητή</label><input class="form-control" type="text" formControlName="studentsurname">
38
    </div>
39
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('studentsurname').touched && studentDataGroup.get('studentsurname').hasError('required')">
40 41
        Το πεδίο δεν μπορεί να αφεθεί κενό!
    </div>
42
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('studentsurname').dirty && studentDataGroup.get('studentsurname').hasError('pattern')">
43 44 45
        Δεν επιτρέπονται ψηφία ή άλλοι μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
    </div>

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 72 73 74 75 76 77 78 79 80 81 82 83 84 85
    <div class="form-group">
        <label for="fatherfirstname">Όνομα πατέρα</label><input class="form-control" type="text" formControlName="fatherfirstname">
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('fatherfirstname').touched && studentDataGroup.get('fatherfirstname').hasError('required')">
        Το πεδίο δεν μπορεί να αφεθεί κενό!
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('fatherfirstname').dirty && studentDataGroup.get('fatherfirstname').hasError('pattern')">
        Δεν επιτρέπονται ψηφία ή άλλοι μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
    </div>

    <div class="form-group">
        <label for="fathersurname">Επώνυμο πατέρα</label><input class="form-control" type="text" formControlName="fathersurname">
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('fathersurname').touched && studentDataGroup.get('fathersurname').hasError('required')">
        Το πεδίο δεν μπορεί να αφεθεί κενό!
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('fathersurname').dirty && studentDataGroup.get('fathersurname').hasError('pattern')">
        Δεν επιτρέπονται ψηφία ή άλλοι μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
    </div>

    <div class="form-group">
        <label for="motherfirstname">Όνομα μητέρας</label><input class="form-control" type="text" formControlName="motherfirstname">
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('motherfirstname').touched && studentDataGroup.get('motherfirstname').hasError('required')">
        Το πεδίο δεν μπορεί να αφεθεί κενό!
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('motherfirstname').dirty && studentDataGroup.get('motherfirstname').hasError('pattern')">
        Δεν επιτρέπονται ψηφία ή άλλοι μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
    </div>

    <div class="form-group">
        <label for="mothersurname">Γένος μητέρας</label><input class="form-control" type="text" formControlName="mothersurname">
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('mothersurname').touched && studentDataGroup.get('mothersurname').hasError('required')">
        Το πεδίο δεν μπορεί να αφεθεί κενό!
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('mothersurname').dirty && studentDataGroup.get('mothersurname').hasError('pattern')">
        Δεν επιτρέπονται ψηφία ή άλλοι μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
    </div>

86
    <!--
87
    <div class="form-group">
88 89
        <label for="studentbirthdate">Ημερομηνία γέννησης</label>
        <input class="form-control" type="text" formControlName="studentbirthdate">
90
    </div>
91 92 93 94 95 96
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('studentbirthdate').pristine ">
        Η ημερομηνία γέννησης πρέπει να είναι της μορφής ΗΗ/ΜΜ/ΕΕΕΕ
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('studentbirthdate').dirty && studentDataGroup.get('studentbirthdate').hasError('pattern')">
        Η ημερομηνία γέννησης πρέπει να είναι της μορφής ΗΗ/ΜΜ/ΕΕΕΕ
    </div>
97 98 99 100 101 102 103 104
  -->
  <div class="form-group">
      <label for="studentbirthdate">Ημερομηνία γέννησης</label>
      <input class="form-control" type="date" formControlName="studentbirthdate">
  </div>
  <div class="alert alert-danger" *ngIf="studentDataGroup.get('studentbirthdate').touched && studentDataGroup.get('studentbirthdate').hasError('required')">
      Συμπληρώστε την ημερομηνία γέννησης του μαθητή!
  </div>
105 106 107 108 109





110 111 112 113
    <table>
        <tr>
            <td>
                <div class="form-group">
114
                    <label for="regionaddress">Διεύθυνση κατοικίας</label><input class="form-control" type="text" formControlName="regionaddress">
115
                </div>
116
                <div class="alert alert-danger" *ngIf="studentDataGroup.get('regionaddress').touched && studentDataGroup.get('regionaddress').hasError('required')">
117 118
                    Το πεδίο δεν μπορεί να αφεθεί κενό!
                </div>
119
                <div class="alert alert-danger" *ngIf="studentDataGroup.get('regionaddress').dirty && studentDataGroup.get('regionaddress').hasError('pattern')">
120 121
                    Δεν επιτρέπονται μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
                </div>
122 123 124
            </td>
            <td>
                <div class="form-group">
125
                    <label for="regiontk">TK </label><input class="form-control" type="text" formControlName="regiontk">
126
                </div>
127
                <div class="alert alert-danger" *ngIf="studentDataGroup.get('regiontk').touched && studentDataGroup.get('regiontk').hasError('required')">
128 129
                    Το πεδίο δεν μπορεί να αφεθεί κενό!
                </div>
130
                <div class="alert alert-danger" *ngIf="studentDataGroup.get('regiontk').dirty && studentDataGroup.get('regiontk').hasError('pattern')">
131 132
                    Δεν επιτρέπονται γράμματα αλφαβήτου ή μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
                </div>
133 134 135
            </td>
            <td>
                <div class="form-group">
136
                    <label for="regionarea">Πόλη/Περιοχή</label><input class="form-control" type="text" formControlName="regionarea">
137
                </div>
138
                <div class="alert alert-danger" *ngIf="studentDataGroup.get('regionarea').touched && studentDataGroup.get('regionarea').hasError('required')">
139 140
                    Το πεδίο δεν μπορεί να αφεθεί κενό!
                </div>
141
                <div class="alert alert-danger" *ngIf="studentDataGroup.get('regionarea').dirty && studentDataGroup.get('regionarea').hasError('pattern')">
142 143
                    Δεν επιτρέπονται μη έγκυροι χαρακτήρες σε αυτό το πεδίο!
                </div>
144 145 146 147
            </td>
        </tr>
    </table>

148
    <div class="form-group">
149 150
        <label for="certificatetype">Τύπος απολυτηρίου</label><br/>
        <select class="form-control" formControlName="certificatetype">
151
        <option value="noincomecriterio">Παρακαλώ επιλέξτε..</option>
152 153 154 155
        <option value="Απολυτήριο Γυμνασίου">Απολυτήριο Γυμνασίου</option>
        <option value="Απολυτήριο Λυκείου">Απολυτήριο Λυκείου</option>
    </select>
    </div>
156
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('certificatetype').dirty && studentDataGroup.get('certificatetype').hasError('status')">
157 158 159
        Η επιλογή από αυτή τη λίστα είναι απαραίτητη!
    </div>

160
    <div class="form-group">
161 162
        <label for="relationtostudent">Η αίτηση γίνεται από:</label><br/>
        <select class="form-control" formControlName="relationtostudent">
163
        <option value="noincomecriterio">Παρακαλώ επιλέξτε..</option>
164 165 166
        <option value="Γονέας/Κηδεμόνας">Γονέας/Κηδεμόνας</option>
        <option value="Μαθητής">Μαθητής</option>
    </select>
167
        <div class="alert alert-danger" *ngIf="studentDataGroup.get('relationtostudent').dirty && studentDataGroup.get('relationtostudent').hasError('status')">
168 169
            Η επιλογή από αυτή τη λίστα είναι απαραίτητη!
        </div>
170 171
    </div>

172 173 174 175 176 177 178 179 180 181
    <div class="form-group">
        <label for="telnum">Τηλέφωνο επικοινωνίας</label><input class="form-control" type="text" formControlName="telnum">
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('telnum').touched && studentDataGroup.get('telnum').hasError('required')">
        Το πεδίο δεν μπορεί να αφεθεί κενό!
    </div>
    <div class="alert alert-danger" *ngIf="studentDataGroup.get('telnum').dirty && studentDataGroup.get('telnum').hasError('pattern')">
        Επιτρέπονται μόνο ψηφία σε αυτό το πεδίο!
    </div>

182

183
    <form novalidate [formGroup]="studentCriteriaGroup">
184
      <!--
185
        <fieldset class="group">
186
      -->
187

188
        <!-- TEST for defining income in combolist in a redux-dynamic way-->
189
        <!--
190
        <select #cblsttest class="form-control" (change)="checkstatus(cblsttest)" formControlName="incometest">
191
        <option *ngFor="let criterIncome$ of criteriaIncome$   | async; let i=index">
192
           <div *ngIf="criter$.name === 'Εισόδημα' && criter$.name !== 'Απόσταση'">
193
             {{criterIncome$.name}}> </div>  </option>
194
        </select>
195
      -->
196

197

198
      <!--
199 200
        <div class="form-group">
            <label for="income">Το κατά κεφαλήν εισόδημα στο προηγούμενο φορολογικό έτος είναι:</label><br/>
201 202 203 204 205 206
              <select #cblst class="form-control" (change)="checkstatus(cblst)" formControlName="income">
              <option value="noincomecriterio" [selected] = "selectionIncomeId === 0" >Παρακαλώ επιλέξτε..</option>
              <option value="<= 3000 Ευρώ" [selected] = "selectionIncomeId === 8" >μικρότερο ή ίσο των 3000 Ευρώ</option>
              <option value="<= 6000 Ευρώ" [selected] = "selectionIncomeId === 9" >μικρότερο ή ίσο των 6000 Ευρώ</option>
              <option value="<= 9000 Ευρώ" [selected] = "selectionIncomeId === 10" >μικρότερο ή ίσο των 9000 Ευρώ</option>
              <option value="> 9000 Ευρώ" [selected] = "selectionIncomeId === 11" >μεγαλύτερο των 9000 Ευρώ</option>
207
            </select>
208

209
            <div class="alert alert-danger" *ngIf=" studentCriteriaGroup.get('income').hasError('status')">
210 211 212
                  Η επιλογή από αυτή τη λίστα είναι απαραίτητη!
            </div>
        </div>
213
      -->
214

215 216
        <div formArrayName="formArray">

217 218 219
          <legend>Εισοδηματικά κριτήρια</legend>
          <div *ngFor="let criter$ of criteria$   | async; let j=index">
            <div class="row" *ngIf="criter$.category === 'Εισοδηματικό' ">
220
              <div class="col-md-1">
221
                  <input #cb type="checkbox" (change)="checkcriteria(cb, criter$.mutual_disabled_id)" formControlName={{j}}>
222 223 224 225 226
              </div>
              <div class="col-md-11 pull-left">
                  {{criter$.name}}
              </div>
            </div>
227 228
          </div>

229 230 231 232 233
          <legend>Κοινωνικά κριτήρια</legend>
          <p style="margin-top: 15px; line-height: 1.5em;">Επιλέξτε όσα από τα παρακάτω κριτήρια πληρούνται για εσάς.
            Οι επιλογές σας επέχουν θέση υπέυθυνης δήλωσης.
            Θα πρέπει να προσκομίσετε τα αντίστοιχα δικαιολογητικά στο σχολείο εγγραφής σας, όταν σας ζητηθεί.
          </p>
234 235

          <div *ngFor="let criter$ of criteria$   | async; let i=index">
236
            <div class="row" *ngIf="criter$.category === 'Κοινωνικό' ">
237 238 239 240 241 242 243 244 245 246
              <div class="col-md-1">
                  <input #cb type="checkbox" (change)="checkcriteria(cb, criter$.mutual_disabled_id)" formControlName={{i}}>
              </div>
              <div class="col-md-11 pull-left">
                  {{criter$.name}}
              </div>
            </div>
          </div>


247 248 249 250
      <div class="row">
      </div>

      <!--
251
      </fieldset>
252 253
    -->
    </div>
254 255 256

    </form>

257
    <div class="row" style="margin-top: 20px;" *ngIf="(criteria$ | async).size > 0">
258 259
        <div class="col-md-6">
            <button type="button" class="btn-primary btn-lg pull-left" (click)="navigateBack()">
Open Source Developer's avatar
Open Source Developer committed
260
                <i class="fa fa-backward"></i>
261 262
            </button>
        </div>
263
        <div class="col-md-6">
264
            <button type="button" class="btn-primary btn-lg pull-right" (click)="submitSelected()" [disabled]="studentDataGroup.invalid || studentCriteriaGroup.invalid " >
Open Source Developer's avatar
Open Source Developer committed
265
                <i class="fa fa-forward"></i>
266 267
            </button>
        </div>
268

269 270
    </div>

271
  </form>