Changeset 11973
- Timestamp:
- 09/03/07 15:53:58 (1 year ago)
- Files:
-
- branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/config/config.inc (modified) (1 diff)
- branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/config/schemadb_default.inc (modified) (3 diffs)
- branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/exec/test.php (modified) (1 diff)
- branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/gforge/user.php (modified) (4 diffs)
- branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/main.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/config/config.inc
r11755 r11973 1 1 /* The schema database to use */ 2 2 'schemadb' => 'file:/org/maemo/gforgeprofileupdater/config/schemadb_default.inc', 3 'schema' => ' default',3 'schema' => 'gforgeuser', 4 4 5 5 /* GForge SOAP service crendentials */ branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/config/schemadb_default.inc
r11755 r11973 1 ' default' => array1 'gforgeuser' => array 2 2 ( 3 'name' => 'default', 4 'description' => 'example article', 3 'description' => 'gForge user object', 5 4 'fields' => array 6 5 ( … … 8 7 ( 9 8 'description' => 'firstname', 10 ' datatype'=> 'text',9 'type' => 'text', 11 10 'location' => 'firstname', 12 'required' => true, 11 'widget' => 'text', 12 'required' => true, 13 13 ), 14 14 'lastname' => array 15 15 ( 16 16 'description' => 'lastname', 17 ' datatype'=> 'text',17 'type' => 'text', 18 18 'location' => 'lastname', 19 'required' => true, 19 'widget' => 'text', 20 'required' => true, 20 21 ), 21 22 'email' => array 22 23 ( 23 24 'description' => 'email', 24 ' datatype'=> 'text',25 'type' => 'text', 25 26 'location' => 'email', 26 'required' => true, 27 'widget' => 'text', 28 'required' => true, 27 29 ), 28 30 'jabber_id' => array … … 37 39 'type' => 'text', 38 40 'widget' => 'text', 39 ' validation' => 'email',41 'required' => false, 40 42 ), 41 43 ), 42 ), // default44 ), // gforgeuser 43 45 branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/exec/test.php
r11755 r11973 18 18 echo "</pre>\n"; 19 19 echo "Last soap error: " . $handler->get_soap_error() . "<br/>\n"; 20 /* 21 $ret = $handler->call_gforge('userGetGroups', array('user_id' => (int)$user->user_id)); 22 echo "\$handler->call_gforge('userGetGroups', array('user_id' => (int){$user->user_id})) returned:<pre>\n"; 23 print_r($ret); 24 echo "</pre>\n"; 25 echo "Last soap error: " . $handler->get_soap_error() . "<br/>\n"; 26 */ 27 20 28 $handler->destroy_soap(); 21 29 } branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/gforge/user.php
r11971 r11973 187 187 188 188 // Verify privileges so that only user itself and gforge admins can change the data 189 if ($logged_user->getID() == $userdata ->user_id)189 if ($logged_user->getID() == $userdata['user_id']) 190 190 { 191 191 $authorized = true; … … 207 207 if (!$authorized) 208 208 { 209 return new soap_fault ('3997','user','Only user itself or admin may update user data','Only user itself or admin may update user data'); 210 } 211 212 $user =& user_get_object($userdata->user_id); 209 return new soap_fault ('3996','user','Only user itself or admin may update user data','Only user itself or admin may update user data'); 210 } 211 212 /* 213 ob_start(); 214 print_r($userdata); 215 $userdata_r = ob_get_contents(); 216 ob_end_clean(); 217 return new soap_fault ('3995','user',"userdata:\n{$userdata_r}\n","userdata:\n{$userdata_r}\n"); 218 */ 219 220 $user =& user_get_object($userdata['user_id']); 221 if ( !$user 222 || $user->getID() != $userdata['user_id']) 223 { 224 return new soap_fault ('3997','user',"Could not find user #{$userdata['user_id']}","Could not find user #{$userdata['user_id']}"); 225 } 213 226 if ( !$user->update 214 227 ( 215 $userdata ->firstname,216 $userdata ->lastname,217 $userdata ->language_id,218 $userdata ->timezone,228 $userdata['firstname'], 229 $userdata['lastname'], 230 $userdata['language_id'], 231 $userdata['timezone'], 219 232 $user->getMailingsPrefs('site'), 220 233 $user->getMailingsPrefs('va'), 221 234 $user->usesRatings(), 222 $userdata ->jabber_address,235 $userdata['jabber_address'], 223 236 $user->getJabberOnly(), 224 237 $user->getThemeID(), 225 $userdata ->address,226 $userdata ->address2,227 $userdata ->phone,228 $userdata ->fax,229 $userdata ->title,238 $userdata['address'], 239 $userdata['address2'], 240 $userdata['phone'], 241 $userdata['fax'], 242 $userdata['title'], 230 243 $userdata->country_code 231 244 /* These two last values are optional for the update method … … 236 249 ) 237 250 { 238 return new soap_fault ('3998','user','User update failed: ' . $user->get Message(),'User update failed: ' . $user->getMessage());251 return new soap_fault ('3998','user','User update failed: ' . $user->getErrorMessage(),'User update failed: ' . $user->getErrorMessage()); 239 252 } 240 253 if ($user->getEmail() != $userdata->email) … … 243 256 if (!$user->setEmail($userdata->email)) 244 257 { 245 return new soap_fault ('3999','user','User email update failed: ' . $user->get Message(),'User email update failed: ' . $user->getMessage());258 return new soap_fault ('3999','user','User email update failed: ' . $user->getErrorMessage(),'User email update failed: ' . $user->getErrorMessage()); 246 259 } 247 260 } branches/MidCOM_2_8/org.maemo.gforgeprofileupdater/main.php
r11763 r11973 160 160 function _load_datamanager($schemadb) 161 161 { 162 if (empty($this->_schema))163 {164 $_MIDCOM->generate_error(MIDCOM_ERRCRIT, 'Export schema ($this->_schema) must be defined, hint: do it in "_load_schemadb"');165 // This will exit166 }167 162 $this->_datamanager = new midcom_helper_datamanager2_datamanager($schemadb); 168 163 169 if ( ! $this->_datamanager 170 || ! $this->_datamanager->set_schema($this->_schema)) 171 { 172 $_MIDCOM->generate_error(MIDCOM_ERRCRIT, "Failed to create a DM2 instance for schemadb schema '{$this->_schema}'."); 164 if (!$this->_datamanager) 165 { 166 $_MIDCOM->generate_error(MIDCOM_ERRCRIT, "Failed to create a DM2 instance for schemadb '{$schemadb}'"); 173 167 // This will exit. 174 168 } 169 if (!$this->_datamanager->set_schema($this->_schema)) 170 { 171 $_MIDCOM->generate_error(MIDCOM_ERRCRIT, "Failed set_schema('{$this->_schema}')"); 172 // This will exit. 173 } 175 174 } 176 175 … … 178 177 { 179 178 $this->_schema = $this->_config->get('schema'); 180 return $this->_config->get('schemadb'); 179 $schemadb = midcom_helper_datamanager2_schema::load_database($this->_config->get('schemadb')); 180 return $schemadb; 181 181 } 182 182 183 183 function _object_dm(&$object) 184 184 { 185 $this->_load_datamanager($this->_load_schemadb()); 185 $schemadb = $this->_load_schemadb(); 186 $this->_load_datamanager($schemadb); 186 187 return $this->_datamanager->set_storage($object); 187 188 }
