ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
ilUserProfilePictureMigration Class Reference
+ Inheritance diagram for ilUserProfilePictureMigration:
+ Collaboration diagram for ilUserProfilePictureMigration:

Public Member Functions

 getLabel ()
 
 getDefaultAmountOfStepsPerRun ()
 
 getPreconditions (Environment $environment)
 
 prepare (Environment $environment)
 
 step (Environment $environment)
 
 getRemainingAmountOfSteps ()
 

Protected Member Functions

 buildBasePath ()
 

Protected Attributes

ilResourceStorageMigrationHelper $helper
 

Detailed Description

Member Function Documentation

◆ buildBasePath()

ilUserProfilePictureMigration::buildBasePath ( )
protected

Definition at line 98 of file class.ilUserProfilePictureMigration.php.

References CLIENT_WEB_DIR.

98  : string
99  {
100  return CLIENT_WEB_DIR . '/usr_images/';
101  }
const CLIENT_WEB_DIR
Definition: constants.php:47

◆ getDefaultAmountOfStepsPerRun()

ilUserProfilePictureMigration::getDefaultAmountOfStepsPerRun ( )

Definition at line 37 of file class.ilUserProfilePictureMigration.php.

37  : int
38  {
39  return 10000;
40  }

◆ getLabel()

ilUserProfilePictureMigration::getLabel ( )

Definition at line 32 of file class.ilUserProfilePictureMigration.php.

32  : string
33  {
34  return "Migration of Profile Pictures to the Resource Storage Service.";
35  }

◆ getPreconditions()

ilUserProfilePictureMigration::getPreconditions ( Environment  $environment)

Definition at line 42 of file class.ilUserProfilePictureMigration.php.

42  : array
43  {
44  return \ilResourceStorageMigrationHelper::getPreconditions();
45  }

◆ getRemainingAmountOfSteps()

ilUserProfilePictureMigration::getRemainingAmountOfSteps ( )

Definition at line 85 of file class.ilUserProfilePictureMigration.php.

References Vendor\Package\$d, and $r.

85  : int
86  {
87  $r = $this->helper->getDatabase()->query(
88  "SELECT
89  count(usr_data.usr_id) AS amount
90  FROM usr_data
91  WHERE usr_data.rid IS NULL OR usr_data.rid = '';"
92  );
93  $d = $this->helper->getDatabase()->fetchObject($r);
94 
95  return (int)$d->amount;
96  }
$r

◆ prepare()

ilUserProfilePictureMigration::prepare ( Environment  $environment)

Definition at line 47 of file class.ilUserProfilePictureMigration.php.

47  : void
48  {
49  $this->helper = new \ilResourceStorageMigrationHelper(
51  $environment
52  );
53  }

◆ step()

ilUserProfilePictureMigration::step ( Environment  $environment)

Definition at line 55 of file class.ilUserProfilePictureMigration.php.

References Vendor\Package\$d, $r, and ILIAS\Repository\int().

55  : void
56  {
57  $r = $this->helper->getDatabase()->query(
58  "SELECT
59  usr_id
60  FROM usr_data
61  WHERE usr_data.rid IS NULL OR usr_data.rid = ''
62  LIMIT 1;"
63  );
64 
65  $d = $this->helper->getDatabase()->fetchObject($r);
66  $user_id = (int)$d->usr_id;
67 
68  $base_path = $this->buildBasePath();
69  $pattern = '/.*\/(usr|upload)\_' . $user_id . '\..*/m';
70 
71  $rid = $this->helper->moveFirstFileOfPatternToStorage(
72  $base_path,
73  $pattern,
74  $user_id
75  );
76 
77  $save_rid = $rid === null ? '-' : $rid->serialize();
78  $this->helper->getDatabase()->update(
79  'usr_data',
80  ['rid' => ['text', $save_rid]],
81  ['usr_id' => ['integer', $user_id],]
82  );
83  }
$r
+ Here is the call graph for this function:

Field Documentation

◆ $helper

ilResourceStorageMigrationHelper ilUserProfilePictureMigration::$helper
protected

Definition at line 30 of file class.ilUserProfilePictureMigration.php.


The documentation for this class was generated from the following file: