ladok3 4.13__py3-none-any.whl → 5.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
ladok3/undoc.nw CHANGED
@@ -1,6 +1,8 @@
1
1
  \chapter{Baltatzis' and Maguire's original [[LadokSession]] methods}
2
2
 
3
3
  Below are the original [[LadokSession]] methods by Baltatzis and Maguire.
4
+ These are merely kept for backwards compatibility.
5
+
4
6
  The one missing is the constructor, that has been replaced by the code above.
5
7
  Also, the code has been adapted to use [[self.session]] instead of
6
8
  [[self.__session]] etc.
@@ -46,7 +48,7 @@ Also, the code has been adapted to use [[self.session]] instead of
46
48
  def get_results(self, person_nr_raw, course_code):
47
49
  person_nr_raw = str(person_nr_raw)
48
50
  person_nr = format_personnummer(person_nr_raw)
49
- if not person_nr: raise Exception('Invalid person nr ' + person_nr_raw)
51
+ if not person_nr: raise LadokValidationError('Invalid person nr ' + person_nr_raw)
50
52
 
51
53
  student_data = self.__get_student_data(person_nr)
52
54
 
@@ -123,19 +125,19 @@ def get_results(self, person_nr_raw, course_code):
123
125
  def save_result(self, person_nr_raw, course_code, course_moment,
124
126
  result_date_raw, grade_raw, grade_scale):
125
127
  if grade_raw in ["AF", "PF"]:
126
- raise Exception('Invalid grade: ' + grade_raw + ' looks like a grade_scale')
128
+ raise LadokValidationError('Invalid grade: ' + grade_raw + ' looks like a grade_scale')
127
129
 
128
130
  if (grade_raw == 'P' and grade_scale == "AF") or \
129
131
  (grade_raw in "ABCDE" and grade_scale == "PF"):
