application.form.main.html 15.8 KB
Newer Older
Open Source Developer's avatar
commit  
Open Source Developer committed
1
<div class="row">
2
             <breadcrumbs></breadcrumbs>
Open Source Developer's avatar
commit  
Open Source Developer committed
3
</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
    <div class="form-group">
173
        <label for="telnum">Κινητό Τηλέφωνο</label><input class="form-control" type="text" formControlName="telnum">
174 175 176 177 178
    </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')">
179
        Επιτρέπονται μόνο ψηφία σε αυτό το πεδίο και πρέπει να αντιστοιχούν σε κινητό τηλέφωνο!
180 181
    </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
          <legend>Κοινωνικά κριτήρια</legend>
          <p style="margin-top: 15px; line-height: 1.5em;">Επιλέξτε όσα από τα παρακάτω κριτήρια πληρούνται για εσάς.
231
            Οι επιλογές σας επέχουν θέση υπεύθυνης δήλωσης.
232 233
            Θα πρέπει να προσκομίσετε τα αντίστοιχα δικαιολογητικά στο σχολείο εγγραφής σας, όταν σας ζητηθεί.
          </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; margin-bottom: 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 265
            <button type="button" class="btn-primary btn-lg pull-right isclickable" style="width: 9em;" (click)="submitSelected()" [disabled]="studentDataGroup.invalid || studentCriteriaGroup.invalid ">
                <span style="font-size: 0.9em; font-weight: bold;">Συνέχεια&nbsp;&nbsp;&nbsp;</span><i class="fa fa-forward"></i>
266 267
            </button>
        </div>
268

269 270
    </div>

271
  </form>