background image

Κεφάλαιο 3 - Ανάπτυξη και Υλοποίηση της Εφαρμογής 
 

 

 

50 

 

1. 

<?php

 

2. 

class

 User 

{

 

3. 

  // User class variables

 

4. 

  

$username

,

$id

,

$logged_in

,

$type

;

 

 

5. 

  // Class constractor function

 

6. 

  //  initialise the user variables through the session

 

7. 

  function

 

__construct

(

$vhdl_user

){

 

8. 

    $this

->

username 

=

 

$vhdl_user

[

'username'

];

 

9. 

    $this

->

id 

=

 

$vhdl_user

[

'id'

];

 

10. 

   $this

->

logged_in 

=

 

$vhdl_user

[

'loged_in'

];

 

11. 

   $this

->

type 

=

 

$vhdl_user

[

'type'

];

 

12. 

 }

 

 

Κώδικας 14: User.php - Ορισμός μεταβλητών και η μέθοδος κατασκευής της κλάσης User 

Η κλάση “User” συγκρατεί πληροφορίες για τον χρήστη με παρόμοιο τρόπο που βρίσκονται 
στην  συνεδρία  “$_SESSION[‘vhdl_user’]”.  Έτσι,  κατά  την  δημιουργία  ενός  αντικειμένου 
δέχεται  ως  είσοδο  τον  πίνακα  αυτής  της  συνεδρίας  και  μεταφέρει  τα  στοιχεία  του  σε 
αντίστοιχες μεταβλητές της κλάσης (Κώδικας 14). Χρησιμοποιούμε την μεταφορά αυτής της 
πληροφορίας καθώς είναι πιθανό μέσα σε ένα σενάριο εκτέλεσης να χρειαστεί η επέμβαση στις 
πληροφορίες ενός χρήστη, χωρίς όμως την ανάγκη για συγκράτηση των αλλαγών σε μόνιμη 
βάση. Εκτός από την συγκράτηση των στοιχείων κάθε χρήστη, η κλάση αυτή μας προσφέρει 
και κάποιες μεθόδους για την εξαγωγή πληροφορίας από αυτά τα στοιχεία. 

1. 

// Return true if the the user is the owner of the project, else return 

false

 

2. 

function

 validate_ownership

(

$editors

){

 

3. 

  if

(

$this

->

type

==

'1'

){

 

4. 

    $valid

 

=

 

true

;

 

 

5. 

  }

else

{

 

6. 

    $valid

 

=

 

false

;

 

 

7. 

    foreach

(

$editors

 

as

 

$editor

){

 

8. 

      if

(

 

$editor

[

'username'

]

 

==

 

$this

->

username 

&&

 

$editor

[

'user_type'

]

 

==

 

1

){

 

9. 

        $valid

 

=

 

true

;

 

10. 

     }

 

11. 

   }

 

12. 

 }

 

13. 

 return

 

$valid

;

 

14. 

}

 

 

Κώδικας 15: User.php - Η μέθοδος επαλήθευσης ιδιοκτησίας ενός έργου από τον χρήστη 

Η πρώτη από αυτές τις μέθοδος αποσκοπεί στην επαλήθευση ιδιοκτησίας ενός έργου από τον 
χρήστη. Η μέθοδος αυτή έχει ως είσοδο έναν πίνακα με ονόματα συγγραφέων του έργου και 
του τύπου δικαιωμάτων σε αυτό το έργο για τον κάθε συγγραφέα (Κώδικας 15, γραμμή 2). Εάν 
ο χρήστης είναι τύπου διαχειριστή, τότε θεωρείται ιδιοκτήτης κάθε έργου και επιστρέφουμε 
αληθές (Κώδικας 15, γραμμές 3-4). Σε διαφορετική περίπτωση, βρίσκουμε την καταχώριση 
στον  πίνακα  που  δόθηκε  για  τον  χρήστη  που  εξετάζουμε  και  επιβεβαιώνουμε  εάν  έχει 
δικαιώματα ιδιοκτήτη στο συγκεκριμένο έργο (Κώδικας 15, γραμμές 7-11).