PageRenderTime 53ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 0ms

/moodle1917/webserviceMoodle1.9.17/moduloUsuarios.php

https://github.com/gustavoramirezrugerio/moodle1.9.17
PHP | 638 lines | 313 code | 82 blank | 243 comment | 31 complexity | d58774215724a3941b4dbdf4b03aa451 MD5 | raw file
Possible License(s): LGPL-3.0, LGPL-2.1, BSD-3-Clause, LGPL-2.0, GPL-2.0
  1. <?php
  2. function modulousuariosObtenerUsuariosGrupo($grupo){
  3. ob_start(); //Para evitar que imprima los echos
  4. if($grupo['id']==-1){
  5. $curso['id'] = $grupo['courseid'];
  6. $usuarios = modulousuariosObtenerUsuariosRegistrados($curso);
  7. if(!empty($usuarios)){
  8. $grupo['usuarios'] = $usuarios['usuarios'];
  9. }
  10. return obj2array($grupo);
  11. }
  12. if (!$ogroup = get_record('groups', 'id', $grupo['id'])) {
  13. throw new Exception('Group ID was incorrect');
  14. }
  15. $context = get_context_instance(CONTEXT_COURSE, $ogroup->courseid);
  16. $roles = get_roles_on_exact_context($context);
  17. $usuarios = get_group_users($ogroup->id);
  18. foreach($usuarios as $ousuario){
  19. $tmpRols = get_user_roles($context, $ousuario->id);
  20. foreach($tmpRols as $rol){
  21. $ousuario->rol = $roles[$rol->roleid];
  22. break;
  23. }
  24. }
  25. foreach($usuarios as $tmpuser){
  26. $ogroup->usuarios[] = $tmpuser;
  27. }
  28. ob_end_clean();//Para que no imprima los echos
  29. return obj2array($ogroup);
  30. }
  31. /*
  32. $valores = array('id' => '33');
  33. $modulousuariosObtenerUsuariosGrupo = modulousuariosObtenerUsuariosGrupo($valores);
  34. echo "<pre>";
  35. print(" modulo usuarios Obtener Usuarios Gruposssssssss");
  36. print_r($modulousuariosObtenerUsuariosGrupo);
  37. echo "</pre>";
  38. */
  39. function modulousuariosObtenerUsuariosRegistrados($curso){
  40. ob_start(); //Para evitar que imprima los echos
  41. global $CFG;
  42. //echo CONTEXT_COURSE." .. ".$curso['id'];
  43. $context = get_context_instance(CONTEXT_COURSE, $curso['id']);
  44. get_users_from_role_on_context($roles[4],$context);
  45. //print_r($context); exit;
  46. $profesores = get_users_from_role_on_context($roles[4],$context);
  47. $alumnos = get_users_from_role_on_context($roles[5],$context);
  48. //$usuarios['name'] = print_r($profesores,true);
  49. foreach($profesores as $cusuario){
  50. $ousuario = get_record("user","id",$cusuario->id);
  51. $ousuario->rol = $roles[$cusuario->roleid];
  52. $usuarios['usuarios'][] = $ousuario;
  53. }
  54. foreach($alumnos as $cusuario){
  55. $ousuario = get_record("user","id",$cusuario->id);
  56. $ousuario->rol = $roles[$cusuario->roleid];
  57. $usuarios['usuarios'][] = $ousuario;
  58. }
  59. ob_end_clean();//Para que no imprima los echos
  60. return $usuarios;
  61. }
  62. /*
  63. $idcurso = array('id' => 129);
  64. $modulousuariosObtenerUsuariosRegistrados = modulousuariosObtenerUsuariosRegistrados($idcurso);
  65. echo "<pre>";
  66. print(" modulousuariosObtenerUsuariosRegistrados \n");
  67. print_r($modulousuariosObtenerUsuariosRegistrados);
  68. echo "</pre>";
  69. */
  70. function modulousuariosObtenerPerfilUsuario($usuario){
  71. ob_start(); //Para evitar que imprima los echos
  72. return get_record("user", "id", $usuario['id']);
  73. ob_end_clean();//Para que no imprima los echos
  74. }
  75. function modulousuariosEditarUsuario($data){
  76. ob_start(); //Para evitar que imprima los echos
  77. $edituser = new stdClass();
  78. $edituser->id = utf8_encode($data['id']);
  79. $edituser->username = utf8_encode($data['username']);
  80. $edituser->password = utf8_encode($data['password']);
  81. $edituser->email = utf8_encode($data['email']);
  82. $edituser->firstname = utf8_encode($data['firstname']);
  83. $edituser->lastname = utf8_encode($data['lastname']);
  84. $edituser->country = utf8_encode($data['country']); // PAIS
  85. $edituser->description = utf8_encode($data['description']);
  86. $edituser->institution = utf8_encode($data['institution']);
  87. $edituser->city = utf8_encode($data['city']); // ESTADO
  88. $edituser->colonia = utf8_encode($data['colonia']);
  89. $edituser->municipio = utf8_encode($data['municipio']);
  90. $edituser->fecha_nacimiento = utf8_encode($data['fecha_nacimiento']);
  91. $edituser->phone1 = utf8_encode($data['phone1']);
  92. $edituser->address= utf8_encode($data['address']);
  93. $edituser->rol = utf8_encode($data['rol']);
  94. if (!$edituser->id = update_record('user', $edituser)) {
  95. throw new Exception("Could not edit the course'$edituser->fullname' ");
  96. } else {
  97. $edituser->context = get_context_instance(CONTEXT_COURSE, $edituser->id);
  98. mark_context_dirty($edituser->context->path);
  99. $data['id']=$edituser->id;
  100. fix_course_sortorder();
  101. }
  102. return $data;
  103. ob_end_clean();//Para que no imprima los echos
  104. }
  105. /*
  106. $editarusuario = array('id' =>130, 'username'=>'EDITADO001' ,'email'=>'EDITADOemail001', 'firstname'=>'Editando firstname001', 'city'=>'Editando ciudad001');
  107. $modulousuariosEditarUsuario = modulousuariosEditarUsuario($editarusuario);
  108. echo "<pre>";
  109. print("Editar grupos \n");
  110. print_r($modulousuariosEditarUsuario);
  111. echo "</pre>";
  112. */
  113. function modulousuariosMatricularUsuariosCursoGrupo($usuarios, $grupos) {
  114. ob_start(); //Para evitar que imprima los echos
  115. $context = get_context_instance(CONTEXT_COURSE, $grupos['courseid']);
  116. $context= obj2array($context);
  117. //$usuarios=$usuarios['usuarios'];
  118. $i=0;
  119. foreach ($usuarios as $usuario) {
  120. $user = get_complete_user_data('username', $usuario['username']);
  121. //$user = create_user_record($usuario['username'], 'manual');
  122. if (!$user) {
  123. $user = create_user_record($usuario['username'], '', 'ldap');
  124. if (!$user) {
  125. throw new Exception('Los datos de un usuario no son correctos');
  126. }
  127. }
  128. //--asigno su rol correspondiente en la plataforma
  129. $asignarRoles = role_assign($usuario['rol']['id'], $user->id , 0 , $context['id']);
  130. //--Agregar usuarios aun grupo
  131. groups_add_member($grupos['id'], $user->id);
  132. //--Editar usuario
  133. $edituser = new stdClass();
  134. $edituser->id = $user->id;
  135. $edituser->firstname = utf8_encode($usuario['firstname']);
  136. $edituser->lastname = utf8_encode($usuario['lastname']);
  137. $edituser->email = utf8_encode($usuario['email']);
  138. //--Actualizo hasta aqui el resto de infirmacion que me envia el cliente mediante el WS
  139. update_record('user', $edituser);
  140. }
  141. $ogrupo= modulousuariosObtenerUsuariosGrupo($grupos);
  142. ob_end_clean();//Para que no imprima los echos
  143. return $ogrupo;
  144. }
  145. /*
  146. $usuarioslistas = array();//Asignar el resultado de la base de datos a la variable
  147. $usuarioslistas[0]->username = "CHANO01q";
  148. $usuarioslistas[0]->email = "CHANO01q";
  149. $usuarioslistas[0]->password = md5("CHANO01");
  150. $usuarioslistas[0]->firstname = "CHANO01";
  151. $usuarioslistas[0]->lastname = "CHANO01";
  152. $usuarioslistas[0]->rol['id']=5;
  153. $usuarioslistas = array();//Asignar el resultado de la base de datos a la variable
  154. $usuarioslistas[0]->username = "CHANO02q";
  155. $usuarioslistas[0]->email = "CHANO02q";
  156. $usuarioslistas[0]->password = md5("CHANO02");
  157. $usuarioslistas[0]->firstname = "CHANO02";
  158. $usuarioslistas[0]->lastname = "CHANO02";
  159. $usuarioslistas[0]->rol['id']=5;
  160. $idcurso = array('id' => 129);
  161. $grupo = array();
  162. $grupo['id'] = 33;
  163. $grupo['courseid'] = 129;
  164. $matriculacionUsuarios = modulousuariosMatricularUsuariosCursoGrupo($usuarioslistas, $grupo);
  165. echo "<pre>";
  166. print_r($matriculacionUsuarios);
  167. echo "</pre>";
  168. */
  169. //------------------------------- Trabajar y revisar
  170. function modulousuariosMatricularUsuarios($usuarios, $grupos) {
  171. // Revisado con Julio APROBADO NO TOCAR CHINGAUS
  172. revisionParametros($usuarios);
  173. ob_start(); //Para evitar que imprima los echos
  174. $context = get_context_instance(CONTEXT_COURSE, $grupos['courseid']);
  175. $context= obj2array($context);
  176. //$usuarios=$usuarios['usuarios']; // usando con PHP
  177. foreach ($usuarios as $usuario) {
  178. $usuario= obj2array($usuario);
  179. $user = get_complete_user_data('username', $usuario['username']);
  180. if (!$user) {
  181. $user = create_user_record($usuario['username'], '', 'ldap');
  182. if (!$user) {
  183. throw new Exception('Los datos de un usuario no son correctos');
  184. }
  185. }
  186. $user= obj2array($user);
  187. $asignarRoles = role_assign($usuario['rol']['id'], $user['id'] , 0 , $context['id'], 0, 0, 0, 'webservice','');
  188. groups_add_member($grupos['id'], $user['id']);
  189. }
  190. $ogrupo= modulousuariosObtenerUsuariosGrupo($grupos);
  191. ob_end_clean();//Para que no imprima los echos
  192. return $ogrupo;
  193. }
  194. /*
  195. $usuarioslistas = array();//Asignar el resultado de la base de datos a la variable
  196. $usuarioslistas['usuarios'][0]->id = '';
  197. $usuarioslistas['usuarios'][0]->idnumber = 19;
  198. $usuarioslistas['usuarios'][0]->username = "disenador";
  199. $usuarioslistas['usuarios'][0]->rol['id']=5;
  200. $usuarioslistas['usuarios'][1]->id = '';
  201. $usuarioslistas['usuarios'][1]->idnumber = 35;
  202. $usuarioslistas['usuarios'][1]->username = "HEMG9312036P4";
  203. $usuarioslistas['usuarios'][1]->rol['id']=5;
  204. //$usuarioslistas= obj2array($usuarioslistas);
  205. $grupo = array();
  206. $grupo['id'] = 33;
  207. $grupo['courseid'] = 129;
  208. $matriculacionUsuarios = modulousuariosMatricularUsuarios($usuarioslistas, $grupo);
  209. echo "<pre>";
  210. print_r($matriculacionUsuarios);
  211. echo "</pre>";
  212. */
  213. function modulousuariosMatricularResponsables($usuarios, $idcurso) {
  214. revisionParametros($usuarios);
  215. ob_start(); //Para evitar que imprima los echos
  216. $context = get_context_instance(CONTEXT_COURSE, $idcurso);
  217. //$context= obj2array($context);
  218. //$usuarios=$usuarios['usuarios']; // usando con PHP
  219. foreach ($usuarios as $usuario) {
  220. $usuario= obj2array($usuario);
  221. //print_r($usuario); exit;
  222. $user = get_complete_user_data('username', $usuario['username']);
  223. revisionParametros($user);
  224. //print_r($user); exit;
  225. if (!$user) {
  226. $user = create_user_record($usuario['username'], '', 'ldap');
  227. if (!$user) {
  228. throw new Exception('Los datos de un usuario no son correctos');
  229. }
  230. }
  231. $user= obj2array($user);
  232. //$asignarRoles = role_assign(2, $user['id'] , 0, $context['id']);
  233. $asignarRoles = role_assign(2, $user['id'] , 0, 353);
  234. //print_r($user['id']); exit;
  235. $edituser = new stdClass();
  236. $edituser->id = $user['id'];
  237. $edituser->firstname = utf8_encode($usuario['firstname']);
  238. $edituser->lastname = utf8_encode($usuario['lastname']);
  239. $edituser->email = utf8_encode($usuario['email']);
  240. //--Actualizo hasta aqui el resto de infirmacion que me envia el cliente mediante el WS
  241. //print_r($edituser); exit;
  242. update_record('user', $edituser);
  243. }
  244. //$ogrupo= modulousuariosObtenerUsuariosGrupo($grupos);
  245. ob_end_clean();//Para que no imprima los echos
  246. return modulousuariosObtenerUsuariosRegistrados($idcurso);
  247. }
  248. /*
  249. $usuarioslistas = array();//Asignar el resultado de la base de datos a la variable
  250. $usuarioslistas[0]->username = "username0";
  251. $usuarioslistas[0]->password = "password0";
  252. $usuarioslistas[0]->email = "email0";
  253. $usuarioslistas[0]->firstname = "firstname0";
  254. $usuarioslistas[0]->lastname = "lastname0";
  255. $usuarioslistas[1]->username = "username1";
  256. $usuarioslistas[1]->password = "password1";
  257. $usuarioslistas[1]->email = "email1";
  258. $usuarioslistas[1]->firstname = "firstname1";
  259. $usuarioslistas[1]->lastname = "lastname1";
  260. $usuarioslistas= obj2array($usuarioslistas);
  261. $curso = array('id' => 129);
  262. $modulousuariosMatricularResponsables = modulousuariosMatricularResponsables($usuarioslistas, $curso);
  263. echo "<pre>";
  264. print_r($modulousuariosMatricularResponsables);
  265. echo "</pre>";
  266. */
  267. //------------------------------------- TODO TRABAJARLO solo falta regresar los usuarios del curo
  268. function modulousuariosMatricularUsuariosSingrupo($usuarios, $grupos) {
  269. revisionParametrosReiniciar("");
  270. revisionParametros(":::::::::::::::::::::::::::::::modulousuariosMatricularUsuariosSingrupo");
  271. // Revisado con Julio APROBADO NO TOCAR CHINGAUS
  272. revisionParametros($usuarios);
  273. ob_start(); //Para evitar que imprima los echos
  274. $context = get_context_instance(CONTEXT_COURSE, $grupos['courseid']);
  275. $context= obj2array($context);
  276. //$usuarios=$usuarios['usuarios']; // usando con PHP
  277. revisionParametros($usuarios);
  278. foreach ($usuarios as $usuario) {
  279. revisionParametros($usuario);
  280. $usuario= obj2array($usuario);
  281. $user = get_complete_user_data('username', $usuario['username']);
  282. if (!$user) {
  283. $user = create_user_record($usuario['username'], '', 'ldap');
  284. if (!$user) {
  285. throw new Exception('Los datos de un usuario no son correctos');
  286. }
  287. }
  288. $user= obj2array($user);
  289. $asignarRoles = role_assign($usuario['rol']['id'], $user['id'] , 0 , $context['id'], 0, 0, 0, 'webservice','');
  290. //groups_add_member($grupos['id'], $user['id']);
  291. }
  292. //$ogrupo= modulousuariosObtenerUsuariosGrupo($grupos);
  293. ob_end_clean();//Para que no imprima los echos
  294. return true;
  295. }
  296. /*
  297. $usuarioslistas = array();//Asignar el resultado de la base de datos a la variable
  298. $usuarioslistas[0]->id = '';
  299. $usuarioslistas[0]->idnumber = 19;
  300. $usuarioslistas[0]->username = "disenador";
  301. $usuarioslistas[0]->rol['id']=5;
  302. $usuarioslistas[1]->id = '';
  303. $usuarioslistas[1]->idnumber = 35;
  304. $usuarioslistas[1]->username = "HEMG9312036P4";
  305. $usuarioslistas[1]->rol['id']=5;
  306. $grupo = array();
  307. $grupo['id'] = 140;
  308. $grupo['courseid'] = 188;
  309. $matriculacionUsuarios = modulousuariosMatricularUsuariosSingrupo($usuarioslistas, $grupo);
  310. echo "<pre>";
  311. print_r($matriculacionUsuarios);
  312. echo "</pre>";
  313. */
  314. //Desmatricula al usuario de todos los cursos que tengan el rol que se le envia
  315. function modulousuariosDesmatricularUsuarios( $usuarios, $idcurso ) {
  316. ob_start(); //Para evitar que imprima los echos
  317. //revisionParametros( $usuarios ); exit;
  318. //$noUsuarios = 0;
  319. $contador = 0;
  320. foreach ( $usuarios as $usuario ) {
  321. if ( $usuarios['usuarios'][$contador++] ) {
  322. //revisionParametros("mucho usuarios"); exit;
  323. $usuarios = $usuarios['usuarios'];
  324. $context = get_context_instance(CONTEXT_COURSE, $idcurso['courseid']);
  325. foreach ( $usuarios as $usuario ) {
  326. //revisionParametros( '-----' );
  327. $user = obj2array( get_complete_user_data( 'username' , $usuario['username'] ) );
  328. if ( ($user['id'] != 0 ) && ($usuario['rol']['id'] != 0 ) ) {
  329. role_unassign( $usuario['rol']['id'] , $user['id'], 0, $context->id);
  330. revisionParametros( $user['id']." -- ".$usuario['rol']['id'] );
  331. }
  332. }
  333. }else {
  334. //Si solo es un usuario
  335. //revisionParametros("Un usuarios"); exit;
  336. foreach ( $usuarios as $usuario ) {
  337. //revisionParametros( $usuario );
  338. //revisionParametros( '******' );
  339. $user = obj2array( get_complete_user_data( 'username' , $usuario['username'] ) );
  340. if ( ($user['id'] != 0 ) && ($usuario['rol']['id'] != 0 ) ) {
  341. role_unassign( $usuario['rol']['id'] , $user['id'], 0, $context->id);
  342. revisionParametros( $user['id']." -- ".$usuario['rol']['id'] );
  343. }//if
  344. }//foreach
  345. }//else
  346. }
  347. ob_end_clean();//Para que no imprima los echos
  348. return modulousuariosObtenerUsuariosGrupo( $idcurso );
  349. }
  350. /* BIEN EN PHP Local
  351. function modulousuariosDesmatricularUsuarios($listaUsuarios, $idcurso) {
  352. revisionParametros($idcurso);
  353. ob_start(); //Para evitar que imprima los echos
  354. $usuarios= $listaUsuarios;
  355. //$usuarios=$usuarios['usuarios']; // usando con PHP
  356. $context = get_context_instance(CONTEXT_COURSE, $idcurso['id']);
  357. foreach ($usuarios as $usuario) {
  358. $usuario= obj2array($usuario);
  359. $user = get_complete_user_data('username', $usuario['username']);
  360. $res = role_unassign( $usuario['rol'] , $user->id, 0, $context->id, 0, 0, 0, 'webservice');
  361. }
  362. $ogrupo= modulousuariosObtenerUsuariosGrupo($idcurso);
  363. ob_end_clean();//Para que no imprima los echos
  364. return $ogrupo;
  365. }
  366. */
  367. /*
  368. $usuarios = array();//Asignar el resultado de la base de datos a la variable
  369. $usuarios[0] = new stdClass();
  370. $usuarios[0]->id = 3;
  371. $usuarios[0]->username = 'HEGN820311CL2';
  372. $usuarios[0]->rol = 5;
  373. $usuarios[1] = new stdClass();
  374. $usuarios[1]->id = 3;
  375. $usuarios[1]->username = 'UAAR940401P1A';
  376. $usuarios[1]->rol = 4;
  377. $listaUsuarios = obj2array($usuarios);
  378. //echo "<pre>"; print_object($listaUsuarios); exit;
  379. $idcurso = array('id' => 3, 'courseid' => 49);
  380. $desmatriculacionUsuarios = modulousuariosDesmatricularUsuarios($listaUsuarios, $idcurso);
  381. echo "<pre>";
  382. print_r($desmatriculacionUsuarios);
  383. echo "</pre>";
  384. */
  385. //------------------- correcto
  386. function modulousuariosDesmatricularUsuariosGrupo($listaUsuarios, $idgrupo) {
  387. ob_start(); //Para evitar que imprima los echos
  388. revisionParametros($listaUsuarios);
  389. $usuarios= $listaUsuarios;
  390. //$usuarios=$usuarios['usuarios'];
  391. //revisionParametros($usuarios);
  392. foreach ($usuarios as $usuario) {
  393. $usuario= obj2array($usuario);
  394. $user = get_complete_user_data('username', $usuario['username']);
  395. //revisionParametros($user);
  396. $user =obj2array($user);
  397. //revisionParametros($user);
  398. $datos = groups_remove_member($idgrupo['id'], $user['id']);
  399. //role_unassign($usuario['rol']['id'], $user['id'], 0, $context['id']);
  400. }
  401. ob_end_clean();//Para que no imprima los echos
  402. return modulousuariosObtenerUsuariosGrupo($idgrupo);
  403. //comentearoi
  404. }
  405. /*
  406. $usuarios = array();
  407. $usuarios['usuarios'][0]->username = "HEMG9312036P4";
  408. $usuarios['usuarios'][1]->username = "disenador";
  409. $idgrupo = array('id' => '163');
  410. $desmatriculacionUsuariosGrupo = modulousuariosDesmatricularUsuariosGrupo($usuarios, $idgrupo);
  411. echo "<pre>";
  412. print_r($desmatriculacionUsuariosGrupo);
  413. echo "</pre>";
  414. */
  415. function modulousuariosObtenerCalificacionesUsuario($userid){
  416. ob_start(); //Para evitar que imprima los echos
  417. return grade_get_grades($userid['id']);
  418. ob_end_clean();//Para que no imprima los echos
  419. }
  420. //TODO preguntar esta funcion
  421. function modulomatriculacionGet_course_users_by_role($courseid, $roleid=0) {
  422. ob_start(); //Para evitar que imprima los echos
  423. global $CFG;
  424. if (! $course = get_record('course', 'id', $courseid)) {
  425. error("Course ID is incorrect");
  426. }
  427. if (! $context = get_context_instance(CONTEXT_COURSE, $course->id)) {
  428. error("Context ID is incorrect");
  429. }
  430. // we are looking for all users with this role assigned in this context or higher
  431. if ($usercontexts = get_parent_contexts($context)) {
  432. $listofcontexts = '('.implode(',', $usercontexts).')';
  433. } else {
  434. $listofcontexts = '('.$sitecontext->id.')'; // must be site
  435. }
  436. if ($roleid > 0) {
  437. $selectrole = " AND r.roleid = $roleid ";
  438. } else {
  439. $selectrole = " ";
  440. }
  441. //Armar la consulta para obtener a los usuarios
  442. $select = 'SELECT DISTINCT u.id, u.username, u.firstname, u.lastname ';
  443. $from = "FROM {$CFG->prefix}user u
  444. LEFT OUTER JOIN {$CFG->prefix}context ctx
  445. ON (u.id=ctx.instanceid AND ctx.contextlevel = ".CONTEXT_USER.")
  446. JOIN {$CFG->prefix}role_assignments r
  447. ON u.id=r.userid ";
  448. $where = "WHERE (r.contextid = $context->id OR r.contextid in $listofcontexts)
  449. AND u.deleted = 0 $selectrole
  450. AND u.username != 'guest' AND r.roleid NOT IN (1) ";
  451. //echo $select.$from.$where;
  452. return get_records_sql($select.$from.$where);
  453. ob_end_clean();//Para que no imprima los echos
  454. }
  455. function modulousuariosRegistrarUsuario($usuario){
  456. ob_start(); //Para evitar que imprima los echos
  457. //TODO trabar el WS
  458. $usuario['id']=123;
  459. return $usuario;
  460. ob_end_clean();//Para que no imprima los echos
  461. }
  462. function modulousuariosEliminarUsuario($usuario){
  463. ob_start(); //Para evitar que imprima los echos
  464. $usuario = obj2array($usuario);
  465. if (!$ousuario = get_record('user', 'id', $usuario['id'])) {
  466. throw new Exception('User ID was incorrect');
  467. }
  468. if (!groups_delete_group($ousuario->id)) {
  469. throw new Exception(get_string('erroreditgroup'));
  470. }
  471. $curso['id']=$ouser->courseid;
  472. $curso = obterGrupos($curso);
  473. ob_end_clean(); //Para que no imprima los echos
  474. return $curso;
  475. ob_end_clean();//Para que no imprima los echos
  476. }
  477. function modulousuariosMatricularUsuariosCurso($curso, $listaUsuarios, $rol, $groupid) {
  478. ob_start(); //Para evitar que imprima los echos
  479. //$context = get_context_instance(CONTEXT_COURSE, $curso->id);
  480. $contextid = CONTEXT_COURSE;
  481. foreach ($listaUsuarios as $usuario) {
  482. echo "----> ". $enrolar = role_assign($roleid['id'], $userid['id'], $groupid, $contextid); exit;
  483. }
  484. print_object($enrolar); exit;
  485. ob_end_clean();//Para que no imprima los echos
  486. //return obtenerUsuarios($grupo);
  487. }
  488. function modulousuariosRegistrarUsuarios($usuarioslistas, $curso) {
  489. ob_start(); //Para evitar que imprima los echos
  490. $usuarios = $usuarioslistas;
  491. foreach ($usuarios as $usuario) {
  492. $usuario= obj2array($usuario);
  493. }
  494. ob_end_clean();//Para que no imprima los echos
  495. return $ogrupo;
  496. }
  497. /*
  498. $usuarioslistas = array();//Asignar el resultado de la base de datos a la variable
  499. $usuarioslistas[0]->username = "username0";
  500. $usuarioslistas[0]->password = "password0";
  501. $usuarioslistas[0]->email = "email0";
  502. $usuarioslistas[0]->firstname = "firstname0";
  503. $usuarioslistas[0]->lastname = "lastname0";
  504. $usuarioslistas[1]->username = "username1";
  505. $usuarioslistas[1]->password = "password1";
  506. $usuarioslistas[1]->email = "email1";
  507. $usuarioslistas[1]->firstname = "firstname1";
  508. $usuarioslistas[1]->lastname = "lastname1";
  509. $usuarioslistas= obj2array($usuarioslistas);
  510. $curso = array('id' => 129);
  511. //print_r($usuarioslistas); exit;
  512. //print_r($curso); exit;
  513. $modulousuariosRegistrarUsuarios = modulousuariosRegistrarUsuarios($usuarioslistas, $curso);
  514. echo "<pre>";
  515. print_r($modulousuariosRegistrarUsuarios);
  516. echo "</pre>";
  517. */
  518. //REVISAR ESTE NO LO TENIA
  519. function modulousuariosObtenerTodosUsuarios(){
  520. $users= get_record_sql('SELECT * FROM mdl_user' );
  521. $user['id'] = utf8_decode($users->id);
  522. $user['username'] = utf8_decode($users->username);
  523. $user['confirmed'] = utf8_decode($users->confirmed);
  524. $user['password'] = utf8_decode($users->password);
  525. $user['email'] = utf8_decode($users->email);
  526. $user[]= array();
  527. foreach($users as $cusuario){
  528. $ousuario = $cusuario;
  529. $user['usuarios'][] = $ousuario;
  530. }
  531. return $user;
  532. }
  533. ?>