user_manager.ajax.php 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. <?php
  2. /* For licensing terms, see /chamilo_license.txt */
  3. /**
  4. * Responses to AJAX calls
  5. */
  6. $language_file = array('admin', 'registration';
  7. require_once '../global.inc.php';
  8. $action = $_GET['a'];
  9. switch ($action) {
  10. case 'get_user_popup':
  11. $user_info = api_get_user_info($_REQUEST['user_id']);
  12. echo '<div class="well">';
  13. echo '<div class="row">';
  14. echo '<div class="span2">';
  15. echo '<div class="thumbnail">';
  16. echo '<img src="'.$user_info['avatar'].'" /> ';
  17. echo '</div>';
  18. echo '</div>';
  19. echo '<div class="span3">';
  20. if (api_get_setting('show_email_addresses') == 'false') {
  21. $user_info['mail'] = ' ';
  22. } else {
  23. $user_info['mail'] = ' '.$user_info['mail'].' ';
  24. }
  25. echo '<h3>'.$user_info['complete_name'].'</h3>'.$user_info['mail'].$user_info['official_code'];
  26. echo '<br/><br/><a class="btn" href="'.api_get_path(WEB_CODE_PATH).'social/profile.php?u='.$user_info['user_id'].'">'.get_lang('ViewSharedProfile').'</a>';
  27. echo '</div>';
  28. echo '</div>';
  29. echo '</div>';
  30. break;
  31. case 'user_id_exists':
  32. if (api_is_anonymous()) {
  33. echo '';
  34. } else {
  35. if (UserManager::is_user_id_valid($_GET['user_id'])) {
  36. echo 1;
  37. } else {
  38. echo 0;
  39. }
  40. }
  41. break;
  42. case 'search_tags':
  43. if (api_is_anonymous()) {
  44. echo '';
  45. } else {
  46. if (isset($_GET['tag']) && isset($_GET['field_id'])) {
  47. echo UserManager::get_tags($_GET['tag'], $_GET['field_id'], 'json', '10');
  48. }
  49. }
  50. break;
  51. case 'generate_api_key':
  52. if (api_is_anonymous()) {
  53. echo '';
  54. } else {
  55. $array_list_key = array();
  56. $user_id = api_get_user_id();
  57. $api_service = 'dokeos';
  58. $num = UserManager::update_api_key($user_id, $api_service);
  59. $array_list_key = UserManager::get_api_keys($user_id, $api_service);
  60. ?>
  61. <div class="row">
  62. <div class="label"><?php echo get_lang('MyApiKey'); ?></div>
  63. <div class="formw">
  64. <input type="text" name="api_key_generate" id="id_api_key_generate" size="40" value="<?php echo $array_list_key[$num]; ?>"/>
  65. </div>
  66. </div>
  67. <?php
  68. }
  69. break;
  70. case 'active_user':
  71. if (api_is_platform_admin() && api_global_admin_can_edit_admin($_GET['user_id'])) {
  72. $user_id = intval($_GET['user_id']);
  73. $status = intval($_GET['status']);
  74. if (!empty($user_id)) {
  75. $user_table = Database :: get_main_table(TABLE_MAIN_USER);
  76. $sql="UPDATE $user_table SET active='".$status."' WHERE user_id='".$user_id."'";
  77. $result = Database::query($sql);
  78. //Send and email if account is active
  79. if ($status == 1) {
  80. $user_info = api_get_user_info($user_id);
  81. $recipient_name = api_get_person_name($user_info['firstname'], $user_info['lastname'], null, PERSON_NAME_EMAIL_ADDRESS);
  82. $emailsubject = '['.api_get_setting('siteName').'] '.get_lang('YourReg').' '.api_get_setting('siteName');
  83. $email_admin = api_get_setting('emailAdministrator');
  84. $sender_name = api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'), null, PERSON_NAME_EMAIL_ADDRESS);
  85. $emailbody=get_lang('Dear')." ".stripslashes($recipient_name).",\n\n";
  86. $emailbody.=sprintf(get_lang('YourAccountOnXHasJustBeenApprovedByOneOfOurAdministrators'), api_get_setting('siteName'))."\n";
  87. $emailbody.=sprintf(get_lang('YouCanNowLoginAtXUsingTheLoginAndThePasswordYouHaveProvided'), api_get_path(WEB_PATH)).",\n\n";
  88. $emailbody.=get_lang('HaveFun')."\n\n";
  89. //$emailbody.=get_lang('Problem'). "\n\n". get_lang('SignatureFormula');
  90. $emailbody.=api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'))."\n". get_lang('Manager'). " ".api_get_setting('siteName')."\nT. ".api_get_setting('administratorTelephone')."\n" .get_lang('Email') ." : ".api_get_setting('emailAdministrator');
  91. $plugin = new AppPlugin();
  92. $additionalParameters = array(
  93. 'smsType' => constant($plugin->getSMSPluginName().'::ACCOUNT_APPROVED_CONNECT'),
  94. 'userId' => $user_id
  95. );
  96. $result = api_mail_html(
  97. $recipient_name,
  98. $user_info['mail'],
  99. $emailsubject,
  100. $emailbody,
  101. $sender_name,
  102. $email_admin,
  103. null,
  104. null,
  105. $additionalParameters
  106. );
  107. Event::addEvent(LOG_USER_ENABLE, LOG_USER_ID, $user_id);
  108. } else {
  109. Event::addEvent(LOG_USER_DISABLE, LOG_USER_ID, $user_id);
  110. }
  111. echo $status;
  112. }
  113. } else {
  114. echo '-1';
  115. }
  116. break;
  117. default:
  118. echo '';
  119. }
  120. exit;