Σε όλες τις παρακάτω methods, η παράμετρος institution είναι προαιρετική: εάν το API key σας είναι συνδεδεμένο με ένα συγκεκριμένο ίδρυμα μόνο, η αναζήτηση θα γίνεται πάντοτε σε αυτό το ίδρυμα και η παράμετρος θα αγνοείται. Αν όμως η εφαρμογή σας είναι διαϊδρυματική, τότε θα πρέπει να ορίσετε σε ποιο ίδρυμα να πραγματοποιηθεί η αναζήτηση.
Ποια method να επιλέξω;
Τα παρακάτω tips είναι ενδεικτικά και δεν είναι απαραίτητη η εφαρμογή τους.
Χρησιμοποιήστε τις simpleusersearch, simplenamesearch, lookupmail για εφαρμογές όπως ένα autocomplete form widget σε κάποιο user interface, και γενικά για να έχετε έναν φιλικό προς τον χρήστη τρόπο να αναζητήσει την πληροφορία που επιθυμεί.
Χρησιμοποιήστε τις lookupuid, lookupmail για validation του input.
Καλέστε μία φορά την getdepartments για να πάρετε ένα "lookup table" για τις οργανωτικές μονάδες ενός ιδρύματος. Κάντε cache το αποτέλεσμα για μεγάλο χρονικό διάστημα.
Methods:
simpleusersearch: Αναζητεί στο username και τα e-mail των χρηστών, και επιστρέφει τις εγγραφές
που ταιριάζουν. Ψάχνει και στις εναλλακτικές e-mail διευθύνσεις των χρηστών, δηλ. θα βρει και την "nipapado@math.uoa.gr" και την "n.papadopoulos@math.uoa.gr".
Παράμετροςquery: το string προς αναζήτηση
Παράμετροςaffiliation: εάν επιθυμούμε να ψάχνουμε μόνο σε συγκεκριμένες κατηγορίες χρηστών (ένα από: faculty, staff, employee, student, affiliate, alum, member).
Παράμετροςexact: εάν είναι 1, ψάχνει για το ζητούμενο string ακριβώς. Αν είναι 0, αρκεί να περιέχεται το string κάπου.
Παράμετροςinstitution: Ίδρυμα (π.χ. uoa, teipat).
Αποτελέσματα: Ένα array με, μέγιστο, 10 εγγραφές. Η κάθε μία περιέχει ένα
JSON object / associative array με keys:
uid
name_en (αν υπάρχει)
name_el (αν υπάρχει),
mail (το πρωτεύον e-mail του χρήστη, αν υπάρχει)
affiliation (η πρωτεύουσα ιδιότητα του χρήστη, ένα από: faculty, staff, employee, student, affiliate, alum, member)
title_en (τίτλος / ιδιότητα στα Αγγλικά)
title_el (τίτλος / ιδιότητα στα Ελληνικά, π.χ. Επίκουρος Καθηγητής)
orgunitdn (το dn της πρωτεύουσας μονάδας του χρήστη)
simplenamesearch: Αναζητεί στο ονοματεπώνυμο των χρηστών, και επιστρέφει τις εγγραφές
που ταιριάζουν.
Παράμετροςquery: το string προς αναζήτηση, ελληνικά ή αγγλικά.
Παράμετροςaffiliation: εάν επιθυμούμε να ψάχνουμε μόνο σε συγκεκριμένες κατηγορίες χρηστών (ένα από: faculty, staff, employee, student, affiliate, alum, member).
Παράμετροςinstitution: Ίδρυμα (π.χ. uoa, teipat).
Αποτελέσματα: Ένα array όπως παραπάνω (βλ. simpleusersearch)
lookupuid: Ελέγχει αν το username που ερωτείται είναι έγκυρο.
Παράμετροςquery: το username προς αναζήτηση
Παράμετροςinstitution: Ίδρυμα (π.χ. uoa, teipat).
Αποτέλεσμα: Ένα array με τα στοιχεία του χρήστη αν είναι έγκυρο (βλ. παραπάνω στα αποτελέσματα της simpleusersearch), ή 0 αν δεν υπάρχει.
lookupmail: Ελέγχει αν το e-mail που ερωτείται είναι έγκυρο e-mail χρήστη. Η συγκεκριμένη μέθοδος ψάχνει και στις
εναλλακτικές e-mail διευθύνσεις των χρηστών, δηλ. θα βρει και την "nipapado@math.uoa.gr" και την "n.papadopoulos@math.uoa.gr".
Παράμετροςquery: το e-mail προς αναζήτηση
Παράμετροςinstitution: Ίδρυμα (π.χ. uoa, teipat).
Αποτέλεσμα: Ένα JSON object / associative array με τα στοιχεία του χρήστη αν είναι έγκυρο (βλ. παραπάνω στα αποτελέσματα της simpleusersearch), ή 0 αν δεν υπάρχει.
getdepartments: Επιστρέφει όλες τις μονάδες του Ιδρύματος. Συστήνουμε να καλείτε αυτή τη μέθοδο μία φορά
και να κάνετε cache για μεγάλο χρονικό διάστημα το αποτέλεσμα.
Παράμετροςinstitution: Ίδρυμα (π.χ. uoa, teipat).
Αποτέλεσμα: Ένα JSON object / associative array, με key το dn της μονάδας, και value ένα array με keys: name_el, name_en.