/pnajax.php

https://github.com/intraweb-modules12/iw_main · PHP · 188 lines · 131 code · 41 blank · 16 comment · 21 complexity · de9aa181f19baf85be9e496d9f3422b2 MD5 · raw file

  1. <?php
  2. /**
  3. * Delete all the information about an activity
  4. * @author: Albert Pérez Monfort (aperezm@xtec.cat)
  5. * @param: args Id of the activity
  6. * @return: the activity id removed from database
  7. */
  8. function iw_main_ajax_change($args){
  9. $dom = ZLanguage::getModuleDomain('iw_main');
  10. if (!SecurityUtil::checkPermission('iw_main::', '::', ACCESS_ADMIN)) {
  11. AjaxUtil::error(DataUtil::formatForDisplayHTML(__('Sorry! No authorization to access this module.', $dom)));
  12. }
  13. $chid = FormUtil::getPassedValue('chid', -1, 'GET');
  14. if ($chid == -1) {
  15. AjaxUtil::error('no change user id');
  16. }
  17. $toDo = FormUtil::getPassedValue('toDo', -1, 'GET');
  18. if ($toDo == -1) {
  19. AjaxUtil::error('no action defined');
  20. }
  21. if($toDo == 'ch'){
  22. //change the file name
  23. }
  24. $error = '';
  25. if($toDo == 'del'){
  26. //delete the file
  27. if(!pnModFunc('iw_main', 'user', 'deleteAvatar', array('avatarName' => substr($chid,0,-4),
  28. 'extensions' => array('jpg','png','gif')))){
  29. $error = __('Error deleting avatar', $dom);
  30. }
  31. //delete the small picture
  32. pnModFunc('iw_main', 'user', 'deleteAvatar', array('avatarName' => substr($chid,0,-4).'_s',
  33. 'extensions' => array('jpg','png','gif')));
  34. }else{
  35. $file_extension = strtolower(substr(strrchr($chid,"."),1));
  36. $formats = '$jpg$$png$$gif$';
  37. $formats = str_replace('$'.$file_extension.'$','',$formats);
  38. $len = strlen($formats)-2;
  39. $formatsArray = explode('$$',substr($formats,1,$len));
  40. //change file name
  41. $changed = rename(pnModGetVar('iw_main', 'documentRoot').'/'.pnModGetVar('iw_main', 'usersPictureFolder').'/'.$chid, pnModGetVar('iw_main', 'documentRoot').'/'.pnModGetVar('iw_main', 'usersPictureFolder').'/'.substr($chid,1,strlen($chid)));
  42. if($changed){
  43. pnModFunc('iw_main', 'user', 'deleteAvatar', array('avatarName' => substr($chid,1,-4),
  44. 'extensions' => $formatsArray));
  45. }else{
  46. $error = __('Error changing avatar', $dom);
  47. }
  48. //Change small pictures
  49. $chid_s = substr($chid,0,-4).'_s.'.$file_extension;
  50. rename(pnModGetVar('iw_main', 'documentRoot').'/'.pnModGetVar('iw_main', 'usersPictureFolder').'/'.$chid_s, pnModGetVar('iw_main', 'documentRoot').'/'.pnModGetVar('iw_main', 'usersPictureFolder').'/'.substr($chid_s,1,strlen($chid_s)));
  51. pnModFunc('iw_main', 'user', 'deleteAvatar', array('avatarName' => substr($chid_s,1,-4),
  52. 'extensions' => $formatsArray));
  53. }
  54. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  55. pnModFunc('iw_main', 'user', 'userSetVar', array('module' => 'iw_main_block_news',
  56. 'name' => 'have_news',
  57. 'value' => 'ch',
  58. 'sv' => $sv));
  59. AjaxUtil::output(array('chid' => $chid,
  60. 'error' => $error));
  61. }
  62. function iw_main_ajax_reloadNewsBlock(){
  63. $dom = ZLanguage::getModuleDomain('iw_main');
  64. // Security check
  65. if (!SecurityUtil::checkPermission('iw_main:newsBlock:', $row['title']."::", ACCESS_READ) || !pnUserLoggedIn()) {
  66. AjaxUtil::error(DataUtil::formatForDisplayHTML(__('Sorry! No authorization to access this module.', $dom)));
  67. }
  68. $uid = pnUserGetVar('uid');
  69. //get the headlines saved in the user vars. It is renovate every 10 minutes
  70. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  71. $exists = pnModApiFunc('iw_main', 'user', 'userVarExists', array('name' => 'news',
  72. 'module' => 'iw_main_block_news',
  73. 'uid' => $uid,
  74. 'sv' => $sv));
  75. if(!$exists){
  76. pnModFunc('iw_main', 'user', 'news');
  77. }
  78. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  79. $have_news = pnModFunc('iw_main', 'user', 'userGetVar', array('uid' => $uid,
  80. 'name' => 'have_news',
  81. 'module' => 'iw_main_block_news',
  82. 'sv' => $sv));
  83. if($have_news != '0'){
  84. pnModFunc('iw_main', 'user', 'news', array('where' => $have_news));
  85. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  86. pnModFunc('iw_main', 'user', 'userSetVar', array('uid' => $uid,
  87. 'name' => 'have_news',
  88. 'module' => 'iw_main_block_news',
  89. 'sv' => $sv,
  90. 'value' => '0'));
  91. }
  92. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  93. $news = pnModFunc('iw_main', 'user', 'userGetVar', array('uid' => $uid,
  94. 'name' => 'news',
  95. 'module' => 'iw_main_block_news',
  96. 'sv' => $sv,
  97. 'nult' => true));
  98. $pnRender = pnRender::getInstance('iw_main',false);
  99. $pnRender -> assign('news', $news);
  100. $pnRender -> assign('ajax', 1);
  101. $content = $pnRender -> fetch('iw_main_block_iwnews.htm');
  102. AjaxUtil::output(array('content' => $content));
  103. }
  104. function iw_main_ajax_reloadFlaggedBlock(){
  105. $dom = ZLanguage::getModuleDomain('iw_main');
  106. // Security check
  107. if (!SecurityUtil::checkPermission('iw_main:flaggedBlock:', $row['title']."::", ACCESS_READ) || !pnUserLoggedIn()) {
  108. AjaxUtil::error(DataUtil::formatForDisplayHTML(__('Sorry! No authorization to access this module.', $dom)));
  109. }
  110. //get the headlines saved in the user vars. It is renovate every 10 minutes
  111. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  112. $exists = pnModApiFunc('iw_main', 'user', 'userVarExists', array('name' => 'flagged',
  113. 'module' => 'iw_main_block_flagged',
  114. 'uid' => pnUserGetVar('uid'),
  115. 'sv' => $sv));
  116. $chars = 15;
  117. if(!$exists){
  118. pnModFunc('iw_main', 'user', 'flagged', array('where' => '',
  119. 'chars' => $chars));
  120. }
  121. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  122. $have_flags = pnModFunc('iw_main', 'user', 'userGetVar', array('uid' => pnUserGetVar('uid'),
  123. 'name' => 'have_flags',
  124. 'module' => 'iw_main_block_flagged',
  125. 'sv' => $sv));
  126. if($have_flags != '0'){
  127. pnModFunc('iw_main', 'user', 'flagged', array('where' => $have_flags,
  128. 'chars' => $chars));
  129. //Posa la variable d'usuari have_news en blanc per no haver-la de tornar a llegir a la propera reiteraci�
  130. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  131. pnModFunc('iw_main', 'user', 'userSetVar', array('uid' => pnUserGetVar('uid'),
  132. 'name' => 'have_flags',
  133. 'module' => 'iw_main_block_flagged',
  134. 'sv' => $sv,
  135. 'value' => '0'));
  136. }
  137. $sv = pnModFunc('iw_main', 'user', 'genSecurityValue');
  138. $flags = pnModFunc('iw_main', 'user', 'userGetVar', array('uid' => pnUserGetVar('uid'),
  139. 'name' => 'flagged',
  140. 'module' => 'iw_main_block_flagged',
  141. 'sv' => $sv,
  142. 'nult' => true));
  143. $pnRender = pnRender::getInstance('iw_main',false);
  144. $pnRender -> assign('flags', $flags);
  145. $content = $pnRender -> fetch('iw_main_block_iwflagged.htm');
  146. AjaxUtil::output(array('content' => $content));
  147. }