130
- raise Exception('Invalid grade: ' + grade_raw +
132
+ raise LadokValidationError('Invalid grade: ' + grade_raw +
131
133
  ' does not match grade_scale ' + grade_scale)
132
134
 
133
135
  person_nr = format_personnummer(person_nr_raw)
134
- if not person_nr: raise Exception('Invalid person nr ' + person_nr_raw)
136
+ if not person_nr: raise LadokValidationError('Invalid person nr ' + person_nr_raw)
135
137
 
136
138
  result_date = self.__validate_date(result_date_raw)
137
139
  if not result_date:
138
- raise Exception('Invalid grade date: ' + result_date_raw + ' pnr: ' +
140
+ raise LadokValidationError('Invalid grade date: ' + result_date_raw + ' pnr: ' +
139
141
  person_nr_raw + ' moment: ' + course_moment)
140
142
 
141
143
  student_data = self.__get_student_data(person_nr)
@@ -207,7 +209,7 @@ def save_result(self, person_nr_raw, course_code, course_moment,
207
209
  headers=headers)
208
210
 
209
211
  if not 'Resultat' in r.json():
210
- raise Exception("Couldn't register " +
212
+ raise LadokServerError("Couldn't register " +
211
213
  course_moment + "=" + grade_raw + " " + result_date_raw + ": " +
212
214
  r.json()["Meddelande"])
213
215
 
@@ -230,7 +232,7 @@ def save_result(self, person_nr_raw, course_code, course_moment,
230
232
  def get_student_data(self, person_nr_raw):
231
233
  person_nr = format_personnummer(person_nr_raw)
232
234
 
233
- if not person_nr: raise Exception('Invalid person nr ' + person_nr_raw)
235
+ if not person_nr: raise LadokValidationError('Invalid person nr ' + person_nr_raw)
234
236
 
235
237
  student_data = self.__get_student_data(person_nr)
236
238
  return student_data
@@ -249,7 +251,7 @@ def get_student_data(self, person_nr_raw):
249
251
  def get_student_name(self, person_nr_raw):
250
252
  person_nr = format_personnummer(person_nr_raw)
251
253
 
252
- if not person_nr: raise Exception('Invalid person nr ' + person_nr_raw)
254
+ if not person_nr: raise LadokValidationError('Invalid person nr ' + person_nr_raw)
253
255
 
254
256
  student_data = self.__get_student_data(person_nr)
255
257
  return {
@@ -261,6 +263,7 @@ def get_student_name(self, person_nr_raw):
261
263
 
262
264
  \section{[[all_grading_scale]]}
263
265
 
266
+ This is just to maintain the old method name.
264
267
  <<LadokSession data methods>>=
265
268
  # added by GQMJr
266
269
  #####################################################################
@@ -274,27 +277,11 @@ def all_grading_scale(self):
274
277
  @
275
278
 
276
279
 
277
- \section{[[grading_rights]]}
278
-
279
- <<LadokSession data methods>>=
280
- # added by GQMJr
281
- #####################################################################
282
- #
283
- # grading_rights
284
- #
285
- #
286
- # RETURNERAR en dictionary of the grading rights (of the logged in user)
287
- def grading_rights(self):
288
- r = self.session.get(
289
- url=self.base_gui_proxy_url +
290
- '/resultat/resultatrattighet/listaforinloggadanvandare',
291
- headers=self.headers).json()
292
- return r['Resultatrattighet']
293
- @
294
-
295
-
296
280
  \section{[[change_locale]]}
297
281
 
282
+ This probably changes the default locale in the LADOK web interface.
283
+ And that might affect the default languages in responses.
284
+ Needs testing though.
298
285
  <<LadokSession data methods>>=
299
286
  # added by GQMJr
300
287
  #####################################################################
@@ -312,50 +299,10 @@ def change_locale(self, lang = 'sv'):
312
299
  @
313
300
 
314
301
 
315
- \section{[[course_instances_JSON]]}
316
-
317
- <<LadokSession data methods>>=
318
- # added by GQMJr
319
- #####################################################################
320
- #
321
- # course_instances_JSON
322
- #
323
- # course_code - course code, such as "II2202"
324
- #
325
- # lang - language code 'en' or 'sv', defaults to 'sv'
326
- #
327
- # RETURNERAR JSON of resultat/kurstillfalle
328
- #
329
- # Example: ladok_session.course_instances('II2202', 'en')
330
- def course_instances_JSON(self, course_code, lang = 'sv'):
331
- # note that there seems to be a limit of 403 for the number of pages
332
- r = self.session.get(
333
- url=self.base_gui_proxy_url + '/resultat/kurstillfalle/filtrera?kurskod=' +
334
- course_code + '&page=1&limit=100&skipCount=false&sprakkod=' + lang,
335
- headers=self.headers).json()
336
- return r
337
- @
338
-
339
-
340
- \section{[[organization_info_JSON]]}
341
-
342
- <<LadokSession data methods>>=
343
- # added by GQMJr
344
- #####################################################################
345
- #
346
- # organization_info_JSON
347
- #
348
- # RETURNERAR en dictionary of organization information for the entire institution of the logged in user
349
- def organization_info_JSON(self):
350
- r = self.session.get(
351
- url=self.base_gui_proxy_url + '/resultat/organisation/utanlankar',
352
- headers=self.headers).json()
353
- return r
354
- @
355
-
356
-
357
302
  \section{[[period_info_JSON]]}
358
303
 
304
+ This no longer works.
305
+ We should investigate if there is another API call to get this information.
359
306
  <<LadokSession data methods>>=
360
307
  # added by GQMJr
361
308
  #####################################################################
@@ -365,2826 +312,14 @@ def organization_info_JSON(self):
365
312
  # RETURNERAR JSON of /resultat/grunddata/period
366
313
  def period_info_JSON(self):
367
314
  r = self.session.get(
368
- url=self.base_gui_proxy_url + '/resultat/grunddata/period',
369
- headers=self.headers).json()
370
- return r
371
- @
372
-
373
-
374
- \section{[[instance_info]]}
375
-
376
- <<LadokSession data methods>>=
377
- # added by GQMJr
378
- #####################################################################
379
- #
380
- # instance_info
381
- #
382
- # course_code - course code, such as "II2202"
383
- #
384
- # instance_code - instance of the course ('TillfallesKod')
385
- #
386
- # lang - language code 'en' or 'sv', defaults to 'sv'
387
- #
388
- # RETURNERAR en dictionary of course instance information
389
- #
390
- # Example: ii=ladok_session.instance_info('II2202', instance_code, 'en')
391
- def instance_info(self, course_code, instance_code, lang = 'sv'):
392
- r = self.session.get(
393
- url=self.base_gui_proxy_url +
394
- '/resultat/kurstillfalle/filtrera?kurskod=' + course_code +
395
- '&page=1&limit=25&skipCount=false&sprakkod=' + lang,
396
- headers=self.headers)
397
- if r.status_code == requests.codes.ok:
398
- rj=r.json()
399
- for course in rj['Resultat']:
400
- if course['TillfallesKod'] == instance_code:
401
- return course
402
- return None
403
- @
404
-
405
-
406
- \section{[[instance_info_uid]]}
407
-
408
- <<LadokSession data methods>>=
409
- # added by GQMJr
410
- #####################################################################
411
- #
412
- # instance_info_uid
413
- #
414
- # instance_uid -- course's Uid (from course_integration_id)
415
- #
416
- # RETURNERAR en dictionary of course instance information
417
- #
418
- # Example: ii=ladok_session.instance_info_uid(instance_uid)
419
- def instance_info_uid(self, instance_uid):
420
- r = self.session.get(
421
- url=self.base_gui_proxy_url + '/resultat/kurstillfalle/'+instance_uid,
315
+ url=self.base_gui_proxy_url + '/resultat/internal/grunddata/period',
316
+ # doesn't work, but also not after adding 'internal/' between 'resultat/'
317
+ # and 'grunddata' /CO
422
318
  headers=self.headers).json()
423
319
  return r
424
320
  @
425
321
 
426
322
 
427
-
428
- \section{[[studystructure_student_JSON]]}
429
-
430
- <<LadokSession data methods>>=
431
- # added by GQMJr
432
- #####################################################################
433
- #
434
- # studystructure_student_JSON
435
- #
436
- # uid - uid of a student
437
- #
438
- # RETURNERAR en dictionary of student information
439
- def studystructure_student_JSON(self, uid):
440
- r = self.session.get(
441
- url=self.base_gui_proxy_url +
442
- '/studiedeltagande/studiestruktur/student/'+uid,
443
- headers=self.headers)
444
- if r.status_code == 200:
445
- return r.json()
446
- return None
447
- @
448
-
449
-
450
- \section{[[larosatesinformation_JSON]]}
451
-
452
- <<LadokSession data methods>>=
453
- # added by GQMJr
454
- #####################################################################
455
- #
456
- # larosatesinformation_JSON
457
- #
458
- # RETURNERAR JSON of the university or college information
459
- def larosatesinformation_JSON(self):
460
- r = self.session.get(
461
- url=self.base_gui_proxy_url +
462
- '/kataloginformation/grunddata/larosatesinformation',
463
- headers=self.headers).json()
464
- return r
465
-
466
- # { 'Larosatesinformation': [ { 'Benamning': { 'en': 'Royal Institute of '
467
- # 'Technology',
468
- # 'sv': 'Kungliga Tekniska '
469
- # 'högskolan'},
470
- # 'Beskrivning': {},
471
- # 'Giltighetsperiod': {'link': []},
472
- # 'ID': '29',
473
- # 'Kod': 'KTH',
474
- # 'LarosateID': 29,
475
- # 'OrtID': 18,
476
- # 'link': []}],
477
- # 'link': []}
478
- @
479
-
480
-
481
- \section{[[undervisningssprak_JSON]]}
482
-
483
- <<LadokSession data methods>>=
484
- # added by GQMJr
485
- #####################################################################
486
- #
487
- # undervisningssprak
488
- #
489
- # RETURNERAR en dictionary of languages used for instruction
490
- def undervisningssprak_JSON(self):
491
- r = self.session.get(
492
- url=self.base_gui_proxy_url +
493
- '/kataloginformation/grunddata/undervisningssprak',
494
- headers=self.headers).json()
495
- return r
496
- # { 'Undervisningssprak': [ { 'Benamning': { 'en': 'English',
497
- # 'sv': 'Engelska'},
498
- # 'Beskrivning': {},
499
- # 'Giltighetsperiod': {'link': []},
500
- # 'ID': '2',
501
- # 'Kod': 'ENG',
502
- # 'LarosateID': -1,
503
- # 'link': []},
504
- # { 'Benamning': {'en': 'Russian', 'sv': 'Ryska'},
505
- # 'Beskrivning': {},
506
- # 'Giltighetsperiod': {'link': []},
507
- # 'ID': '4',
508
- # 'Kod': 'RUS',
509
- # 'LarosateID': -1,
510
- # 'link': []},
511
- # { 'Benamning': { 'en': 'Sign Language',
512
- # 'sv': 'Teckenspråk'},
513
- # 'Beskrivning': {},
514
- # 'Giltighetsperiod': {'link': []},
515
- # 'ID': '5',
516
- # 'Kod': 'SGN',
517
- # 'LarosateID': -1,
518
- # 'link': []},
519
- # { 'Benamning': { 'en': 'Spanish',
520
- # 'sv': 'Spanska'},
521
- # 'Beskrivning': {},
522
- # 'Giltighetsperiod': {'link': []},
523
- # 'ID': '3',
524
- # 'Kod': 'SPA',
525
- # 'LarosateID': -1,
526
- # 'link': []},
527
- # { 'Benamning': { 'en': 'Swedish',
528
- # 'sv': 'Svenska'},
529
- # 'Beskrivning': {},
530
- # 'Giltighetsperiod': {'link': []},
531
- # 'ID': '1',
532
- # 'Kod': 'SWE',
533
- # 'LarosateID': -1,
534
- # 'link': []},
535
- # { 'Benamning': {'en': 'Danish', 'sv': 'Danska'},
536
- # 'Beskrivning': {},
537
- # 'Giltighetsperiod': {'link': []},
538
- # 'ID': '109804',
539
- # 'Kod': 'DAN',
540
- # 'LarosateID': -1,
541
- # 'link': []},
542
- # { 'Benamning': { 'en': 'Finnish',
543
- # 'sv': 'Finska'},
544
- # 'Beskrivning': {},
545
- # 'Giltighetsperiod': {'link': []},
546
- # 'ID': '109805',
547
- # 'Kod': 'FIN',
548
- # 'LarosateID': -1,
549
- # 'link': []},
550
- # { 'Benamning': { 'en': 'Italian',
551
- # 'sv': 'Italienska'},
552
- # 'Beskrivning': {},
553
- # 'Giltighetsperiod': {'link': []},
554
- # 'ID': '109806',
555
- # 'Kod': 'ITA',
556
- # 'LarosateID': -1,
557
- # 'link': []},
558
- # { 'Benamning': { 'en': 'Japanese',
559
- # 'sv': 'Japanska'},
560
- # 'Beskrivning': {},
561
- # 'Giltighetsperiod': {'link': []},
562
- # 'ID': '109807',
563
- # 'Kod': 'JPN',
564
- # 'LarosateID': -1,
565
- # 'link': []},
566
- # { 'Benamning': { 'en': 'Norwegian',
567
- # 'sv': 'Norska'},
568
- # 'Beskrivning': {},
569
- # 'Giltighetsperiod': {'link': []},
570
- # 'ID': '109808',
571
- # 'Kod': 'NOR',
572
- # 'LarosateID': -1,
573
- # 'link': []},
574
- # { 'Benamning': { 'en': 'Portugese',
575
- # 'sv': 'Portugisiska'},
576
- # 'Beskrivning': {},
577
- # 'Giltighetsperiod': {'link': []},
578
- # 'ID': '109809',
579
- # 'Kod': 'POR',
580
- # 'LarosateID': -1,
581
- # 'link': []},
582
- # { 'Benamning': { 'en': 'French',
583
- # 'sv': 'Franska'},
584
- # 'Beskrivning': {},
585
- # 'Giltighetsperiod': {'link': []},
586
- # 'ID': '109810',
587
- # 'Kod': 'FRE',
588
- # 'LarosateID': -1,
589
- # 'link': []},
590
- # { 'Benamning': {'en': 'German', 'sv': 'Tyska'},
591
- # 'Beskrivning': {},
592
- # 'Giltighetsperiod': {'link': []},
593
- # 'ID': '109811',
594
- # 'Kod': 'GER',
595
- # 'LarosateID': -1,
596
- # 'link': []},
597
- # { 'Benamning': { 'en': 'Chinese',
598
- # 'sv': 'Kinesiska'},
599
- # 'Beskrivning': {},
600
- # 'Giltighetsperiod': {'link': []},
601
- # 'ID': '111033',
602
- # 'Kod': 'CHI',
603
- # 'LarosateID': -1,
604
- # 'link': []},
605
- # { 'Benamning': { 'en': 'Arabic',
606
- # 'sv': 'Arabiska'},
607
- # 'Beskrivning': {},
608
- # 'Giltighetsperiod': {'link': []},
609
- # 'ID': '111032',
610
- # 'Kod': 'ARA',
611
- # 'LarosateID': -1,
612
- # 'link': []}],
613
- # 'link': []}
614
- @
615
-
616
-
617
- \section{[[i18n_translation_JSON]]}
618
-
619
- <<LadokSession data methods>>=
620
- # added by GQMJr
621
- #####################################################################
622
- #
623
- # i18n_translation_JSON
624
- #
625
- # lang - language code 'en' or 'sv', defaults to 'sv'
626
- # RETURNERAR JSON of i18n translations used in Ladok3
627
- def i18n_translation_JSON(self, lang = 'sv'):
628
- r = self.session.get(
629
- url=self.base_gui_proxy_url +
630
- '/kataloginformation/i18n/oversattningar/sprakkod/' + lang,
631
- headers=self.headers).json()
632
- return r
633
-
634
- # the above i18n translations are used for example in:
635
- # 'Utbildningstillfallestyp': { 'Benamningar': { 'en': 'Course instance', 'sv': 'Kurstillfälle'},
636
- # 'Giltighetsperiod': { 'link': [ ]},
637
- # 'Grundtyp': 'KURS',
638
- # 'ID': 52,
639
- # 'Kod': '2007KTF',
640
- # 'RegelverkForUtbildningstyp': { 'Regelvarden': [ { 'Regelnamn': 'commons.domain.regel.ingar.i.grupp.overfors.till.nya', 'link': [ ]},
641
- # { 'Regelnamn': 'commons.domain.regel.informationsbehorighet.grundavancerad', 'Varde': 'true', 'link': [ ]},
642
- # { 'Regelnamn': 'commons.domain.regel.kan.utannonseras', 'Varde': 'true', 'link': [ ]},
643
- # { 'Regelnamn': 'commons.domain.regel.grupp.for.utsokning',
644
- # 'Varde': 'grupp.for.utsokning.grundavanceradniva', 'link': [ ]}],
645
- # All of the things of the form "commons-domain.*" are i18n keys to look the actual text to be used.
646
- # for example:
647
- # in Swedish:
648
- #{ 'I18nNyckel': 'commons.domain.regel.ingar.i.grupp.overfors.till.nya',
649
- # 'Text': 'Ingår i grupp: Överförs till NyA',
650
- # 'link': []},
651
- # In English:
652
- # { 'I18nNyckel': 'commons.domain.regel.ingar.i.grupp.overfors.till.nya',
653
- # 'Text': 'Part of group: Transferred to NyA',
654
- # 'link': []},
655
- @
656
-
657
-
658
- \section{[[svenskorter_JSON]]}
659
-
660
- <<LadokSession data methods>>=
661
- # added by GQMJr
662
- #####################################################################
663
- #
664
- # svenskorter_JSON
665
- #
666
- # RETURNERAR JSON of places in Sweden with their KommunID
667
- def svenskorter_JSON(self):
668
- r = self.session.get(
669
- url=self.base_gui_proxy_url + '/kataloginformation/grunddata/svenskort',
670
- headers=self.headers).json()
671
- return r
672
-
673
- # returns:
674
- # { 'SvenskOrt': [ { 'Benamning': { 'en': 'Stockholm (Botkyrka)',
675
- # 'sv': 'Stockholm (Botkyrka)'},
676
- # 'Beskrivning': {},
677
- # 'Giltighetsperiod': {'link': []},
678
- # 'ID': '110990',
679
- # 'Kod': 'L0127',
680
- # 'KommunID': '8',
681
- # 'LarosateID': -1,
682
- # 'link': []},
683
- # ... ], 'link': []}
684
- @
685
-
686
-
687
- \section{[[kommuner_JSON]]}
688
-
689
- <<LadokSession data methods>>=
690
- # added by GQMJr
691
- #####################################################################
692
- #
693
- # kommuner_JSON
694
- #
695
- # RETURNERAR JSON of places in Sweden with their KommunID
696
- def kommuner_JSON(self):
697
- r = self.session.get(
698
- url=self.base_gui_proxy_url + '/kataloginformation/grunddata/kommun',
699
- headers=self.headers).json()
700
- return r
701
-
702
- # returns:
703
- # { 'Kommun': [ { 'Benamning': {'en': 'Knivsta', 'sv': 'Knivsta'},
704
- # 'Beskrivning': {},
705
- # 'Giltighetsperiod': {'link': []},
706
- # 'ID': '29',
707
- # 'Kod': '0330',
708
- # 'LanID': 2,
709
- # 'LarosateID': -1,
710
- # 'link': []},
711
- # { 'Benamning': {'en': 'Heby', 'sv': 'Heby'},
712
- # 'Beskrivning': { 'sv': 'Överförd från Västmanlands '
713
- # 'till Uppsala län'},
714
- # 'Giltighetsperiod': { 'Startdatum': '2007-01-01',
715
- # 'link': []},
716
- # 'ID': '30',
717
- # 'Kod': '0331',
718
- # 'LanID': 2,
719
- # 'LarosateID': -1,
720
- # 'link': []},
721
- # ], 'link': []}
722
- @
723
-
724
-
725
- \section{[[lander_JSON]]}
726
-
727
- <<LadokSession data methods>>=
728
- # added by GQMJr
729
- #####################################################################
730
- #
731
- # lander_JSON
732
- #
733
- # RETURNERAR JSON of countries
734
- def lander_JSON(self):
735
- r = self.session.get(
736
- url=self.base_gui_proxy_url + '/kataloginformation/grunddata/land',
737
- headers=self.headers).json()
738
- return r
739
-
740
- # returns:
741
- # { 'Land': [ { 'Benamning': {'en': 'Bolivia', 'sv': 'Bolivia'},
742
- # 'Beskrivning': {},
743
- # 'Giltighetsperiod': {'link': []},
744
- # 'ID': '20',
745
- # 'Kod': 'BO',
746
- # 'LarosateID': -1,
747
- # 'link': []},
748
- # { 'Benamning': {'en': 'Brazil', 'sv': 'Brasilien'},
749
- # 'Beskrivning': {},
750
- # 'Giltighetsperiod': {'link': []},
751
- # 'ID': '21',
752
- # 'Kod': 'BR',
753
- # 'LarosateID': -1,
754
- # 'link': []},
755
- # ... ], 'link': []}
756
- @
757
-
758
-
759
- \section{[[undervisningstid_JSON]]}
760
-
761
- <<LadokSession data methods>>=
762
- # added by GQMJr
763
- #####################################################################
764
- #
765
- # undervisningstid_JSON
766
- #
767
- # RETURNERAR JSON of teaching times
768
- def undervisningstid_JSON(self):
769
- r = self.session.get(
770
- url=self.base_gui_proxy_url +
771
- '/kataloginformation/grunddata/undervisningstid',
772
- headers=self.headers).json()
773
- return r
774
-
775
- #returns:
776
- # { 'Undervisningstid': [ { 'Benamning': { 'en': 'Mixed-time',
777
- # 'sv': 'Blandad '
778
- # 'undervisningstid'},
779
- # 'Beskrivning': {},
780
- # 'Giltighetsperiod': {'link': []},
781
- # 'ID': '101051',
782
- # 'Kod': 'BLA',
783
- # 'LarosateID': -1,
784
- # 'link': []},
785
- # { 'Benamning': {'en': 'Day-time', 'sv': 'Dagtid'},
786
- # 'Beskrivning': {},
787
- # 'Giltighetsperiod': {'link': []},
788
- # 'ID': '101052',
789
- # 'Kod': 'DAG',
790
- # 'LarosateID': -1,
791
- # 'link': []},
792
- # { 'Benamning': { 'en': 'Afternoon-time',
793
- # 'sv': 'Eftermiddagstid'},
794
- # 'Beskrivning': {},
795
- # 'Giltighetsperiod': {'link': []},
796
- # 'ID': '101053',
797
- # 'Kod': 'EFT',
798
- # 'LarosateID': -1,
799
- # 'link': []},
800
- # { 'Benamning': { 'en': 'No teaching',
801
- # 'sv': 'Ingen '
802
- # 'undervisningstid'},
803
- # 'Beskrivning': {},
804
- # 'Giltighetsperiod': { 'Slutdatum': '2016-04-30',
805
- # 'link': []},
806
- # 'ID': '101054',
807
- # 'Kod': 'ING',
808
- # 'LarosateID': -1,
809
- # 'link': []},
810
- # { 'Benamning': { 'en': 'Evening-time',
811
- # 'sv': 'Kvällstid'},
812
- # 'Beskrivning': {},
813
- # 'Giltighetsperiod': {'link': []},
814
- # 'ID': '101055',
815
- # 'Kod': 'KVÄ',
816
- # 'LarosateID': -1,
817
- # 'link': []},
818
- # { 'Benamning': { 'en': 'Weekends',
819
- # 'sv': 'Veckoslut'},
820
- # 'Beskrivning': {},
821
- # 'Giltighetsperiod': {'link': []},
822
- # 'ID': '101056',
823
- # 'Kod': 'VSL',
824
- # 'LarosateID': -1,
825
- # 'link': []}],
826
- # 'link': []}
827
- @
828
-
829
-
830
- \section{[[successivfordjupning_JSON]]}
831
-
832
- <<LadokSession data methods>>=
833
- # added by GQMJr
834
- #####################################################################
835
- #
836
- # successivfordjupning_JSON
837
- #
838
- # RETURNERAR JSON of Successive Specializations
839
- def successivfordjupning_JSON(self):
840
- r = self.session.get(
841
- url=self.base_gui_proxy_url +
842
- '/kataloginformation/grunddata/successivfordjupning',
843
- headers=self.headers).json()
844
- return r
845
-
846
- #returns:
847
- # { 'SuccessivFordjupning': [ { 'Benamning': { 'en': 'Second cycle, '
848
- # 'contains degree '
849
- # 'project for Master '
850
- # 'of Arts/Master of '
851
- # 'Science (60 '
852
- # 'credits)',
853
- # 'sv': 'Avancerad nivå, '
854
- # 'innehåller '
855
- # 'examensarbete för '
856
- # 'magisterexamen'},
857
- # 'Beskrivning': {},
858
- # 'Giltighetsperiod': {'link': []},
859
- # 'ID': '1',
860
- # 'Kod': 'A1E',
861
- # 'LarosateID': -1,
862
- # 'NivaInomStudieordningID': 2,
863
- # 'link': []},
864
- # { 'Benamning': { 'en': 'Second cycle, has '
865
- # 'second-cycle '
866
- # 'course/s as entry '
867
- # 'requirements',
868
- # 'sv': 'Avancerad nivå, '
869
- # 'har kurs/er på '
870
- # 'avancerad nivå som '
871
- # 'förkunskapskrav'},
872
- # 'Beskrivning': {},
873
- # 'Giltighetsperiod': {'link': []},
874
- # 'ID': '2',
875
- # 'Kod': 'A1F',
876
- # 'LarosateID': -1,
877
- # 'NivaInomStudieordningID': 2,
878
- # 'link': []},
879
- # ... ], 'link': []}
880
- @
881
-
882
-
883
- \section{[[undervisningsform_JSON]]}
884
-
885
- <<LadokSession data methods>>=
886
- # added by GQMJr
887
- #####################################################################
888
- #
889
- # undervisningsform_JSON
890
- #
891
- # RETURNERAR JSON of forms of education
892
- def undervisningsform_JSON(self):
893
- r = self.session.get(
894
- url=self.base_gui_proxy_url +
895
- '/kataloginformation/grunddata/undervisningsform',
896
- headers=self.headers).json()
897
- return r
898
-
899
- #returns:
900
- # { 'Undervisningsform': [ { 'Benamning': { 'en': '- No translation '
901
- # 'available -',
902
- # 'sv': 'IT-baserad distans'},
903
- # 'Beskrivning': {},
904
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
905
- # 'link': []},
906
- # 'ID': '133253',
907
- # 'Kod': 'ITD',
908
- # 'LarosateID': 29,
909
- # 'link': []},
910
- # { 'Benamning': { 'en': '- No translation '
911
- # 'available -',
912
- # 'sv': 'Undervisningsområdet'},
913
- # 'Beskrivning': {},
914
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
915
- # 'link': []},
916
- # 'ID': '133252',
917
- # 'Kod': 'LU',
918
- # 'LarosateID': 29,
919
- # 'link': []},
920
- # { 'Benamning': { 'en': 'Distance learning',
921
- # 'sv': 'Distans'},
922
- # 'Beskrivning': { 'sv': 'Obligatoriska '
923
- # 'träffar kan '
924
- # 'förekomma'},
925
- # 'Giltighetsperiod': {'link': []},
926
- # 'ID': '2',
927
- # 'Kod': 'DST',
928
- # 'LarosateID': -1,
929
- # 'link': []},
930
- # { 'Benamning': { 'en': 'No teaching',
931
- # 'sv': 'Ingen undervisning'},
932
- # 'Beskrivning': {},
933
- # 'Giltighetsperiod': { 'Slutdatum': '2016-04-30',
934
- # 'link': []},
935
- # 'ID': '4',
936
- # 'Kod': 'ING',
937
- # 'LarosateID': -1,
938
- # 'link': []},
939
- # { 'Benamning': { 'en': 'Web-based distance '
940
- # 'learning',
941
- # 'sv': 'IT-baserad '
942
- # 'distansutbildning'},
943
- # 'Beskrivning': { 'sv': 'Ingen platsbunden '
944
- # 'undervisning'},
945
- # 'Giltighetsperiod': { 'Slutdatum': '2016-04-30',
946
- # 'link': []},
947
- # 'ID': '3',
948
- # 'Kod': 'ITD',
949
- # 'LarosateID': -1,
950
- # 'link': []},
951
- # { 'Benamning': { 'en': 'Normal teaching',
952
- # 'sv': 'Normal'},
953
- # 'Beskrivning': {},
954
- # 'Giltighetsperiod': {'link': []},
955
- # 'ID': '1',
956
- # 'Kod': 'NML',
957
- # 'LarosateID': -1,
958
- # 'link': []}],
959
- # 'link': []}
960
- @
961
-
962
-
963
- \section{[[LokalaPerioder_JSON]]}
964
-
965
- <<LadokSession data methods>>=
966
- # added by GQMJr
967
- #####################################################################
968
- #
969
- # LokalaPerioder_JSON
970
- #
971
- # RETURNERAR JSON of local periods
972
- def LokalaPerioder_JSON(self):
973
- r = self.session.get(
974
- url=self.base_gui_proxy_url + '/kataloginformation/grunddata/period',
975
- headers=self.headers).json()
976
- return r
977
-
978
- # returns:
979
- # { 'Period': [
980
- #...
981
- # { 'Benamning': { 'en': 'Calendar year 2020',
982
- # 'sv': 'Kalenderår 2020'},
983
- # 'Beskrivning': {},
984
- # 'FromDatum': '2020-01-01',
985
- # 'Giltighetsperiod': { 'Slutdatum': '2020-12-31',
986
- # 'Startdatum': '2020-01-01',
987
- # 'link': []},
988
- # 'ID': '29151',
989
- # 'Kod': '2020',
990
- # 'LarosateID': 29,
991
- # 'PeriodtypID': 1,
992
- # 'TomDatum': '2020-12-31',
993
- # 'link': []},
994
- # { 'Benamning': { 'en': 'Last six months of 2020',
995
- # 'sv': 'Andra halvår 2020'},
996
- # 'Beskrivning': {},
997
- # 'FromDatum': '2020-07-01',
998
- # 'Giltighetsperiod': { 'Slutdatum': '2020-12-31',
999
- # 'Startdatum': '2020-07-01',
1000
- # 'link': []},
1001
- # 'ID': '29252',
1002
- # 'Kod': '2020H',
1003
- # 'LarosateID': 29,
1004
- # 'PeriodtypID': 3,
1005
- # 'TomDatum': '2020-12-31',
1006
- # 'link': []},
1007
- # { 'Benamning': { 'en': 'First six months of 2020',
1008
- # 'sv': 'Första halvår 2020'},
1009
- # 'Beskrivning': {},
1010
- # 'FromDatum': '2020-01-01',
1011
- # 'Giltighetsperiod': { 'Slutdatum': '2020-06-30',
1012
- # 'Startdatum': '2020-01-01',
1013
- # 'link': []},
1014
- # 'ID': '29324',
1015
- # 'Kod': '2020V',
1016
- # 'LarosateID': 29,
1017
- # 'PeriodtypID': 3,
1018
- # 'TomDatum': '2020-06-30',
1019
- # 'link': []},
1020
- #...
1021
- # 'link': []}
1022
- @
1023
-
1024
-
1025
- \section{[[nivainomstudieordning_JSON]]}
1026
-
1027
- <<LadokSession data methods>>=
1028
- # added by GQMJr
1029
- #####################################################################
1030
- #
1031
- # nivainomstudieordning_JSON
1032
- #
1033
- # RETURNERAR JSON of education levels
1034
- def nivainomstudieordning_JSON(self):
1035
- r = self.session.get(
1036
- url=self.base_gui_proxy_url +
1037
- '/kataloginformation/grunddata/nivainomstudieordning',
1038
- headers=self.headers).json()
1039
- return r
1040
-
1041
- # returns:
1042
- # { 'NivaInomStudieordning': [ { 'Benamning': { 'en': 'First cycle',
1043
- # 'sv': 'Grundnivå'},
1044
- # 'Beskrivning': {},
1045
- # 'Giltighetsperiod': { 'Startdatum': '2007-07-01', 'link': []},
1046
- # 'ID': '1',
1047
- # 'Kod': '1',
1048
- # 'LarosateID': -1,
1049
- # 'link': []},
1050
- # { 'Benamning': { 'en': 'Second cycle',
1051
- # 'sv': 'Avancerad nivå'},
1052
- # 'Beskrivning': {},
1053
- # 'Giltighetsperiod': { 'Startdatum': '2007-07-01', 'link': []},
1054
- # 'ID': '2',
1055
- # 'Kod': '2',
1056
- # 'LarosateID': -1,
1057
- # 'link': []},
1058
- # { 'Benamning': { 'en': 'Third cycle',
1059
- # 'sv': 'Forskarnivå'},
1060
- # 'Beskrivning': {},
1061
- # 'Giltighetsperiod': { 'Startdatum': '2007-07-01', 'link': []},
1062
- # 'ID': '3',
1063
- # 'Kod': '3',
1064
- # 'LarosateID': -1,
1065
- # 'link': []},
1066
- # { 'Benamning': { 'en': 'Postgraduate '
1067
- # 'level',
1068
- # 'sv': 'Forskarutbildning'},
1069
- # 'Beskrivning': {},
1070
- # 'Giltighetsperiod': { 'Slutdatum': '2007-06-30',
1071
- # 'Startdatum': '1977-07-01', 'link': []},
1072
- # 'ID': '5',
1073
- # 'Kod': 'F',
1074
- # 'LarosateID': -1,
1075
- # 'link': []},
1076
- # { 'Benamning': { 'en': 'Undergraduate '
1077
- # 'level',
1078
- # 'sv': 'Grundutbildning'},
1079
- # 'Beskrivning': {},
1080
- # 'Giltighetsperiod': { 'Slutdatum': '2007-06-30',
1081
- # 'Startdatum': '1977-07-01', 'link': []},
1082
- # 'ID': '4',
1083
- # 'Kod': 'G',
1084
- # 'LarosateID': -1,
1085
- # 'link': []}],
1086
- # 'link': []}
1087
- @
1088
-
1089
-
1090
- \section{[[amnesgrupp_JSON]]}
1091
-
1092
- <<LadokSession data methods>>=
1093
- # added by GQMJr
1094
- #####################################################################
1095
- #
1096
- # amnesgrupp_JSON
1097
- #
1098
- # RETURNERAR JSON of subject area groups
1099
- def amnesgrupp_JSON(self):
1100
- r = self.session.get(
1101
- url=self.base_gui_proxy_url + '/kataloginformation/grunddata/amnesgrupp',
1102
- headers=self.headers).json()
1103
- return r
1104
-
1105
- # returns:
1106
- # { 'Amnesgrupp': [ { 'Benamning': { 'en': 'Archival Science',
1107
- # 'sv': 'Arkivvetenskap'},
1108
- # 'Beskrivning': {},
1109
- # 'Giltighetsperiod': {'link': []},
1110
- # 'ID': '10',
1111
- # 'Kod': 'AV1',
1112
- # 'LarosateID': -1,
1113
- # 'link': []},
1114
- # ...
1115
- # { 'Benamning': {'en': 'Philosophy', 'sv': 'Filosofi'},
1116
- # 'Beskrivning': {},
1117
- # 'Giltighetsperiod': {'link': []},
1118
- # 'ID': '42',
1119
- # 'Kod': 'FI2',
1120
- # 'LarosateID': -1,
1121
- # 'link': []},
1122
- # ...
1123
- # { 'Benamning': { 'en': 'Informatics/Computer and '
1124
- # 'Systems Sciences',
1125
- # 'sv': 'Informatik/data- och '
1126
- # 'systemvetenskap'},
1127
- # 'Beskrivning': {},
1128
- # 'Giltighetsperiod': {'link': []},
1129
- # 'ID': '68',
1130
- # 'Kod': 'IF1',
1131
- # 'LarosateID': -1,
1132
- # 'link': []},
1133
- # ...
1134
- # { 'Benamning': { 'en': 'Electronics',
1135
- # 'sv': 'Elektronik'},
1136
- # 'Beskrivning': {},
1137
- # 'Giltighetsperiod': {'link': []},
1138
- # 'ID': '30',
1139
- # 'Kod': 'EL1',
1140
- # 'LarosateID': -1,
1141
- # 'link': []},
1142
- # ... ],
1143
- # 'link': []}
1144
- @
1145
-
1146
-
1147
- \section{[[studietakt_JSON]]}
1148
-
1149
- <<LadokSession data methods>>=
1150
- # added by GQMJr
1151
- #####################################################################
1152
- #
1153
- # studietakt_JSON
1154
- #
1155
- # RETURNERAR JSON of study tempos
1156
- def studietakt_JSON(self):
1157
- r = self.session.get(
1158
- url=self.base_gui_proxy_url + '/kataloginformation/grunddata/studietakt',
1159
- headers=self.headers).json()
1160
- return r
1161
-
1162
- # returns:
1163
- # { 'Studietakt': [ { 'Benamning': { 'en': '- No translation available -',
1164
- # 'sv': 'Noll'},
1165
- # 'Beskrivning': {},
1166
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1167
- # 'link': []},
1168
- # 'ID': '133268',
1169
- # 'Kod': '0',
1170
- # 'LarosateID': 29,
1171
- # 'Takt': 0,
1172
- # 'link': []},
1173
- # { 'Benamning': { 'en': '- No translation available -',
1174
- # 'sv': 'Kvartstid'},
1175
- # 'Beskrivning': {},
1176
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1177
- # 'link': []},
1178
- # 'ID': '133270',
1179
- # 'Kod': '1',
1180
- # 'LarosateID': 29,
1181
- # 'Takt': 1,
1182
- # 'link': []},
1183
- # { 'Benamning': { 'en': '- No translation available -',
1184
- # 'sv': 'Kvartstid'},
1185
- # 'Beskrivning': {},
1186
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1187
- # 'link': []},
1188
- # 'ID': '133282',
1189
- # 'Kod': '11',
1190
- # 'LarosateID': 29,
1191
- # 'Takt': 11,
1192
- # 'link': []},
1193
- # { 'Benamning': { 'en': '- No translation available -',
1194
- # 'sv': 'Kvartstid'},
1195
- # 'Beskrivning': {},
1196
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1197
- # 'link': []},
1198
- # 'ID': '133281',
1199
- # 'Kod': '13',
1200
- # 'LarosateID': 29,
1201
- # 'Takt': 13,
1202
- # 'link': []},
1203
- # { 'Benamning': { 'en': '- No translation available -',
1204
- # 'sv': 'Kvartstid'},
1205
- # 'Beskrivning': {},
1206
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1207
- # 'link': []},
1208
- # 'ID': '133278',
1209
- # 'Kod': '14',
1210
- # 'LarosateID': 29,
1211
- # 'Takt': 14,
1212
- # 'link': []},
1213
- # { 'Benamning': { 'en': '- No translation available -',
1214
- # 'sv': 'Kvartstid'},
1215
- # 'Beskrivning': {},
1216
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1217
- # 'link': []},
1218
- # 'ID': '133283',
1219
- # 'Kod': '15',
1220
- # 'LarosateID': 29,
1221
- # 'Takt': 15,
1222
- # 'link': []},
1223
- # { 'Benamning': { 'en': '- No translation available -',
1224
- # 'sv': 'Kvartstid'},
1225
- # 'Beskrivning': {},
1226
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1227
- # 'link': []},
1228
- # 'ID': '133280',
1229
- # 'Kod': '16',
1230
- # 'LarosateID': 29,
1231
- # 'Takt': 16,
1232
- # 'link': []},
1233
- # { 'Benamning': { 'en': '- No translation available -',
1234
- # 'sv': 'Kvartstid'},
1235
- # 'Beskrivning': {},
1236
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1237
- # 'link': []},
1238
- # 'ID': '133289',
1239
- # 'Kod': '18',
1240
- # 'LarosateID': 29,
1241
- # 'Takt': 18,
1242
- # 'link': []},
1243
- # { 'Benamning': { 'en': '- No translation available -',
1244
- # 'sv': 'Kvartstid'},
1245
- # 'Beskrivning': {},
1246
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1247
- # 'link': []},
1248
- # 'ID': '133279',
1249
- # 'Kod': '19',
1250
- # 'LarosateID': 29,
1251
- # 'Takt': 19,
1252
- # 'link': []},
1253
- # { 'Benamning': { 'en': '- No translation available -',
1254
- # 'sv': 'Kvartstid'},
1255
- # 'Beskrivning': {},
1256
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1257
- # 'link': []},
1258
- # 'ID': '133271',
1259
- # 'Kod': '2',
1260
- # 'LarosateID': 29,
1261
- # 'Takt': 2,
1262
- # 'link': []},
1263
- # { 'Benamning': { 'en': '- No translation available -',
1264
- # 'sv': 'Kvartstid'},
1265
- # 'Beskrivning': {},
1266
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1267
- # 'link': []},
1268
- # 'ID': '133285',
1269
- # 'Kod': '20',
1270
- # 'LarosateID': 29,
1271
- # 'Takt': 20,
1272
- # 'link': []},
1273
- # { 'Benamning': { 'en': '- No translation available -',
1274
- # 'sv': 'Kvartstid'},
1275
- # 'Beskrivning': {},
1276
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1277
- # 'link': []},
1278
- # 'ID': '133287',
1279
- # 'Kod': '21',
1280
- # 'LarosateID': 29,
1281
- # 'Takt': 21,
1282
- # 'link': []},
1283
- # { 'Benamning': { 'en': '- No translation available -',
1284
- # 'sv': 'Kvartstid'},
1285
- # 'Beskrivning': {},
1286
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1287
- # 'link': []},
1288
- # 'ID': '133290',
1289
- # 'Kod': '22',
1290
- # 'LarosateID': 29,
1291
- # 'Takt': 22,
1292
- # 'link': []},
1293
- # { 'Benamning': { 'en': '- No translation available -',
1294
- # 'sv': 'Kvartstid'},
1295
- # 'Beskrivning': {},
1296
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1297
- # 'link': []},
1298
- # 'ID': '133284',
1299
- # 'Kod': '23',
1300
- # 'LarosateID': 29,
1301
- # 'Takt': 23,
1302
- # 'link': []},
1303
- # { 'Benamning': { 'en': '- No translation available -',
1304
- # 'sv': 'Kvartstid'},
1305
- # 'Beskrivning': {},
1306
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1307
- # 'link': []},
1308
- # 'ID': '133286',
1309
- # 'Kod': '24',
1310
- # 'LarosateID': 29,
1311
- # 'Takt': 24,
1312
- # 'link': []},
1313
- # { 'Benamning': { 'en': '- No translation available -',
1314
- # 'sv': 'Kvartstid'},
1315
- # 'Beskrivning': {},
1316
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1317
- # 'link': []},
1318
- # 'ID': '133288',
1319
- # 'Kod': '26',
1320
- # 'LarosateID': 29,
1321
- # 'Takt': 26,
1322
- # 'link': []},
1323
- # { 'Benamning': { 'en': '- No translation available -',
1324
- # 'sv': 'Kvartstid'},
1325
- # 'Beskrivning': {},
1326
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1327
- # 'link': []},
1328
- # 'ID': '133291',
1329
- # 'Kod': '27',
1330
- # 'LarosateID': 29,
1331
- # 'Takt': 27,
1332
- # 'link': []},
1333
- # { 'Benamning': { 'en': '- No translation available -',
1334
- # 'sv': 'Kvartstid'},
1335
- # 'Beskrivning': {},
1336
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1337
- # 'link': []},
1338
- # 'ID': '133292',
1339
- # 'Kod': '28',
1340
- # 'LarosateID': 29,
1341
- # 'Takt': 28,
1342
- # 'link': []},
1343
- # { 'Benamning': { 'en': '- No translation available -',
1344
- # 'sv': 'Kvartstid'},
1345
- # 'Beskrivning': {},
1346
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1347
- # 'link': []},
1348
- # 'ID': '133294',
1349
- # 'Kod': '29',
1350
- # 'LarosateID': 29,
1351
- # 'Takt': 29,
1352
- # 'link': []},
1353
- # { 'Benamning': { 'en': '- No translation available -',
1354
- # 'sv': 'Kvartstid'},
1355
- # 'Beskrivning': {},
1356
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1357
- # 'link': []},
1358
- # 'ID': '133274',
1359
- # 'Kod': '3',
1360
- # 'LarosateID': 29,
1361
- # 'Takt': 3,
1362
- # 'link': []},
1363
- # { 'Benamning': { 'en': '- No translation available -',
1364
- # 'sv': 'Kvartstid'},
1365
- # 'Beskrivning': {},
1366
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1367
- # 'link': []},
1368
- # 'ID': '133293',
1369
- # 'Kod': '30',
1370
- # 'LarosateID': 29,
1371
- # 'Takt': 30,
1372
- # 'link': []},
1373
- # { 'Benamning': { 'en': '- No translation available -',
1374
- # 'sv': 'Kvartstid'},
1375
- # 'Beskrivning': {},
1376
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1377
- # 'link': []},
1378
- # 'ID': '133296',
1379
- # 'Kod': '31',
1380
- # 'LarosateID': 29,
1381
- # 'Takt': 31,
1382
- # 'link': []},
1383
- # { 'Benamning': { 'en': '- No translation available -',
1384
- # 'sv': 'Kvartstid'},
1385
- # 'Beskrivning': {},
1386
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1387
- # 'link': []},
1388
- # 'ID': '133295',
1389
- # 'Kod': '32',
1390
- # 'LarosateID': 29,
1391
- # 'Takt': 32,
1392
- # 'link': []},
1393
- # { 'Benamning': { 'en': '- No translation available -',
1394
- # 'sv': 'Kvartstid'},
1395
- # 'Beskrivning': {},
1396
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1397
- # 'link': []},
1398
- # 'ID': '133299',
1399
- # 'Kod': '34',
1400
- # 'LarosateID': 29,
1401
- # 'Takt': 34,
1402
- # 'link': []},
1403
- # { 'Benamning': { 'en': '- No translation available -',
1404
- # 'sv': 'Kvartstid'},
1405
- # 'Beskrivning': {},
1406
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1407
- # 'link': []},
1408
- # 'ID': '133298',
1409
- # 'Kod': '35',
1410
- # 'LarosateID': 29,
1411
- # 'Takt': 35,
1412
- # 'link': []},
1413
- # { 'Benamning': { 'en': '- No translation available -',
1414
- # 'sv': 'Kvartstid'},
1415
- # 'Beskrivning': {},
1416
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1417
- # 'link': []},
1418
- # 'ID': '133297',
1419
- # 'Kod': '36',
1420
- # 'LarosateID': 29,
1421
- # 'Takt': 36,
1422
- # 'link': []},
1423
- # { 'Benamning': { 'en': '- No translation available -',
1424
- # 'sv': 'Kvartstid'},
1425
- # 'Beskrivning': {},
1426
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1427
- # 'link': []},
1428
- # 'ID': '133307',
1429
- # 'Kod': '37',
1430
- # 'LarosateID': 29,
1431
- # 'Takt': 37,
1432
- # 'link': []},
1433
- # { 'Benamning': { 'en': '- No translation available -',
1434
- # 'sv': 'Halvtid'},
1435
- # 'Beskrivning': {},
1436
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1437
- # 'link': []},
1438
- # 'ID': '133303',
1439
- # 'Kod': '38',
1440
- # 'LarosateID': 29,
1441
- # 'Takt': 38,
1442
- # 'link': []},
1443
- # { 'Benamning': { 'en': '- No translation available -',
1444
- # 'sv': 'Halvtid'},
1445
- # 'Beskrivning': {},
1446
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1447
- # 'link': []},
1448
- # 'ID': '133300',
1449
- # 'Kod': '39',
1450
- # 'LarosateID': 29,
1451
- # 'Takt': 39,
1452
- # 'link': []},
1453
- # { 'Benamning': { 'en': '- No translation available -',
1454
- # 'sv': 'Kvartstid'},
1455
- # 'Beskrivning': {},
1456
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1457
- # 'link': []},
1458
- # 'ID': '133269',
1459
- # 'Kod': '4',
1460
- # 'LarosateID': 29,
1461
- # 'Takt': 4,
1462
- # 'link': []},
1463
- # { 'Benamning': { 'en': '- No translation available -',
1464
- # 'sv': 'Halvtid'},
1465
- # 'Beskrivning': {},
1466
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1467
- # 'link': []},
1468
- # 'ID': '133302',
1469
- # 'Kod': '40',
1470
- # 'LarosateID': 29,
1471
- # 'Takt': 40,
1472
- # 'link': []},
1473
- # { 'Benamning': { 'en': 'One-tenth-time',
1474
- # 'sv': 'Tiondelsfart'},
1475
- # 'Beskrivning': {},
1476
- # 'Giltighetsperiod': {'link': []},
1477
- # 'ID': '8',
1478
- # 'Kod': '10',
1479
- # 'LarosateID': -1,
1480
- # 'Takt': 10,
1481
- # 'link': []},
1482
- # { 'Benamning': {'en': 'Full-time', 'sv': 'Helfart'},
1483
- # 'Beskrivning': {},
1484
- # 'Giltighetsperiod': {'link': []},
1485
- # 'ID': '1',
1486
- # 'Kod': '100',
1487
- # 'LarosateID': -1,
1488
- # 'Takt': 100,
1489
- # 'link': []},
1490
- # { 'Benamning': { 'en': 'One-eight-time',
1491
- # 'sv': 'Åttondelsfart'},
1492
- # 'Beskrivning': {},
1493
- # 'Giltighetsperiod': {'link': []},
1494
- # 'ID': '128190',
1495
- # 'Kod': '12',
1496
- # 'LarosateID': -1,
1497
- # 'Takt': 12,
1498
- # 'link': []},
1499
- # { 'Benamning': { 'en': 'One-sixth-time',
1500
- # 'sv': 'Sjättedelsfart'},
1501
- # 'Beskrivning': {},
1502
- # 'Giltighetsperiod': {'link': []},
1503
- # 'ID': '7',
1504
- # 'Kod': '17',
1505
- # 'LarosateID': -1,
1506
- # 'Takt': 17,
1507
- # 'link': []},
1508
- # { 'Benamning': { 'en': 'One-quarter-time',
1509
- # 'sv': 'Kvartsfart'},
1510
- # 'Beskrivning': {},
1511
- # 'Giltighetsperiod': {'link': []},
1512
- # 'ID': '6',
1513
- # 'Kod': '25',
1514
- # 'LarosateID': -1,
1515
- # 'Takt': 25,
1516
- # 'link': []},
1517
- # { 'Benamning': { 'en': 'One-third-time',
1518
- # 'sv': 'Tredjedelsfart'},
1519
- # 'Beskrivning': {},
1520
- # 'Giltighetsperiod': {'link': []},
1521
- # 'ID': '5',
1522
- # 'Kod': '33',
1523
- # 'LarosateID': -1,
1524
- # 'Takt': 33,
1525
- # 'link': []},
1526
- # { 'Benamning': {'en': 'Half-time', 'sv': 'Halvfart'},
1527
- # 'Beskrivning': {},
1528
- # 'Giltighetsperiod': {'link': []},
1529
- # 'ID': '4',
1530
- # 'Kod': '50',
1531
- # 'LarosateID': -1,
1532
- # 'Takt': 50,
1533
- # 'link': []},
1534
- # { 'Benamning': { 'en': 'Two-thirds-time',
1535
- # 'sv': 'Tvåtredjedelsfart'},
1536
- # 'Beskrivning': { 'sv': 'Ändras till '
1537
- # '"Tvåtredjedelsfart" efter '
1538
- # 'fullbordad '
1539
- # 'produktionssättning.'},
1540
- # 'Giltighetsperiod': {'link': []},
1541
- # 'ID': '3',
1542
- # 'Kod': '67',
1543
- # 'LarosateID': -1,
1544
- # 'Takt': 67,
1545
- # 'link': []},
1546
- # { 'Benamning': { 'en': 'Three-quarters-time',
1547
- # 'sv': 'Trekvartsfart'},
1548
- # 'Beskrivning': {},
1549
- # 'Giltighetsperiod': {'link': []},
1550
- # 'ID': '2',
1551
- # 'Kod': '75',
1552
- # 'LarosateID': -1,
1553
- # 'Takt': 75,
1554
- # 'link': []},
1555
- # { 'Benamning': { 'en': '- No translation available -',
1556
- # 'sv': 'Halvtid'},
1557
- # 'Beskrivning': {},
1558
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1559
- # 'link': []},
1560
- # 'ID': '133304',
1561
- # 'Kod': '41',
1562
- # 'LarosateID': 29,
1563
- # 'Takt': 41,
1564
- # 'link': []},
1565
- # { 'Benamning': { 'en': '- No translation available -',
1566
- # 'sv': 'Halvtid'},
1567
- # 'Beskrivning': {},
1568
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1569
- # 'link': []},
1570
- # 'ID': '133305',
1571
- # 'Kod': '42',
1572
- # 'LarosateID': 29,
1573
- # 'Takt': 42,
1574
- # 'link': []},
1575
- # { 'Benamning': { 'en': '- No translation available -',
1576
- # 'sv': 'Halvtid'},
1577
- # 'Beskrivning': {},
1578
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1579
- # 'link': []},
1580
- # 'ID': '133301',
1581
- # 'Kod': '43',
1582
- # 'LarosateID': 29,
1583
- # 'Takt': 43,
1584
- # 'link': []},
1585
- # { 'Benamning': { 'en': '- No translation available -',
1586
- # 'sv': 'Halvtid'},
1587
- # 'Beskrivning': {},
1588
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1589
- # 'link': []},
1590
- # 'ID': '133312',
1591
- # 'Kod': '44',
1592
- # 'LarosateID': 29,
1593
- # 'Takt': 44,
1594
- # 'link': []},
1595
- # { 'Benamning': { 'en': '- No translation available -',
1596
- # 'sv': 'Halvtid'},
1597
- # 'Beskrivning': {},
1598
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1599
- # 'link': []},
1600
- # 'ID': '133308',
1601
- # 'Kod': '45',
1602
- # 'LarosateID': 29,
1603
- # 'Takt': 45,
1604
- # 'link': []},
1605
- # { 'Benamning': { 'en': '- No translation available -',
1606
- # 'sv': 'Halvtid'},
1607
- # 'Beskrivning': {},
1608
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1609
- # 'link': []},
1610
- # 'ID': '133306',
1611
- # 'Kod': '46',
1612
- # 'LarosateID': 29,
1613
- # 'Takt': 46,
1614
- # 'link': []},
1615
- # { 'Benamning': { 'en': '- No translation available -',
1616
- # 'sv': 'Halvtid'},
1617
- # 'Beskrivning': {},
1618
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1619
- # 'link': []},
1620
- # 'ID': '133310',
1621
- # 'Kod': '47',
1622
- # 'LarosateID': 29,
1623
- # 'Takt': 47,
1624
- # 'link': []},
1625
- # { 'Benamning': { 'en': '- No translation available -',
1626
- # 'sv': 'Halvtid'},
1627
- # 'Beskrivning': {},
1628
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1629
- # 'link': []},
1630
- # 'ID': '133309',
1631
- # 'Kod': '48',
1632
- # 'LarosateID': 29,
1633
- # 'Takt': 48,
1634
- # 'link': []},
1635
- # { 'Benamning': { 'en': '- No translation available -',
1636
- # 'sv': 'Halvtid'},
1637
- # 'Beskrivning': {},
1638
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1639
- # 'link': []},
1640
- # 'ID': '133311',
1641
- # 'Kod': '49',
1642
- # 'LarosateID': 29,
1643
- # 'Takt': 49,
1644
- # 'link': []},
1645
- # { 'Benamning': { 'en': '- No translation available -',
1646
- # 'sv': 'Kvartstid'},
1647
- # 'Beskrivning': {},
1648
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1649
- # 'link': []},
1650
- # 'ID': '133276',
1651
- # 'Kod': '5',
1652
- # 'LarosateID': 29,
1653
- # 'Takt': 5,
1654
- # 'link': []},
1655
- # { 'Benamning': { 'en': '- No translation available -',
1656
- # 'sv': 'Halvtid'},
1657
- # 'Beskrivning': {},
1658
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1659
- # 'link': []},
1660
- # 'ID': '133318',
1661
- # 'Kod': '51',
1662
- # 'LarosateID': 29,
1663
- # 'Takt': 51,
1664
- # 'link': []},
1665
- # { 'Benamning': { 'en': '- No translation available -',
1666
- # 'sv': 'Halvtid'},
1667
- # 'Beskrivning': {},
1668
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1669
- # 'link': []},
1670
- # 'ID': '133315',
1671
- # 'Kod': '52',
1672
- # 'LarosateID': 29,
1673
- # 'Takt': 52,
1674
- # 'link': []},
1675
- # { 'Benamning': { 'en': '- No translation available -',
1676
- # 'sv': 'Halvtid'},
1677
- # 'Beskrivning': {},
1678
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1679
- # 'link': []},
1680
- # 'ID': '133314',
1681
- # 'Kod': '53',
1682
- # 'LarosateID': 29,
1683
- # 'Takt': 53,
1684
- # 'link': []},
1685
- # { 'Benamning': { 'en': '- No translation available -',
1686
- # 'sv': 'Halvtid'},
1687
- # 'Beskrivning': {},
1688
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1689
- # 'link': []},
1690
- # 'ID': '133313',
1691
- # 'Kod': '54',
1692
- # 'LarosateID': 29,
1693
- # 'Takt': 54,
1694
- # 'link': []},
1695
- # { 'Benamning': { 'en': '- No translation available -',
1696
- # 'sv': 'Halvtid'},
1697
- # 'Beskrivning': {},
1698
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1699
- # 'link': []},
1700
- # 'ID': '133316',
1701
- # 'Kod': '55',
1702
- # 'LarosateID': 29,
1703
- # 'Takt': 55,
1704
- # 'link': []},
1705
- # { 'Benamning': { 'en': '- No translation available -',
1706
- # 'sv': 'Halvtid'},
1707
- # 'Beskrivning': {},
1708
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1709
- # 'link': []},
1710
- # 'ID': '133319',
1711
- # 'Kod': '56',
1712
- # 'LarosateID': 29,
1713
- # 'Takt': 56,
1714
- # 'link': []},
1715
- # { 'Benamning': { 'en': '- No translation available -',
1716
- # 'sv': 'Halvtid'},
1717
- # 'Beskrivning': {},
1718
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1719
- # 'link': []},
1720
- # 'ID': '133317',
1721
- # 'Kod': '57',
1722
- # 'LarosateID': 29,
1723
- # 'Takt': 57,
1724
- # 'link': []},
1725
- # { 'Benamning': { 'en': '- No translation available -',
1726
- # 'sv': 'Halvtid'},
1727
- # 'Beskrivning': {},
1728
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1729
- # 'link': []},
1730
- # 'ID': '133320',
1731
- # 'Kod': '58',
1732
- # 'LarosateID': 29,
1733
- # 'Takt': 58,
1734
- # 'link': []},
1735
- # { 'Benamning': { 'en': '- No translation available -',
1736
- # 'sv': 'Halvtid'},
1737
- # 'Beskrivning': {},
1738
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1739
- # 'link': []},
1740
- # 'ID': '133322',
1741
- # 'Kod': '59',
1742
- # 'LarosateID': 29,
1743
- # 'Takt': 59,
1744
- # 'link': []},
1745
- # { 'Benamning': { 'en': '- No translation available -',
1746
- # 'sv': 'Kvartstid'},
1747
- # 'Beskrivning': {},
1748
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1749
- # 'link': []},
1750
- # 'ID': '133272',
1751
- # 'Kod': '6',
1752
- # 'LarosateID': 29,
1753
- # 'Takt': 6,
1754
- # 'link': []},
1755
- # { 'Benamning': { 'en': '- No translation available -',
1756
- # 'sv': 'Halvtid'},
1757
- # 'Beskrivning': {},
1758
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1759
- # 'link': []},
1760
- # 'ID': '133323',
1761
- # 'Kod': '60',
1762
- # 'LarosateID': 29,
1763
- # 'Takt': 60,
1764
- # 'link': []},
1765
- # { 'Benamning': { 'en': '- No translation available -',
1766
- # 'sv': 'Halvtid'},
1767
- # 'Beskrivning': {},
1768
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1769
- # 'link': []},
1770
- # 'ID': '133321',
1771
- # 'Kod': '61',
1772
- # 'LarosateID': 29,
1773
- # 'Takt': 61,
1774
- # 'link': []},
1775
- # { 'Benamning': { 'en': '- No translation available -',
1776
- # 'sv': 'Halvtid'},
1777
- # 'Beskrivning': {},
1778
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1779
- # 'link': []},
1780
- # 'ID': '133332',
1781
- # 'Kod': '62',
1782
- # 'LarosateID': 29,
1783
- # 'Takt': 62,
1784
- # 'link': []},
1785
- # { 'Benamning': { 'en': '- No translation available -',
1786
- # 'sv': 'Halvtid'},
1787
- # 'Beskrivning': {},
1788
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1789
- # 'link': []},
1790
- # 'ID': '133331',
1791
- # 'Kod': '63',
1792
- # 'LarosateID': 29,
1793
- # 'Takt': 63,
1794
- # 'link': []},
1795
- # { 'Benamning': { 'en': '- No translation available -',
1796
- # 'sv': 'Halvtid'},
1797
- # 'Beskrivning': {},
1798
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1799
- # 'link': []},
1800
- # 'ID': '133325',
1801
- # 'Kod': '64',
1802
- # 'LarosateID': 29,
1803
- # 'Takt': 64,
1804
- # 'link': []},
1805
- # { 'Benamning': { 'en': '- No translation available -',
1806
- # 'sv': 'Halvtid'},
1807
- # 'Beskrivning': {},
1808
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1809
- # 'link': []},
1810
- # 'ID': '133324',
1811
- # 'Kod': '65',
1812
- # 'LarosateID': 29,
1813
- # 'Takt': 65,
1814
- # 'link': []},
1815
- # { 'Benamning': { 'en': '- No translation available -',
1816
- # 'sv': 'Halvtid'},
1817
- # 'Beskrivning': {},
1818
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1819
- # 'link': []},
1820
- # 'ID': '133327',
1821
- # 'Kod': '66',
1822
- # 'LarosateID': 29,
1823
- # 'Takt': 66,
1824
- # 'link': []},
1825
- # { 'Benamning': { 'en': '- No translation available -',
1826
- # 'sv': 'Halvtid'},
1827
- # 'Beskrivning': {},
1828
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1829
- # 'link': []},
1830
- # 'ID': '133328',
1831
- # 'Kod': '68',
1832
- # 'LarosateID': 29,
1833
- # 'Takt': 68,
1834
- # 'link': []},
1835
- # { 'Benamning': { 'en': '- No translation available -',
1836
- # 'sv': 'Halvtid'},
1837
- # 'Beskrivning': {},
1838
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1839
- # 'link': []},
1840
- # 'ID': '133329',
1841
- # 'Kod': '69',
1842
- # 'LarosateID': 29,
1843
- # 'Takt': 69,
1844
- # 'link': []},
1845
- # { 'Benamning': { 'en': '- No translation available -',
1846
- # 'sv': 'Kvartstid'},
1847
- # 'Beskrivning': {},
1848
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1849
- # 'link': []},
1850
- # 'ID': '133277',
1851
- # 'Kod': '7',
1852
- # 'LarosateID': 29,
1853
- # 'Takt': 7,
1854
- # 'link': []},
1855
- # { 'Benamning': { 'en': '- No translation available -',
1856
- # 'sv': 'Halvtid'},
1857
- # 'Beskrivning': {},
1858
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1859
- # 'link': []},
1860
- # 'ID': '133330',
1861
- # 'Kod': '70',
1862
- # 'LarosateID': 29,
1863
- # 'Takt': 70,
1864
- # 'link': []},
1865
- # { 'Benamning': { 'en': '- No translation available -',
1866
- # 'sv': 'Halvtid'},
1867
- # 'Beskrivning': {},
1868
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1869
- # 'link': []},
1870
- # 'ID': '133326',
1871
- # 'Kod': '71',
1872
- # 'LarosateID': 29,
1873
- # 'Takt': 71,
1874
- # 'link': []},
1875
- # { 'Benamning': { 'en': '- No translation available -',
1876
- # 'sv': 'Halvtid'},
1877
- # 'Beskrivning': {},
1878
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1879
- # 'link': []},
1880
- # 'ID': '133333',
1881
- # 'Kod': '72',
1882
- # 'LarosateID': 29,
1883
- # 'Takt': 72,
1884
- # 'link': []},
1885
- # { 'Benamning': { 'en': '- No translation available -',
1886
- # 'sv': 'Nästan heltid'},
1887
- # 'Beskrivning': {},
1888
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1889
- # 'link': []},
1890
- # 'ID': '133334',
1891
- # 'Kod': '73',
1892
- # 'LarosateID': 29,
1893
- # 'Takt': 73,
1894
- # 'link': []},
1895
- # { 'Benamning': { 'en': '- No translation available -',
1896
- # 'sv': 'Nästan heltid'},
1897
- # 'Beskrivning': {},
1898
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1899
- # 'link': []},
1900
- # 'ID': '133342',
1901
- # 'Kod': '74',
1902
- # 'LarosateID': 29,
1903
- # 'Takt': 74,
1904
- # 'link': []},
1905
- # { 'Benamning': { 'en': '- No translation available -',
1906
- # 'sv': 'Nästan heltid'},
1907
- # 'Beskrivning': {},
1908
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1909
- # 'link': []},
1910
- # 'ID': '133335',
1911
- # 'Kod': '76',
1912
- # 'LarosateID': 29,
1913
- # 'Takt': 76,
1914
- # 'link': []},
1915
- # { 'Benamning': { 'en': '- No translation available -',
1916
- # 'sv': 'Nästan heltid'},
1917
- # 'Beskrivning': {},
1918
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1919
- # 'link': []},
1920
- # 'ID': '133347',
1921
- # 'Kod': '77',
1922
- # 'LarosateID': 29,
1923
- # 'Takt': 77,
1924
- # 'link': []},
1925
- # { 'Benamning': { 'en': '- No translation available -',
1926
- # 'sv': 'Nästan heltid'},
1927
- # 'Beskrivning': {},
1928
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1929
- # 'link': []},
1930
- # 'ID': '133339',
1931
- # 'Kod': '78',
1932
- # 'LarosateID': 29,
1933
- # 'Takt': 78,
1934
- # 'link': []},
1935
- # { 'Benamning': { 'en': '- No translation available -',
1936
- # 'sv': 'Nästan heltid'},
1937
- # 'Beskrivning': {},
1938
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1939
- # 'link': []},
1940
- # 'ID': '133338',
1941
- # 'Kod': '79',
1942
- # 'LarosateID': 29,
1943
- # 'Takt': 79,
1944
- # 'link': []},
1945
- # { 'Benamning': { 'en': '- No translation available -',
1946
- # 'sv': 'Kvartstid'},
1947
- # 'Beskrivning': {},
1948
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1949
- # 'link': []},
1950
- # 'ID': '133275',
1951
- # 'Kod': '8',
1952
- # 'LarosateID': 29,
1953
- # 'Takt': 8,
1954
- # 'link': []},
1955
- # { 'Benamning': { 'en': '- No translation available -',
1956
- # 'sv': 'Nästan heltid'},
1957
- # 'Beskrivning': {},
1958
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1959
- # 'link': []},
1960
- # 'ID': '133337',
1961
- # 'Kod': '80',
1962
- # 'LarosateID': 29,
1963
- # 'Takt': 80,
1964
- # 'link': []},
1965
- # { 'Benamning': { 'en': '- No translation available -',
1966
- # 'sv': 'Nästan heltid'},
1967
- # 'Beskrivning': {},
1968
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1969
- # 'link': []},
1970
- # 'ID': '133336',
1971
- # 'Kod': '81',
1972
- # 'LarosateID': 29,
1973
- # 'Takt': 81,
1974
- # 'link': []},
1975
- # { 'Benamning': { 'en': '- No translation available -',
1976
- # 'sv': 'Nästan heltid'},
1977
- # 'Beskrivning': {},
1978
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1979
- # 'link': []},
1980
- # 'ID': '133340',
1981
- # 'Kod': '82',
1982
- # 'LarosateID': 29,
1983
- # 'Takt': 82,
1984
- # 'link': []},
1985
- # { 'Benamning': { 'en': '- No translation available -',
1986
- # 'sv': 'Nästan heltid'},
1987
- # 'Beskrivning': {},
1988
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1989
- # 'link': []},
1990
- # 'ID': '133345',
1991
- # 'Kod': '83',
1992
- # 'LarosateID': 29,
1993
- # 'Takt': 83,
1994
- # 'link': []},
1995
- # { 'Benamning': { 'en': '- No translation available -',
1996
- # 'sv': 'Nästan heltid'},
1997
- # 'Beskrivning': {},
1998
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
1999
- # 'link': []},
2000
- # 'ID': '133341',
2001
- # 'Kod': '84',
2002
- # 'LarosateID': 29,
2003
- # 'Takt': 84,
2004
- # 'link': []},
2005
- # { 'Benamning': { 'en': '- No translation available -',
2006
- # 'sv': 'Nästan heltid'},
2007
- # 'Beskrivning': {},
2008
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2009
- # 'link': []},
2010
- # 'ID': '133343',
2011
- # 'Kod': '85',
2012
- # 'LarosateID': 29,
2013
- # 'Takt': 85,
2014
- # 'link': []},
2015
- # { 'Benamning': { 'en': '- No translation available -',
2016
- # 'sv': 'Nästan heltid'},
2017
- # 'Beskrivning': {},
2018
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2019
- # 'link': []},
2020
- # 'ID': '133344',
2021
- # 'Kod': '86',
2022
- # 'LarosateID': 29,
2023
- # 'Takt': 86,
2024
- # 'link': []},
2025
- # { 'Benamning': { 'en': '- No translation available -',
2026
- # 'sv': 'Nästan heltid'},
2027
- # 'Beskrivning': {},
2028
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2029
- # 'link': []},
2030
- # 'ID': '133346',
2031
- # 'Kod': '87',
2032
- # 'LarosateID': 29,
2033
- # 'Takt': 87,
2034
- # 'link': []},
2035
- # { 'Benamning': { 'en': '- No translation available -',
2036
- # 'sv': 'Nästan heltid'},
2037
- # 'Beskrivning': {},
2038
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2039
- # 'link': []},
2040
- # 'ID': '133348',
2041
- # 'Kod': '88',
2042
- # 'LarosateID': 29,
2043
- # 'Takt': 88,
2044
- # 'link': []},
2045
- # { 'Benamning': { 'en': '- No translation available -',
2046
- # 'sv': 'Nästan heltid'},
2047
- # 'Beskrivning': {},
2048
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2049
- # 'link': []},
2050
- # 'ID': '133349',
2051
- # 'Kod': '89',
2052
- # 'LarosateID': 29,
2053
- # 'Takt': 89,
2054
- # 'link': []},
2055
- # { 'Benamning': { 'en': '- No translation available -',
2056
- # 'sv': 'Kvartstid'},
2057
- # 'Beskrivning': {},
2058
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2059
- # 'link': []},
2060
- # 'ID': '133273',
2061
- # 'Kod': '9',
2062
- # 'LarosateID': 29,
2063
- # 'Takt': 9,
2064
- # 'link': []},
2065
- # { 'Benamning': { 'en': '- No translation available -',
2066
- # 'sv': 'Nästan heltid'},
2067
- # 'Beskrivning': {},
2068
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2069
- # 'link': []},
2070
- # 'ID': '133350',
2071
- # 'Kod': '90',
2072
- # 'LarosateID': 29,
2073
- # 'Takt': 90,
2074
- # 'link': []},
2075
- # { 'Benamning': { 'en': '- No translation available -',
2076
- # 'sv': 'Nästan heltid'},
2077
- # 'Beskrivning': {},
2078
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2079
- # 'link': []},
2080
- # 'ID': '133352',
2081
- # 'Kod': '91',
2082
- # 'LarosateID': 29,
2083
- # 'Takt': 91,
2084
- # 'link': []},
2085
- # { 'Benamning': { 'en': '- No translation available -',
2086
- # 'sv': 'Nästan heltid'},
2087
- # 'Beskrivning': {},
2088
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2089
- # 'link': []},
2090
- # 'ID': '133358',
2091
- # 'Kod': '92',
2092
- # 'LarosateID': 29,
2093
- # 'Takt': 92,
2094
- # 'link': []},
2095
- # { 'Benamning': { 'en': '- No translation available -',
2096
- # 'sv': 'Nästan heltid'},
2097
- # 'Beskrivning': {},
2098
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2099
- # 'link': []},
2100
- # 'ID': '133353',
2101
- # 'Kod': '93',
2102
- # 'LarosateID': 29,
2103
- # 'Takt': 93,
2104
- # 'link': []},
2105
- # { 'Benamning': { 'en': '- No translation available -',
2106
- # 'sv': 'Nästan heltid'},
2107
- # 'Beskrivning': {},
2108
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2109
- # 'link': []},
2110
- # 'ID': '133354',
2111
- # 'Kod': '94',
2112
- # 'LarosateID': 29,
2113
- # 'Takt': 94,
2114
- # 'link': []},
2115
- # { 'Benamning': { 'en': '- No translation available -',
2116
- # 'sv': 'Nästan heltid'},
2117
- # 'Beskrivning': {},
2118
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2119
- # 'link': []},
2120
- # 'ID': '133351',
2121
- # 'Kod': '95',
2122
- # 'LarosateID': 29,
2123
- # 'Takt': 95,
2124
- # 'link': []},
2125
- # { 'Benamning': { 'en': '- No translation available -',
2126
- # 'sv': 'Nästan heltid'},
2127
- # 'Beskrivning': {},
2128
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2129
- # 'link': []},
2130
- # 'ID': '133355',
2131
- # 'Kod': '96',
2132
- # 'LarosateID': 29,
2133
- # 'Takt': 96,
2134
- # 'link': []},
2135
- # { 'Benamning': { 'en': '- No translation available -',
2136
- # 'sv': 'Nästan heltid'},
2137
- # 'Beskrivning': {},
2138
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2139
- # 'link': []},
2140
- # 'ID': '133357',
2141
- # 'Kod': '97',
2142
- # 'LarosateID': 29,
2143
- # 'Takt': 97,
2144
- # 'link': []},
2145
- # { 'Benamning': { 'en': '- No translation available -',
2146
- # 'sv': 'Nästan heltid'},
2147
- # 'Beskrivning': {},
2148
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2149
- # 'link': []},
2150
- # 'ID': '133356',
2151
- # 'Kod': '98',
2152
- # 'LarosateID': 29,
2153
- # 'Takt': 98,
2154
- # 'link': []},
2155
- # { 'Benamning': { 'en': '- No translation available -',
2156
- # 'sv': 'Nästan heltid'},
2157
- # 'Beskrivning': {},
2158
- # 'Giltighetsperiod': { 'Slutdatum': '2018-06-19',
2159
- # 'link': []},
2160
- # 'ID': '133359',
2161
- # 'Kod': '99',
2162
- # 'LarosateID': 29,
2163
- # 'Takt': 99,
2164
- # 'link': []}],
2165
- # 'link': []}
2166
- @
2167
-
2168
-
2169
- \section{[[finansieringsform_JSON]]}
2170
-
2171
- <<LadokSession data methods>>=
2172
- # added by GQMJr
2173
- #####################################################################
2174
- #
2175
- # finansieringsform_JSON
2176
- #
2177
- # RETURNERAR JSON forms of financing
2178
- def finansieringsform_JSON(self):
2179
- r = self.session.get(
2180
- url=self.base_gui_proxy_url +
2181
- '/kataloginformation/grunddata/finansieringsform',
2182
- headers=self.headers).json()
2183
- return r
2184
-
2185
- # returns:
2186
- # { 'Finansieringsform': [ { 'Benamning': { 'en': '- No translation '
2187
- # 'available -',
2188
- # 'sv': 'Alumn, med examen fr '
2189
- # 'KTH (ej HST-HPR)'},
2190
- # 'Beskrivning': {},
2191
- # 'Giltighetsperiod': {'link': []},
2192
- # 'ID': '131704',
2193
- # 'Kod': 'ALU',
2194
- # 'LarosateID': 29,
2195
- # 'link': []},
2196
- # { 'Benamning': { 'en': '- No translation '
2197
- # ...
2198
- @
2199
-
2200
-
2201
- \section{[[utbildningsomrade_JSON]]}
2202
-
2203
- <<LadokSession data methods>>=
2204
- # added by GQMJr
2205
- #####################################################################
2206
- #
2207
- # utbildningsomrade_JSON
2208
- #
2209
- # RETURNERAR JSON of subjects
2210
- def utbildningsomrade_JSON(self):
2211
- r = self.session.get(
2212
- url=self.base_gui_proxy_url +
2213
- '/kataloginformation/grunddata/utbildningsomrade',
2214
- headers=self.headers).json()
2215
- return r
2216
-
2217
- # returns:
2218
- # { 'Utbildningsomrade': [ { 'Benamning': { 'en': 'Dance',
2219
- # 'sv': 'Dansområdet'},
2220
- # 'Beskrivning': { 'sv': 'Infördes från '
2221
- # 'budgetåret 1994/95. '
2222
- # 'Tidigare fanns bara '
2223
- # 'ett konstnärligt '
2224
- # 'utbildningsområde '
2225
- # '(vars '
2226
- # 'ersättningsbelopp '
2227
- # 'varierade mellan '
2228
- # 'lärosätena).'},
2229
- # 'Giltighetsperiod': { 'Startdatum': '1994-07-01',
2230
- # 'link': []},
2231
- # 'ID': '1',
2232
- # 'Kod': 'DA',
2233
- # 'LarosateID': -1,
2234
- # 'link': []},
2235
- # ...
2236
- # { 'Benamning': { 'en': 'Education',
2237
- # 'sv': 'Undervisningsområdet'},
2238
- # 'Beskrivning': { 'sv': 'Avser utbildning '
2239
- # 'inom det allmänna '
2240
- # 'utbildningsområdet '
2241
- # 'och den '
2242
- # 'utbildningsvetenskapliga '
2243
- # 'kärnan. T.o.m. '
2244
- # '2012-12-31 avsågs '
2245
- # 'även övrig '
2246
- # 'verksamhetsförlagd '
2247
- # 'utbildning (se '
2248
- # 'VU).'},
2249
- # 'Giltighetsperiod': { 'Startdatum': '1993-07-01',
2250
- # 'link': []},
2251
- # 'ID': '9',
2252
- # 'Kod': 'LU',
2253
- # 'LarosateID': -1,
2254
- # 'link': []},
2255
- # ...
2256
- # { 'Benamning': { 'en': 'Natural sciences',
2257
- # 'sv': 'Naturvetenskapliga '
2258
- # 'området'},
2259
- # 'Beskrivning': {},
2260
- # 'Giltighetsperiod': { 'Startdatum': '1993-07-01',
2261
- # 'link': []},
2262
- # 'ID': '13',
2263
- # 'Kod': 'NA',
2264
- # 'LarosateID': -1,
2265
- # 'link': []},
2266
- # ...
2267
- # { 'Benamning': { 'en': 'Technology',
2268
- # 'sv': 'Tekniska området'},
2269
- # 'Beskrivning': {},
2270
- # 'Giltighetsperiod': { 'Startdatum': '1993-07-01',
2271
- # 'link': []},
2272
- # 'ID': '19',
2273
- # 'Kod': 'TE',
2274
- # 'LarosateID': -1,
2275
- # 'link': []},
2276
- # ... ],
2277
- # 'link': []}
2278
- @
2279
-
2280
-
2281
- \section{[[kravpatidigarestudier_JSON]]}
2282
-
2283
- <<LadokSession data methods>>=
2284
- # added by GQMJr
2285
- #####################################################################
2286
- #
2287
- # kravpatidigarestudier_JSON
2288
- #
2289
- # RETURNERAR JSON of krequirements for earlier studies
2290
- def kravpatidigarestudier_JSON(self):
2291
- r = self.session.get(
2292
- url=self.base_gui_proxy_url +
2293
- '/kataloginformation/grunddata/kravpatidigarestudier',
2294
- headers=self.headers).json()
2295
- return r
2296
-
2297
- # returns
2298
- # { 'KravPaTidigareStudier': [ { 'Benamning': { 'en': 'University '
2299
- # 'studies required',
2300
- # 'sv': 'Tidigare '
2301
- # 'högskolestudier '
2302
- # 'krävs'},
2303
- # 'Beskrivning': {},
2304
- # 'Emilvarde': 'uh',
2305
- # 'Giltighetsperiod': {'link': []},
2306
- # 'ID': '1',
2307
- # 'Kod': 'UH',
2308
- # 'LarosateID': -1,
2309
- # 'link': []},
2310
- # { 'Benamning': { 'en': 'Upper secondary '
2311
- # 'or equivalent',
2312
- # 'sv': 'Inga tidigare '
2313
- # 'högskolestudier '
2314
- # 'krävs'},
2315
- # 'Beskrivning': {},
2316
- # 'Emilvarde': 'grundlaggande',
2317
- # 'Giltighetsperiod': {'link': []},
2318
- # 'ID': '2',
2319
- # 'Kod': 'GR',
2320
- # 'LarosateID': -1,
2321
- # 'link': []},
2322
- # { 'Benamning': { 'en': 'No general entry '
2323
- # 'requirements '
2324
- # 'needed',
2325
- # 'sv': 'Ingen '
2326
- # 'grundläggande '
2327
- # 'behörighet krävs'},
2328
- # 'Beskrivning': {},
2329
- # 'Emilvarde': 'inga',
2330
- # 'Giltighetsperiod': {'link': []},
2331
- # 'ID': '3',
2332
- # 'Kod': 'IN',
2333
- # 'LarosateID': -1,
2334
- # 'link': []}],
2335
- # 'link': []}
2336
- @
2337
-
2338
-
2339
- \section{[[studieordning_JSON]]}
2340
-
2341
- <<LadokSession data methods>>=
2342
- # added by GQMJr
2343
- #####################################################################
2344
- #
2345
- # studieordning_JSON
2346
- #
2347
- # RETURNERAR JSON of study regulation
2348
- def studieordning_JSON(self):
2349
- r = self.session.get(
2350
- url=self.base_gui_proxy_url +
2351
- '/kataloginformation/grunddata/studieordning',
2352
- headers=self.headers).json()
2353
- return r
2354
-
2355
- # returns:
2356
- # { 'Studieordning': [ { 'Benamning': { 'en': 'Higher education, study '
2357
- # 'regulation of 1993',
2358
- # 'sv': 'Högskoleutbildning, 1993 '
2359
- # 'års studieordning'},
2360
- # 'Beskrivning': { 'sv': 'Avser i Ladok 1993 års '
2361
- # 'studieordning inklusive '
2362
- # 'dess föregångare'},
2363
- # 'EnhetID': 9,
2364
- # 'Giltighetsperiod': {'link': []},
2365
- # 'ID': '2',
2366
- # 'Kod': 'HÖ93',
2367
- # 'LarosateID': -1,
2368
- # 'UtbildningsformID': 1,
2369
- # 'link': []},
2370
- # { 'Benamning': { 'en': 'Higher education, study '
2371
- # 'regulation of 2007',
2372
- # 'sv': 'Högskoleutbildning, 2007 '
2373
- # 'års studieordning'},
2374
- # 'Beskrivning': {},
2375
- # 'EnhetID': 2,
2376
- # 'Giltighetsperiod': { 'Startdatum': '2007-07-01',
2377
- # 'link': []},
2378
- # 'ID': '1',
2379
- # 'Kod': 'HÖ07',
2380
- # 'LarosateID': -1,
2381
- # 'UtbildningsformID': 1,
2382
- # 'link': []},
2383
- # { 'Benamning': { 'en': 'Access education (hours)',
2384
- # 'sv': 'Behörighetsgivande '
2385
- # 'förutbildning (timmar)'},
2386
- # 'Beskrivning': {},
2387
- # 'EnhetID': 5,
2388
- # 'Giltighetsperiod': {'link': []},
2389
- # 'ID': '12',
2390
- # 'Kod': 'ÖVBT',
2391
- # 'LarosateID': -1,
2392
- # 'UtbildningsformID': 100970,
2393
- # 'link': []},
2394
- # { 'Benamning': { 'en': 'Access education (fup)',
2395
- # 'sv': 'Behörighetsgivande '
2396
- # 'förutbildning (poäng)'},
2397
- # 'Beskrivning': { 'sv': 'Utbildning enligt '
2398
- # 'förordning (2018:1519) '
2399
- # 'om behörighetsgivande '
2400
- # 'och '
2401
- # 'högskoleintroducerande '
2402
- # 'utbildning resp. '
2403
- # 'tidigare gällande '
2404
- # 'förordning (2007:432) '
2405
- # 'om behörighetsgivande '
2406
- # 'förutbildning vid '
2407
- # 'universitet och '
2408
- # 'högskolor'},
2409
- # 'EnhetID': 4,
2410
- # 'Giltighetsperiod': {'link': []},
2411
- # 'ID': '3',
2412
- # 'Kod': 'FÖPO',
2413
- # 'LarosateID': -1,
2414
- # 'UtbildningsformID': 2,
2415
- # 'link': []},
2416
- # { 'Benamning': { 'en': 'Access education (weeks)',
2417
- # 'sv': 'Behörighetsgivande '
2418
- # 'förutbildning (veckor)'},
2419
- # 'Beskrivning': { 'sv': 'Utbildning enligt '
2420
- # 'förordning (2018:1519) '
2421
- # 'om behörighetsgivande '
2422
- # 'och '
2423
- # 'högskoleintroducerande '
2424
- # 'utbildning resp. '
2425
- # 'tidigare gällande '
2426
- # 'förordning (2007:432) '
2427
- # 'om behörighetsgivande '
2428
- # 'förutbildning vid '
2429
- # 'universitet och '
2430
- # 'högskolor'},
2431
- # 'EnhetID': 1,
2432
- # 'Giltighetsperiod': {'link': []},
2433
- # 'ID': '4',
2434
- # 'Kod': 'FÖVE',
2435
- # 'LarosateID': -1,
2436
- # 'UtbildningsformID': 2,
2437
- # 'link': []},
2438
- # { 'Benamning': { 'en': 'Internal education (ORU)',
2439
- # 'sv': 'Högskoleintern utbildning '
2440
- # '(ORU)'},
2441
- # 'Beskrivning': { 'sv': 'Intern utbildning vid '
2442
- # 'Örebro universitet'},
2443
- # 'EnhetID': 6,
2444
- # 'Giltighetsperiod': { 'Slutdatum': '2007-06-30',
2445
- # 'Startdatum': '2004-01-01',
2446
- # 'link': []},
2447
- # 'ID': '15',
2448
- # 'Kod': 'ÖVHI',
2449
- # 'LarosateID': -1,
2450
- # 'UtbildningsformID': 100970,
2451
- # 'link': []},
2452
- # { 'Benamning': { 'en': 'Older defence education',
2453
- # 'sv': 'Äldre utbildning vid '
2454
- # 'Försvarshögskolan'},
2455
- # 'Beskrivning': { 'sv': 'Utbildning enligt '
2456
- # 'förordningen '
2457
- # '(1996:1476) med '
2458
- # 'instruktion för '
2459
- # 'Försvarshögskolan'},
2460
- # 'EnhetID': 10,
2461
- # 'Giltighetsperiod': { 'Slutdatum': '2007-12-31',
2462
- # 'link': []},
2463
- # 'ID': '16',
2464
- # 'Kod': 'ÖVFU',
2465
- # 'LarosateID': -1,
2466
- # 'UtbildningsformID': 100970,
2467
- # 'link': []},
2468
- # { 'Benamning': { 'en': 'Post-secondary vocational '
2469
- # 'education and training',
2470
- # 'sv': 'Kvalificerad '
2471
- # 'yrkesutbildning'},
2472
- # 'Beskrivning': { 'sv': 'Utbildning enligt '
2473
- # 'förordningen '
2474
- # '(2001:1131) om '
2475
- # 'kvalificerad '
2476
- # 'yrkesutbildning '
2477
- # '(upphävd 2009-04-15)'},
2478
- # 'EnhetID': 7,
2479
- # 'Giltighetsperiod': { 'Slutdatum': '2013-12-31',
2480
- # 'link': []},
2481
- # 'ID': '13',
2482
- # 'Kod': 'KY02',
2483
- # 'LarosateID': -1,
2484
- # 'UtbildningsformID': 100968,
2485
- # 'link': []},
2486
- # { 'Benamning': { 'en': 'Preparatory education',
2487
- # 'sv': 'Preparandutbildning'},
2488
- # 'Beskrivning': { 'sv': 'Utbildning enligt '
2489
- # 'förordningen (1985:681) '
2490
- # 'om preparandutbildning '
2491
- # 'i svenska (upphävd '
2492
- # '1993-07-01)'},
2493
- # 'EnhetID': 6,
2494
- # 'Giltighetsperiod': { 'Slutdatum': '1993-06-30',
2495
- # 'link': []},
2496
- # 'ID': '14',
2497
- # 'Kod': 'ÖVPR',
2498
- # 'LarosateID': -1,
2499
- # 'UtbildningsformID': 100970,
2500
- # 'link': []},
2501
- # { 'Benamning': { 'en': 'Contract education '
2502
- # '(hours)',
2503
- # 'sv': 'Uppdragsutbildning, Övrig '
2504
- # 'utbildning (timmar)'},
2505
- # 'Beskrivning': {},
2506
- # 'EnhetID': 5,
2507
- # 'Giltighetsperiod': { 'Slutdatum': '2018-12-31',
2508
- # 'link': []},
2509
- # 'ID': '9',
2510
- # 'Kod': 'ÖVUT',
2511
- # 'LarosateID': -1,
2512
- # 'UtbildningsformID': 100970,
2513
- # 'link': []},
2514
- # { 'Benamning': { 'en': 'Higher vocational '
2515
- # 'education',
2516
- # 'sv': 'Yrkeshögskoleutbildning'},
2517
- # 'Beskrivning': { 'sv': 'Utbildning enligt '
2518
- # 'förordning (2009:130) '
2519
- # 'om yrkeshögskolan'},
2520
- # 'EnhetID': 8,
2521
- # 'Giltighetsperiod': { 'Startdatum': '2009-07-01',
2522
- # 'link': []},
2523
- # 'ID': '5',
2524
- # 'Kod': 'YH09',
2525
- # 'LarosateID': -1,
2526
- # 'UtbildningsformID': 4,
2527
- # 'link': []},
2528
- # { 'Benamning': { 'en': 'Contract education '
2529
- # '(credits)',
2530
- # 'sv': 'Uppdragsutbildning '
2531
- # '(högskolepoäng)'},
2532
- # 'Beskrivning': {},
2533
- # 'EnhetID': 2,
2534
- # 'Giltighetsperiod': { 'Startdatum': '2007-07-01',
2535
- # 'link': []},
2536
- # 'ID': '17',
2537
- # 'Kod': 'UPHP',
2538
- # 'LarosateID': -1,
2539
- # 'UtbildningsformID': 100928,
2540
- # 'link': []},
2541
- # { 'Benamning': { 'en': 'Contract education '
2542
- # '(weeks)',
2543
- # 'sv': 'Uppdragsutbildning '
2544
- # '(veckor)'},
2545
- # 'Beskrivning': {},
2546
- # 'EnhetID': 1,
2547
- # 'Giltighetsperiod': {'link': []},
2548
- # 'ID': '18',
2549
- # 'Kod': 'UPVE',
2550
- # 'LarosateID': -1,
2551
- # 'UtbildningsformID': 100928,
2552
- # 'link': []},
2553
- # { 'Benamning': { 'en': 'Police education',
2554
- # 'sv': 'Polisutbildning'},
2555
- # 'Beskrivning': { 'sv': 'Polisutbildning som ej '
2556
- # 'uppfyller alla '
2557
- # 'kvalitetskrav för '
2558
- # 'högskoleutbildning.'},
2559
- # 'EnhetID': 2,
2560
- # 'Giltighetsperiod': {'link': []},
2561
- # 'ID': '109831',
2562
- # 'Kod': 'PU99',
2563
- # 'LarosateID': -1,
2564
- # 'UtbildningsformID': 100969,
2565
- # 'link': []},
2566
- # { 'Benamning': { 'en': 'Police education, equal '
2567
- # 'to Higher education',
2568
- # 'sv': 'Polisutbildning, '
2569
- # 'motsvarande '
2570
- # 'högskoleutbildning'},
2571
- # 'Beskrivning': { 'sv': 'Polisutbildning som '
2572
- # 'uppfyller '
2573
- # 'kvalitetskraven för '
2574
- # 'högskoleutbildning'},
2575
- # 'EnhetID': 2,
2576
- # 'Giltighetsperiod': { 'Startdatum': '2018-07-01',
2577
- # 'link': []},
2578
- # 'ID': '135370',
2579
- # 'Kod': 'PU18',
2580
- # 'LarosateID': -1,
2581
- # 'UtbildningsformID': 100969,
2582
- # 'link': []},
2583
- # { 'Benamning': {'en': 'Ö-Fel', 'sv': 'Ö-Fel'},
2584
- # 'Beskrivning': {},
2585
- # 'EnhetID': 1,
2586
- # 'Giltighetsperiod': { 'Slutdatum': '1900-01-01',
2587
- # 'link': []},
2588
- # 'ID': '138710',
2589
- # 'Kod': 'FEL',
2590
- # 'LarosateID': -1,
2591
- # 'UtbildningsformID': 100970,
2592
- # 'link': []},
2593
- # { 'Benamning': { 'en': 'Contract education '
2594
- # '(hours)',
2595
- # 'sv': 'Uppdragsutbildning '
2596
- # '(timmar)'},
2597
- # 'Beskrivning': {},
2598
- # 'EnhetID': 5,
2599
- # 'Giltighetsperiod': { 'Startdatum': '2019-01-01',
2600
- # 'link': []},
2601
- # 'ID': '147898',
2602
- # 'Kod': 'UPTI',
2603
- # 'LarosateID': -1,
2604
- # 'UtbildningsformID': 100928,
2605
- # 'link': []}],
2606
- # 'link': []}
2607
- @
2608
-
2609
-
2610
- \section{[[enhet_JSON]]}
2611
-
2612
- <<LadokSession data methods>>=
2613
- # added by GQMJr
2614
- #####################################################################
2615
- #
2616
- # enhet_JSON
2617
- #
2618
- # RETURNERAR JSON of units
2619
- def enhet_JSON(self):
2620
- r = self.session.get(
2621
- url=self.base_gui_proxy_url + '/kataloginformation/grunddata/enhet',
2622
- headers=self.headers).json()
2623
- return r
2624
-
2625
- # returns:
2626
- # { 'Enhet': [ { 'Benamning': { 'en': 'Credit points',
2627
- # 'sv': 'Poäng (Övrig utbildning)'},
2628
- # 'Beskrivning': {},
2629
- # 'Giltighetsperiod': { 'Slutdatum': '2018-01-01',
2630
- # 'link': []},
2631
- # 'Helarsvarde': 40,
2632
- # 'ID': '6',
2633
- # 'Kod': 'AUP',
2634
- # 'LarosateID': -1,
2635
- # 'link': []},
2636
- # { 'Benamning': { 'en': 'Pre-education credits',
2637
- # 'sv': 'Förutbildningspoäng'},
2638
- # 'Beskrivning': {},
2639
- # 'Giltighetsperiod': {'link': []},
2640
- # 'Helarsvarde': 60,
2641
- # 'ID': '4',
2642
- # 'Kod': 'FUP',
2643
- # 'LarosateID': -1,
2644
- # 'link': []},
2645
- # { 'Benamning': {'en': 'Credits', 'sv': 'Högskolepoäng'},
2646
- # 'Beskrivning': { 'sv': 'Översattes 2007-2010 med Higher '
2647
- # 'education credits'},
2648
- # 'Giltighetsperiod': { 'Startdatum': '2007-07-01',
2649
- # 'link': []},
2650
- # 'Helarsvarde': 60,
2651
- # 'ID': '2',
2652
- # 'Kod': 'HP',
2653
- # 'LarosateID': -1,
2654
- # 'link': []},
2655
- # { 'Benamning': { 'en': 'Converted credits',
2656
- # 'sv': 'Konverterade högskolepoäng'},
2657
- # 'Beskrivning': { 'sv': 'Enheten poäng konverterades '
2658
- # 'till högskolepoäng i Ladok för '
2659
- # '1993 års studieordning i '
2660
- # 'samband med övergången till '
2661
- # '2007 års studieordning'},
2662
- # 'Giltighetsperiod': { 'Slutdatum': '2007-06-30',
2663
- # 'link': []},
2664
- # 'Helarsvarde': 60,
2665
- # 'ID': '9',
2666
- # 'Kod': 'HP-K',
2667
- # 'LarosateID': -1,
2668
- # 'link': []},
2669
- # { 'Benamning': { 'en': 'Internal credits',
2670
- # 'sv': 'Interna poäng'},
2671
- # 'Beskrivning': { 'sv': 'Har enbart använts av '
2672
- # 'Försvarshögskolan'},
2673
- # 'Giltighetsperiod': { 'Slutdatum': '2016-07-01',
2674
- # 'link': []},
2675
- # 'Helarsvarde': 60,
2676
- # 'ID': '10',
2677
- # 'Kod': 'IP',
2678
- # 'LarosateID': -1,
2679
- # 'link': []},
2680
- # { 'Benamning': {'en': 'KY credits', 'sv': 'KY-poäng'},
2681
- # 'Beskrivning': {},
2682
- # 'Giltighetsperiod': { 'Slutdatum': '2013-12-31',
2683
- # 'Startdatum': '2002-01-01',
2684
- # 'link': []},
2685
- # 'Helarsvarde': 40,
2686
- # 'ID': '7',
2687
- # 'Kod': 'KYP',
2688
- # 'LarosateID': -1,
2689
- # 'link': []},
2690
- # { 'Benamning': {'en': 'Hours', 'sv': 'Timmar'},
2691
- # 'Beskrivning': {},
2692
- # 'Giltighetsperiod': {'link': []},
2693
- # 'Helarsvarde': 1600,
2694
- # 'ID': '5',
2695
- # 'Kod': 'T',
2696
- # 'LarosateID': -1,
2697
- # 'link': []},
2698
- # { 'Benamning': {'en': 'Weeks', 'sv': 'Veckor'},
2699
- # 'Beskrivning': {},
2700
- # 'Giltighetsperiod': {'link': []},
2701
- # 'Helarsvarde': 40,
2702
- # 'ID': '1',
2703
- # 'Kod': 'V',
2704
- # 'LarosateID': -1,
2705
- # 'link': []},
2706
- # { 'Benamning': { 'en': 'HVE credits',
2707
- # 'sv': 'Yrkeshögskolepoäng'},
2708
- # 'Beskrivning': {},
2709
- # 'Giltighetsperiod': { 'Startdatum': '2009-07-01',
2710
- # 'link': []},
2711
- # 'Helarsvarde': 200,
2712
- # 'ID': '8',
2713
- # 'Kod': 'YHP',
2714
- # 'LarosateID': -1,
2715
- # 'link': []}],
2716
- # 'link': []}
2717
- @
2718
-
2719
-
2720
- \section{[[studielokalisering_JSON]]}
2721
-
2722
- <<LadokSession data methods>>=
2723
- # added by GQMJr
2724
- #####################################################################
2725
- #
2726
- # studielokalisering_JSON
2727
- #
2728
- # RETURNERAR JSON of study location
2729
- def studielokalisering_JSON(self):
2730
- r = self.session.get(
2731
- url=self.base_gui_proxy_url +
2732
- '/kataloginformation/grunddata/studielokalisering',
2733
- headers=self.headers).json()
2734
- return r
2735
-
2736
- # returns:
2737
- # { 'Studielokalisering': [ { 'Benamning': { 'en': 'Botkyrka',
2738
- # 'sv': 'Botkyrka'},
2739
- # 'Beskrivning': {},
2740
- # 'Giltighetsperiod': { 'Slutdatum': '1997-12-31',
2741
- # 'Startdatum': '1997-08-01',
2742
- # 'link': []},
2743
- # 'ID': '131772',
2744
- # 'Kod': '0127',
2745
- # 'LarosateID': 29,
2746
- # 'OrtID': 110990,
2747
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2748
- # 'method': 'GET',
2749
- # 'rel': 'svenskort',
2750
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/110990'}]},
2751
- # { 'Benamning': { 'en': 'Haninge',
2752
- # 'sv': 'Haninge'},
2753
- # 'Beskrivning': {},
2754
- # 'Giltighetsperiod': { 'Slutdatum': '2016-06-30',
2755
- # 'Startdatum': '1994-08-01',
2756
- # 'link': []},
2757
- # 'ID': '131773',
2758
- # 'Kod': '0136',
2759
- # 'LarosateID': 29,
2760
- # 'OrtID': 110991,
2761
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2762
- # 'method': 'GET',
2763
- # 'rel': 'svenskort',
2764
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/110991'}]},
2765
- # { 'Benamning': { 'en': 'Nyköping',
2766
- # 'sv': 'Nyköping'},
2767
- # 'Beskrivning': {},
2768
- # 'Giltighetsperiod': { 'Slutdatum': '2005-06-30',
2769
- # 'Startdatum': '2005-01-01',
2770
- # 'link': []},
2771
- # 'ID': '131777',
2772
- # 'Kod': '0480',
2773
- # 'LarosateID': 29,
2774
- # 'OrtID': 44,
2775
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2776
- # 'method': 'GET',
2777
- # 'rel': 'svenskort',
2778
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/44'}]},
2779
- # { 'Benamning': { 'en': 'Valdemarsvik',
2780
- # 'sv': 'Valdemarsvik'},
2781
- # 'Beskrivning': {},
2782
- # 'Giltighetsperiod': { 'Slutdatum': '1999-12-31',
2783
- # 'link': []},
2784
- # 'ID': '131780',
2785
- # 'Kod': '0563',
2786
- # 'LarosateID': 29,
2787
- # 'OrtID': 60,
2788
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2789
- # 'method': 'GET',
2790
- # 'rel': 'svenskort',
2791
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/60'}]},
2792
- # { 'Benamning': {'en': 'Visby', 'sv': 'Visby'},
2793
- # 'Beskrivning': {},
2794
- # 'Giltighetsperiod': { 'Slutdatum': '2000-12-31',
2795
- # 'Startdatum': '1991-08-01',
2796
- # 'link': []},
2797
- # 'ID': '131781',
2798
- # 'Kod': '0980',
2799
- # 'LarosateID': 29,
2800
- # 'OrtID': 108,
2801
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2802
- # 'method': 'GET',
2803
- # 'rel': 'svenskort',
2804
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/108'}]},
2805
- # { 'Benamning': { 'en': 'Ängelholm',
2806
- # 'sv': 'Ängelholm'},
2807
- # 'Beskrivning': {},
2808
- # 'Giltighetsperiod': { 'Slutdatum': '1997-12-31',
2809
- # 'Startdatum': '1997-12-31',
2810
- # 'link': []},
2811
- # 'ID': '131782',
2812
- # 'Kod': '1292',
2813
- # 'LarosateID': 29,
2814
- # 'OrtID': 154,
2815
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2816
- # 'method': 'GET',
2817
- # 'rel': 'svenskort',
2818
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/154'}]},
2819
- # { 'Benamning': {'en': 'Falun', 'sv': 'Falun'},
2820
- # 'Beskrivning': {},
2821
- # 'Giltighetsperiod': { 'Slutdatum': '1998-12-31',
2822
- # 'Startdatum': '1994-08-01',
2823
- # 'link': []},
2824
- # 'ID': '131787',
2825
- # 'Kod': '2080',
2826
- # 'LarosateID': 29,
2827
- # 'OrtID': 263,
2828
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2829
- # 'method': 'GET',
2830
- # 'rel': 'svenskort',
2831
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/263'}]},
2832
- # { 'Benamning': {'en': 'Gävle', 'sv': 'Gävle'},
2833
- # 'Beskrivning': {},
2834
- # 'Giltighetsperiod': { 'Slutdatum': '1998-12-31',
2835
- # 'Startdatum': '1997-08-01',
2836
- # 'link': []},
2837
- # 'ID': '131784',
2838
- # 'Kod': '2180',
2839
- # 'LarosateID': 29,
2840
- # 'OrtID': 273,
2841
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2842
- # 'method': 'GET',
2843
- # 'rel': 'svenskort',
2844
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/273'}]},
2845
- # { 'Benamning': { 'en': 'Stockholm School of '
2846
- # 'Economics',
2847
- # 'sv': 'Handelshögskolan'},
2848
- # 'Beskrivning': {},
2849
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
2850
- # 'link': []},
2851
- # 'ID': '135191',
2852
- # 'Kod': 'HANDELS',
2853
- # 'LarosateID': 29,
2854
- # 'OrtID': 18,
2855
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2856
- # 'method': 'GET',
2857
- # 'rel': 'svenskort',
2858
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/18'}]},
2859
- # { 'Benamning': { 'en': 'KI Flemingsberg',
2860
- # 'sv': 'KI Flemingsberg'},
2861
- # 'Beskrivning': {},
2862
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
2863
- # 'link': []},
2864
- # 'ID': '135192',
2865
- # 'Kod': 'KI_FLEMINGS',
2866
- # 'LarosateID': 29,
2867
- # 'OrtID': 7,
2868
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2869
- # 'method': 'GET',
2870
- # 'rel': 'svenskort',
2871
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/7'}]},
2872
- # { 'Benamning': { 'en': 'University of Arts, '
2873
- # 'Crafts and Design',
2874
- # 'sv': 'Konstfack'},
2875
- # 'Beskrivning': {},
2876
- # 'Giltighetsperiod': { 'Startdatum': '2018-08-27',
2877
- # 'link': []},
2878
- # 'ID': '147750',
2879
- # 'Kod': 'KONSTFACK',
2880
- # 'LarosateID': 29,
2881
- # 'OrtID': 18,
2882
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2883
- # 'method': 'GET',
2884
- # 'rel': 'svenskort',
2885
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/18'}]},
2886
- # { 'Benamning': { 'en': 'KTH Campus',
2887
- # 'sv': 'KTH Campus'},
2888
- # 'Beskrivning': { 'sv': '"Campus" '
2889
- # 'Valhallavägen'},
2890
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
2891
- # 'link': []},
2892
- # 'ID': '135195',
2893
- # 'Kod': 'KTHCAMPUS',
2894
- # 'LarosateID': 29,
2895
- # 'OrtID': 18,
2896
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2897
- # 'method': 'GET',
2898
- # 'rel': 'svenskort',
2899
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/18'}]},
2900
- # { 'Benamning': {'en': 'Täby', 'sv': 'Täby'},
2901
- # 'Beskrivning': {},
2902
- # 'Giltighetsperiod': { 'Slutdatum': '1999-12-31',
2903
- # 'link': []},
2904
- # 'ID': '131774',
2905
- # 'Kod': '0160',
2906
- # 'LarosateID': 29,
2907
- # 'OrtID': 14,
2908
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2909
- # 'method': 'GET',
2910
- # 'rel': 'svenskort',
2911
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/14'}]},
2912
- # { 'Benamning': { 'en': 'Stockholm',
2913
- # 'sv': 'Stockholm'},
2914
- # 'Beskrivning': {},
2915
- # 'Giltighetsperiod': { 'Slutdatum': '2019-01-14',
2916
- # 'Startdatum': '1917-10-19',
2917
- # 'link': []},
2918
- # 'ID': '131778',
2919
- # 'Kod': '0180',
2920
- # 'LarosateID': 29,
2921
- # 'OrtID': 18,
2922
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2923
- # 'method': 'GET',
2924
- # 'rel': 'svenskort',
2925
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/18'}]},
2926
- # { 'Benamning': { 'en': 'Sundsvall',
2927
- # 'sv': 'Sundsvall'},
2928
- # 'Beskrivning': {},
2929
- # 'Giltighetsperiod': { 'Slutdatum': '1997-12-31',
2930
- # 'Startdatum': '1996-08-01',
2931
- # 'link': []},
2932
- # 'ID': '131785',
2933
- # 'Kod': '2281',
2934
- # 'LarosateID': 29,
2935
- # 'OrtID': 281,
2936
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2937
- # 'method': 'GET',
2938
- # 'rel': 'svenskort',
2939
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/281'}]},
2940
- # { 'Benamning': { 'en': 'Örnsköldsvik',
2941
- # 'sv': 'Örnsköldsvik'},
2942
- # 'Beskrivning': {},
2943
- # 'Giltighetsperiod': { 'Slutdatum': '1997-12-31',
2944
- # 'Startdatum': '1997-01-01',
2945
- # 'link': []},
2946
- # 'ID': '131788',
2947
- # 'Kod': '2284',
2948
- # 'LarosateID': 29,
2949
- # 'OrtID': 284,
2950
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2951
- # 'method': 'GET',
2952
- # 'rel': 'svenskort',
2953
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/284'}]},
2954
- # { 'Benamning': { 'en': 'KTH Solna',
2955
- # 'sv': 'KTH Solna'},
2956
- # 'Beskrivning': { 'en': 'SciLife Labs, '
2957
- # 'Solna',
2958
- # 'sv': 'SciLife Labs, '
2959
- # 'Solna'},
2960
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-18',
2961
- # 'link': []},
2962
- # 'ID': '135610',
2963
- # 'Kod': 'SCILIFELAB',
2964
- # 'LarosateID': 29,
2965
- # 'OrtID': 25,
2966
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2967
- # 'method': 'GET',
2968
- # 'rel': 'svenskort',
2969
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/25'}]},
2970
- # { 'Benamning': { 'en': 'KTH Södertälje',
2971
- # 'sv': 'KTH Södertälje'},
2972
- # 'Beskrivning': {'sv': '"Campus" Södertälje'},
2973
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
2974
- # 'link': []},
2975
- # 'ID': '135196',
2976
- # 'Kod': 'SODERTALJE',
2977
- # 'LarosateID': 29,
2978
- # 'OrtID': 20,
2979
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2980
- # 'method': 'GET',
2981
- # 'rel': 'svenskort',
2982
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/20'}]},
2983
- # { 'Benamning': { 'en': 'Järfälla',
2984
- # 'sv': 'Järfälla'},
2985
- # 'Beskrivning': {},
2986
- # 'Giltighetsperiod': { 'Slutdatum': '1996-06-30',
2987
- # 'Startdatum': '1994-08-01',
2988
- # 'link': []},
2989
- # 'ID': '131775',
2990
- # 'Kod': '0123',
2991
- # 'LarosateID': 29,
2992
- # 'OrtID': 5,
2993
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
2994
- # 'method': 'GET',
2995
- # 'rel': 'svenskort',
2996
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/5'}]},
2997
- # { 'Benamning': { 'en': 'Huddinge',
2998
- # 'sv': 'Huddinge'},
2999
- # 'Beskrivning': {},
3000
- # 'Giltighetsperiod': { 'Slutdatum': '2019-01-14',
3001
- # 'Startdatum': '2002-01-01',
3002
- # 'link': []},
3003
- # 'ID': '131779',
3004
- # 'Kod': '0126',
3005
- # 'LarosateID': 29,
3006
- # 'OrtID': 109830,
3007
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3008
- # 'method': 'GET',
3009
- # 'rel': 'svenskort',
3010
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/109830'}]},
3011
- # { 'Benamning': { 'en': 'Södertälje',
3012
- # 'sv': 'Södertälje'},
3013
- # 'Beskrivning': {},
3014
- # 'Giltighetsperiod': { 'Slutdatum': '2019-01-14',
3015
- # 'Startdatum': '1987-01-01',
3016
- # 'link': []},
3017
- # 'ID': '131771',
3018
- # 'Kod': '0181',
3019
- # 'LarosateID': 29,
3020
- # 'OrtID': 20,
3021
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3022
- # 'method': 'GET',
3023
- # 'rel': 'svenskort',
3024
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/20'}]},
3025
- # { 'Benamning': { 'en': 'Norrtälje',
3026
- # 'sv': 'Norrtälje'},
3027
- # 'Beskrivning': {},
3028
- # 'Giltighetsperiod': { 'Slutdatum': '2005-06-30',
3029
- # 'Startdatum': '1997-08-01',
3030
- # 'link': []},
3031
- # 'ID': '131776',
3032
- # 'Kod': '0188',
3033
- # 'LarosateID': 29,
3034
- # 'OrtID': 28,
3035
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3036
- # 'method': 'GET',
3037
- # 'rel': 'svenskort',
3038
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/28'}]},
3039
- # { 'Benamning': {'en': 'Örebro', 'sv': 'Örebro'},
3040
- # 'Beskrivning': {},
3041
- # 'Giltighetsperiod': { 'Slutdatum': '1998-06-30',
3042
- # 'Startdatum': '1996-08-01',
3043
- # 'link': []},
3044
- # 'ID': '131786',
3045
- # 'Kod': '1880',
3046
- # 'LarosateID': 29,
3047
- # 'OrtID': 237,
3048
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3049
- # 'method': 'GET',
3050
- # 'rel': 'svenskort',
3051
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/237'}]},
3052
- # { 'Benamning': { 'en': 'Västerås',
3053
- # 'sv': 'Västerås'},
3054
- # 'Beskrivning': {},
3055
- # 'Giltighetsperiod': { 'Slutdatum': '1999-12-31',
3056
- # 'Startdatum': '1994-08-01',
3057
- # 'link': []},
3058
- # 'ID': '131783',
3059
- # 'Kod': '1980',
3060
- # 'LarosateID': 29,
3061
- # 'OrtID': 248,
3062
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3063
- # 'method': 'GET',
3064
- # 'rel': 'svenskort',
3065
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/248'}]},
3066
- # { 'Benamning': { 'en': 'AlbaNova',
3067
- # 'sv': 'AlbaNova'},
3068
- # 'Beskrivning': {},
3069
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
3070
- # 'link': []},
3071
- # 'ID': '135190',
3072
- # 'Kod': 'ALBANOVA',
3073
- # 'LarosateID': 29,
3074
- # 'OrtID': 18,
3075
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3076
- # 'method': 'GET',
3077
- # 'rel': 'svenskort',
3078
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/18'}]},
3079
- # { 'Benamning': { 'en': 'KTH Flemingsberg',
3080
- # 'sv': 'KTH Flemingsberg'},
3081
- # 'Beskrivning': { 'sv': '"campus" '
3082
- # 'Flemingsberg'},
3083
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
3084
- # 'link': []},
3085
- # 'ID': '135198',
3086
- # 'Kod': 'FLEMINGSB',
3087
- # 'LarosateID': 29,
3088
- # 'OrtID': 7,
3089
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3090
- # 'method': 'GET',
3091
- # 'rel': 'svenskort',
3092
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/7'}]},
3093
- # { 'Benamning': { 'en': 'KI Solna',
3094
- # 'sv': 'KI Solna'},
3095
- # 'Beskrivning': {},
3096
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
3097
- # 'link': []},
3098
- # 'ID': '135193',
3099
- # 'Kod': 'KI_SOLNA',
3100
- # 'LarosateID': 29,
3101
- # 'OrtID': 25,
3102
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3103
- # 'method': 'GET',
3104
- # 'rel': 'svenskort',
3105
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/25'}]},
3106
- # { 'Benamning': { 'en': 'KTH Kista',
3107
- # 'sv': 'KTH Kista'},
3108
- # 'Beskrivning': {'sv': '"Campus" Kista'},
3109
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
3110
- # 'link': []},
3111
- # 'ID': '135194',
3112
- # 'Kod': 'KISTA',
3113
- # 'LarosateID': 29,
3114
- # 'OrtID': 18,
3115
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3116
- # 'method': 'GET',
3117
- # 'rel': 'svenskort',
3118
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/18'}]},
3119
- # { 'Benamning': { 'en': 'Stockholm University',
3120
- # 'sv': 'Stockholms '
3121
- # 'universitet'},
3122
- # 'Beskrivning': {},
3123
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20',
3124
- # 'link': []},
3125
- # 'ID': '135197',
3126
- # 'Kod': 'SU',
3127
- # 'LarosateID': 29,
3128
- # 'OrtID': 18,
3129
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml',
3130
- # 'method': 'GET',
3131
- # 'rel': 'svenskort',
3132
- # 'uri': 'https://api.ladok.se:443/kataloginformation/svenskort/18'}]}],
3133
- # 'link': []}
3134
- @
3135
-
3136
-
3137
- \section{[[antagningsomgang_JSON]]}
3138
-
3139
- <<LadokSession data methods>>=
3140
- # added by GQMJr
3141
- #####################################################################
3142
- #
3143
- # antagningsomgang_JSON
3144
- #
3145
- # RETURNERAR JSON of admission round
3146
- def antagningsomgang_JSON(self):
3147
- r = self.session.get(
3148
- url=self.base_gui_proxy_url +
3149
- '/kataloginformation/grunddata/antagningsomgang',
3150
- headers=self.headers).json()
3151
- return r
3152
-
3153
- # returns:
3154
- # { 'Antagningsomgang': [ { 'Benamning': { 'en': 'Application to courses '
3155
- # 'within programme at '
3156
- # 'KTH HT2020',
3157
- # 'sv': 'Anmälan till kurs inom '
3158
- # 'program på KTH HT2020'},
3159
- # 'Beskrivning': {},
3160
- # 'Giltighetsperiod': {'link': []},
3161
- # 'ID': '150233',
3162
- # 'Kod': '29AKPHT20',
3163
- # 'LarosateID': 29,
3164
- # 'SistaAnmalningsdag': '2020-05-15',
3165
- # 'SistaAnnonseringsdag': '2021-05-15',
3166
- # 'Studieavgiftsbelagd': True,
3167
- # 'link': []},
3168
- # { 'Benamning': { 'en': 'Application to courses '
3169
- # 'within programme at '
3170
- # 'KTH VT2019',
3171
- # 'sv': 'Antagning till kurs '
3172
- # 'inom program KTH '
3173
- # 'VT2019'},
3174
- # 'Beskrivning': {},
3175
- # 'Giltighetsperiod': {'link': []},
3176
- # 'ID': '142134',
3177
- # 'Kod': '29AKPVT19',
3178
- # 'LarosateID': 29,
3179
- # 'SistaAnmalningsdag': '2018-11-15',
3180
- # 'SistaAnnonseringsdag': '2019-02-28',
3181
- # 'Studieavgiftsbelagd': True,
3182
- # 'link': []},
3183
- # ... ],
3184
- # 'link': []}
3185
- @
3186
-
3187
-
3188
323
  \section{[[organisation_by_uid_JSON]]}
3189
324
 
3190
325
  <<LadokSession data methods>>=
@@ -3216,265 +351,73 @@ def organisation_by_uid_JSON(self, organisationUid):
3216
351
  @
3217
352
 
3218
353
 
3219
- \section{[[utbildningstyp_JSON]]}
354
+ \section{[[examen_student_uid_JSON]]}
3220
355
 
356
+ This doesn't work anymore.
3221
357
  <<LadokSession data methods>>=
3222
358
  # added by GQMJr
3223
- #####################################################################
3224
- #
3225
- # utbildningstyp_JSON
3226
- #
3227
- # RETURNERAR JSON of types of education
3228
- # for information about these see https://ladok.se/wp-content/uploads/2018/01/Funktionsbeskrivning_095.pdf
3229
- def utbildningstyp_JSON(self):
359
+ def examen_student_uid_JSON(self, studentUID):
360
+ """
361
+ Returns the student's degree.
362
+ """
3230
363
  r = self.session.get(
3231
- url=self.base_gui_proxy_url +
3232
- '/kataloginformation/grunddata/utbildningstyp',
364
+ url=self.base_gui_proxy_url + 'examen/internal/student/+studentUID',
3233
365
  headers=self.headers).json()
3234
366
  return r
3235
-
3236
- # returns:
3237
- # { 'Utbildningstyp': [ { 'AvserTillfalle': False,
3238
- # 'Benamning': { 'en': 'Module without scope',
3239
- # 'sv': 'Modul utan omfattning'},
3240
- # 'Beskrivning': {},
3241
- # 'Giltighetsperiod': {'link': []},
3242
- # 'Grundtyp': 'MODUL',
3243
- # 'ID': '3',
3244
- # 'Kod': '2007MUO',
3245
- # 'LarosateID': -1,
3246
- # 'Regelverk': { 'Regelvarden': [ { 'Regelnamn': 'commons.domain.regel.ingar.i.grupp.overfors.till.nya',
3247
- # 'Uid': 'd31a4080-e80a-11e8-b1f1-65de97d74aa5',
3248
- # 'Varde': 'true',
3249
- # 'link': [ ]},
3250
- # { 'Regelnamn': 'commons.domain.regel.informationsbehorighet.forskarutbildning',
3251
- # 'Uid': 'd31a4084-e80a-11e8-b1f1-65de97d74aa5',
3252
- # 'Varde': 'true',
3253
- # 'link': [ ]},
3254
- # { 'Regelnamn': 'commons.domain.regel.sjalvstandig',
3255
- # 'Uid': 'd31a4086-e80a-11e8-b1f1-65de97d74aa5',
3256
- # 'Varde': 'false',
3257
- # 'link': [ ]},
3258
- # { 'Regelnamn': 'commons.domain.regel.informationsbehorighet.grundavancerad',
3259
- # 'Uid': 'd31a4085-e80a-11e8-b1f1-65de97d74aa5',
3260
- # 'Varde': 'true',
3261
- # 'link': [ ]},
3262
- # { 'Regelnamn': 'commons.domain.regel.har.omfattning',
3263
- # 'Uid': 'd31a4082-e80a-11e8-b1f1-65de97d74aa5',
3264
- # 'Varde': 'false',
3265
- # 'link': [ ]},
3266
- # { 'Regelnamn': 'commons.domain.regel.grupp.for.utsokning',
3267
- # 'Uid': 'd31a196f-e80a-11e8-b1f1-65de97d74aa5',
3268
- # 'Varde': 'grupp.for.utsokning.forskarniva',
3269
- # 'link': [ ]},
3270
- # { 'Regelnamn': 'commons.domain.regel.grupp.for.utsokning',
3271
- # 'Uid': 'd31a4081-e80a-11e8-b1f1-65de97d74aa5',
3272
- # 'Varde': 'grupp.for.utsokning.grundavanceradniva',
3273
- # 'link': [ ]},
3274
- # { 'Regelnamn': 'commons.domain.regel.versionshanteras',
3275
- # 'Uid': 'd31a4083-e80a-11e8-b1f1-65de97d74aa5',
3276
- # 'Varde': 'false',
3277
- # 'link': [ ]}],
3278
- # 'Uid': '0441f5ba-1b3f-11e6-aff0-464044604cb6',
3279
- # 'link': []},
3280
- # 'Sorteringsordning': 50,
3281
- # 'StudieordningID': 1,
3282
- # 'TillfalleInomUtbildningstyper': [],
3283
- # 'UtbildningstyperInomUtbildningstyp': [],
3284
- # 'link': []},
3285
- # { 'AvserTillfalle': False,
3286
- # 'Benamning': {'en': 'Module', 'sv': 'Modul'},
3287
- # 'Beskrivning': {},
3288
- # 'Giltighetsperiod': {'link': []},
3289
- # 'Grundtyp': 'MODUL',
3290
- # 'ID': '4',
3291
- # 'Kod': '2007MOD',
3292
- # 'LarosateID': -1,
3293
- # 'Regelverk': { 'Regelvarden': [ { 'Regelnamn': 'commons.domain.regel.versionshanteras',
3294
- # 'Uid': 'b18301be-e80a-11e8-b1f1-65de97d74aa5',
3295
- # 'Varde': 'false',
3296
- # 'link': [ ]},
3297
- # { 'Regelnamn': 'commons.domain.regel.informationsbehorighet.forskarutbildning',
3298
- # 'Uid': 'b18301c1-e80a-11e8-b1f1-65de97d74aa5',
3299
- # 'Varde': 'true',
3300
- # 'link': [ ]},
3301
- # { 'Regelnamn': 'commons.domain.regel.ingar.i.grupp.overfors.till.nya',
3302
- # 'Uid': 'b18301bb-e80a-11e8-b1f1-65de97d74aa5',
3303
- # 'Varde': 'true',
3304
- # 'link': [ ]},
3305
- # { 'Regelnamn': 'commons.domain.regel.sjalvstandig',
3306
- # 'Uid': 'b18301bf-e80a-11e8-b1f1-65de97d74aa5',
3307
- # 'Varde': 'false',
3308
- # 'link': [ ]},
3309
- # { 'Regelnamn': 'commons.domain.regel.grupp.for.utsokning',
3310
- # 'Uid': 'b18301bd-e80a-11e8-b1f1-65de97d74aa5',
3311
- # 'Varde': 'grupp.for.utsokning.grundavanceradniva',
3312
- # 'link': [ ]},
3313
- # { 'Regelnamn': 'commons.domain.regel.informationsbehorighet.grundavancerad',
3314
- # 'Uid': 'b18301bc-e80a-11e8-b1f1-65de97d74aa5',
3315
- # 'Varde': 'true',
3316
- # 'link': [ ]},
3317
- # { 'Regelnamn': 'commons.domain.regel.grupp.for.utsokning',
3318
- # 'Uid': 'b18301c0-e80a-11e8-b1f1-65de97d74aa5',
3319
- # 'Varde': 'grupp.for.utsokning.forskarniva',
3320
- # 'link': [ ]}],
3321
- # 'Uid': '0461b2c4-1b3f-11e6-aff0-464044604cb6',
3322
- # 'link': []},
3323
- # 'Sorteringsordning': 50,
3324
- # 'StudieordningID': 1,
3325
- # 'TillfalleInomUtbildningstyper': [],
3326
- # 'UtbildningstyperInomUtbildningstyp': [],
3327
- # 'link': []},
3328
- # ...
3329
- # ],
3330
- # 'link': []}
3331
367
  @
3332
368
 
3333
369
 
3334
- \section{[[aktivitetstillfallestyp_JSON]]}
370
+ \section{[[student_participation_JSON]]}
3335
371
 
372
+ This doesn't seem to work anymore.
3336
373
  <<LadokSession data methods>>=
3337
374
  # added by GQMJr
3338
- #####################################################################
3339
- #
3340
- # aktivitetstillfallestyp_JSON
3341
- #
3342
- # RETURNERAR JSON of activities
3343
- def aktivitetstillfallestyp_JSON(self):
375
+ def student_participation_JSON (self, studentUID):
376
+ """
377
+ Returns the student's participation in courses.
378
+ """
379
+ headers = self.headers.copy()
380
+ headers['Content-Type'] = 'application/vnd.ladok-studiedeltagande'
381
+ headers['Accept'] += ', application/vnd.ladok-studiedeltagande'
3344
382
  r = self.session.get(
3345
383
  url=self.base_gui_proxy_url +
3346
- '/kataloginformation/grunddata/aktivitetstillfallestyp',
3347
- headers=self.headers).json()
3348
- return r
3349
-
3350
- # returns:
3351
- # { 'Aktivitetstillfallestyp': [ { 'Benamning': { 'en': 'Partial Exam',
3352
- # 'sv': 'Kontrollskrivning'},
3353
- # 'Beskrivning': {},
3354
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20', 'link': []},
3355
- # 'ID': '135201',
3356
- # 'Kod': 'KS',
3357
- # 'LarosateID': 29, 'link': []},
3358
- # { 'Benamning': { 'en': 'Re-examination',
3359
- # 'sv': 'Omtentamen'},
3360
- # 'Beskrivning': {},
3361
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20', 'link': []},
3362
- # 'ID': '135200',
3363
- # 'Kod': 'OMTENTA',
3364
- # 'LarosateID': 29, 'link': []},
3365
- # { 'Benamning': { 'en': 'Examination',
3366
- # 'sv': 'Tentamen'},
3367
- # 'Beskrivning': {},
3368
- # 'Giltighetsperiod': { 'Startdatum': '2018-06-20', 'link': []},
3369
- # 'ID': '135199',
3370
- # 'Kod': 'TENTAMEN',
3371
- # 'LarosateID': 29, 'link': []},
3372
- # { 'Benamning': { 'en': 'Unspecified '
3373
- # 'activity',
3374
- # 'sv': 'Övrigt '
3375
- # 'aktivitetstillfälle'},
3376
- # 'Beskrivning': {},
3377
- # 'Giltighetsperiod': {'link': []},
3378
- # 'ID': '1',
3379
- # 'Kod': 'ÖV',
3380
- # 'LarosateID': -1, 'link': []}],
3381
- # 'link': []}
3382
- @
3383
-
3384
-
3385
- \section{[[catalog_service_index__JSON]]}
3386
-
3387
- <<LadokSession data methods>>=
3388
- # added by GQMJr
3389
- #####################################################################
3390
- #
3391
- # catalog_service_index__JSON
3392
- #
3393
- # RETURNERAR JSON of admission round
3394
- def catalog_service_index__JSON(self):
3395
- r = self.session.get(
3396
- url=self.base_gui_proxy_url + '/kataloginformation/service/index',
3397
- headers=self.headers).json()
3398
- return r
3399
-
3400
- # returns:
3401
- # { 'ServiceName': 'Ladok3 REST-tjänst för kataloginformation',
3402
- # 'link': [ { 'mediaType': 'application/vnd.ladok+xml,application/vnd.ladok-kataloginformation+xml,application/vnd.ladok-kataloginformation+json',
3403
- # 'method': 'GET',
3404
- # 'rel': 'http://relations.ladok.se/kataloginformation/utbildningstyp',
3405
- # 'uri': 'https://api.ladok.se:443/kataloginformation/grunddata/utbildningstyp'},
3406
- # { 'mediaType': 'application/vnd.ladok+xml,application/vnd.ladok-kataloginformation+xml,application/vnd.ladok-kataloginformation+json',
3407
- # 'method': 'GET',
3408
- # 'rel': 'http://relations.ladok.se/kataloginformation/betygsskala',
3409
- # 'uri': 'https://api.ladok.se:443/kataloginformation/grunddata/betygsskala'},
3410
- # ...
3411
- # { 'mediaType': 'application/vnd.ladok+xml,application/vnd.ladok-kataloginformation+xml,application/vnd.ladok-kataloginformation+json',
3412
- # 'method': 'GET',
3413
- # 'rel': 'http://relations.ladok.se/kataloginformation/anvandarbehorighetlista',
3414
- # 'uri': 'https://api.ladok.se:443/kataloginformation/behorigheter'}]}
384
+ '/studiedeltagande/internal/tillfallesdeltagande' +
385
+ '/kurstillfallesdeltagande/' + studentUID,
386
+ headers=self.headers)
387
+ return r.json()
3415
388
  @
3416
389
 
390
+ \section{[[hamtaStudieResultatForStudent_JSON]]}
3417
391
 
3418
- \section{[[omradesbehorighet_JSON]]}
3419
-
392
+ This doesn't seem to work.
3420
393
  <<LadokSession data methods>>=
3421
394
  # added by GQMJr
3422
- #####################################################################
3423
- #
3424
- # omradesbehorighet_JSON
3425
- #
3426
- # RETURNERAR JSON of "omradesbehorighet"
3427
- # for information see https://antagning.se/globalassets/omradesbehorigheter-hogskolan.pdf
3428
- def omradesbehorighet_JSON(self):
3429
- r = self.session.get(
3430
- url=self.base_gui_proxy_url +
3431
- '/kataloginformation/grunddata/omradesbehorighet',
3432
- headers=self.headers).json()
395
+ def hamtaStudieResultatForStudent_JSON (self, studentUID):
396
+ """
397
+ Returns the study results for a student.
398
+ """
399
+ r = self.session.get(url = self.base_gui_proxy_url +
400
+ '/resultat/internal/studieresultat/resultat/student/'+studentUID,
401
+ headers = self.headers).json()
3433
402
  return r
3434
403
  @
3435
404
 
3436
-
3437
- \section{[[hamtaStudieResultatForStudent_JSON]]}
3438
-
3439
- <<LadokSession data methods>>=
3440
- # added by GQMJr
3441
- #####################################################################
3442
- #
3443
- # hamtaStudieResultatForStudent_JSON
3444
- #
3445
- # studentUID -- student's UID
3446
- # RETURNERAR JSON of results
3447
-
3448
- # NOTE: These are a work in progress and not ready yet
3449
- # def hamtaStudieResultatForStudent_JSON (self, studentUID):
3450
- # r = self.session.get(url = self.base_gui_proxy_url + '/resultat/studieresultat/resultat/student/'+studentUID, headers = self.headers).json()
3451
- # return r
3452
-
3453
- # def student_participation_JSON (self, studentUID):
3454
- # headers = self.headers.copy()
3455
- # headers['Content-Type'] = 'application/vnd.ladok-studiedeltagande'
3456
- # headers['Accept'] = headers['Accept']+', application/vnd.ladok-studiedeltagande'
3457
- # r = self.session.get(url = self.base_gui_proxy_url + '/studiedeltagande/tillfallesdeltagande/kurstillfallesdeltagande/'+studentUID, headers = self.headers)
3458
- # return {r.status_code, r.text}
405
+ Let's add a test.
406
+ This function should return a dictionary.
407
+ <<test functions>>=
408
+ def test_hamtaStudieResultatForStudent_JSON():
409
+ r = ladok.hamtaStudieResultatForStudent_JSON(student_uid)
410
+ assert type(r) == dict
3459
411
  @
3460
412
 
3461
-
3462
- \section{[[examen_student_uid_JSON]]}
3463
-
3464
- <<LadokSession data methods>>=
3465
- # added by GQMJr
3466
- #####################################################################
3467
- #
3468
- # examen_student_uid_JSON
3469
- #
3470
- # studentUID -- student's UID
3471
- # RETURNERAR JSON of admission round
3472
- def examen_student_uid_JSON(self):
3473
- r = self.session.get(
3474
- url=self.base_gui_proxy_url + 'examen/student/+studentUID',
3475
- headers=self.headers).json()
3476
- return r
3477
- @
413
+ The output looks like this:
414
+ \begin{pycode}[apitest]
415
+ print(r"\begin{minted}{JSON}")
416
+ print(json.dumps(ladok3.clean_data(
417
+ ladok.hamtaStudieResultatForStudent_JSON(student_uid)),
418
+ indent=2))
419
+ print(r"\end{minted}")
420
+ \end{pycode}
3478
421
 
3479
422
 
3480
423
  \section{Helper methods}