/mods/usersgallery/users_create.php

https://github.com/ichraffsnicht/ClanSphere-Enhanced · PHP · 173 lines · 139 code · 32 blank · 2 comment · 27 complexity · f1a34e42ec65bcf668e6e5ca0d81bc06 MD5 · raw file

  1. <?php
  2. // ClanSphere 2010 - www.clansphere.net
  3. // $Id$
  4. $cs_lang = cs_translate('gallery', 1);
  5. $files_gl = cs_files();
  6. if(!isset($files_gl['picture']))
  7. $files_gl['picture'] = array('name' => '', 'size' => '', 'tmp_name' => '');
  8. $data = array();
  9. require_once('mods/gallery/functions.php');
  10. $cs_option = cs_sql_option(__FILE__,'gallery');
  11. $img_filetypes = array('gif','jpg','png');
  12. $cs_gallery['usersgallery_name'] = '';
  13. $cs_gallery['usersgallery_titel'] = '';
  14. $cs_gallery['folders_id'] = 0;
  15. $cs_gallery['usersgallery_access'] = 0;
  16. $cs_gallery['usersgallery_status'] = 1;
  17. $cs_gallery['usersgallery_description'] = '';
  18. $cs_gallery['usersgallery_vote'] = '1';
  19. $cs_gallery['usersgallery_time'] = cs_time();
  20. $cs_gallery['users_id'] = $account['users_id'];
  21. $gray = '0';
  22. $file_up = 0;
  23. if (file_exists('uploads/usersgallery/pics/' . $cs_gallery['users_id'] . '.' . $files_gl['picture']['name'])) {
  24. $filename_tmp = ( str_split($files_gl['picture']['name'], strrpos($files_gl['picture']['name'], '.')) );
  25. $filename_counter = 0;
  26. while (file_exists('uploads/usersgallery/pics/' . $cs_gallery['users_id'] . '.' . $filename_tmp[0] . '_' . $filename_counter . $filename_tmp[1]))
  27. $filename_counter++;
  28. $files_gl['picture']['name'] = $filename_tmp[0] . '_' . $filename_counter . $filename_tmp[1];
  29. }
  30. if(isset($_POST['submit'])) {
  31. $file_up = isset($_POST['file_up']) ? $_POST['file_up'] : 0;
  32. if ($file_up == 0) {
  33. $cs_gallery['usersgallery_name'] = $cs_gallery['users_id'] . '.' . $files_gl['picture']['name'];
  34. } elseif ($file_up == 1) {
  35. $cs_gallery['usersgallery_name'] = $cs_gallery['users_id'] . '.' . $_POST['picture']['name'];
  36. }
  37. $cs_gallery['usersgallery_titel'] = $_POST['gallery_titel'];
  38. $cs_gallery['folders_id'] = empty($_POST['folders_name']) ? $_POST['folders_id'] : make_folders_create('usersgallery',$_POST['folders_name'], $account['users_id']);
  39. $cs_gallery['usersgallery_access'] = $_POST['gallery_access'];
  40. $cs_gallery['usersgallery_description'] = $_POST['description'];
  41. $cs_gallery['usersgallery_status'] = isset($_POST['gallery_status']) ? $_POST['gallery_status'] : 0;
  42. $cs_gallery['usersgallery_vote'] = isset($_POST['gallery_vote']) ? $_POST['gallery_vote'] : 0;
  43. $gray = isset($_POST['gray']) ? $_POST['gray'] : 0;
  44. $error = '';
  45. $check_file = $files_gl['picture']['name'];
  46. $where = "usersgallery_name = '" . cs_sql_escape($check_file) . "'";
  47. $pic_check = cs_sql_select(__FILE__,'usersgallery','*',$where,'usersgallery_id DESC',0,0);
  48. $loop_pic_check = count($pic_check);
  49. if(!empty($loop_pic_check))
  50. $error .= $cs_lang['img_is'] . cs_html_br(1);
  51. if(empty($cs_gallery['folders_id']))
  52. $error .= $cs_lang['no_cat'] . cs_html_br(1);
  53. if(empty($files_gl['picture']['tmp_name']))
  54. $error .= $cs_lang['error_pic'] . cs_html_br(1);
  55. if(empty($_POST['gallery_titel']))
  56. $error .= $cs_lang['no_titel'] . cs_html_br(1);
  57. if(!empty($files_gl['picture']['tmp_name']))
  58. $img_size = getimagesize($files_gl['picture']['tmp_name']);
  59. else
  60. $img_size = 0;
  61. if(!empty($files_gl['picture']['tmp_name']) AND empty($img_size) OR $img_size[2] > 3) {
  62. $error .= $cs_lang['ext_error'] . cs_html_br(1);
  63. }
  64. elseif(!empty($files_gl['picture']['tmp_name'])) {
  65. $filename = $cs_gallery['users_id'] . '.' . $files_gl['picture']['name'];
  66. if($img_size[0]>$cs_option['width'])
  67. $error .= $cs_lang['too_wide'] . cs_html_br(1);
  68. if($img_size[1]>$cs_option['height'])
  69. $error .= $cs_lang['too_high'] . cs_html_br(1);
  70. if($files_gl['picture']['size']>$cs_option['size2']) {
  71. $size = $files_gl['picture']['size'] - $cs_option['size2'];
  72. $size = cs_filesize($size);
  73. $error .= sprintf($cs_lang['too_big'], $size) . cs_html_br(1);
  74. }
  75. $where = 'users_id = "' . $cs_gallery['users_id'] . '"';
  76. $count_user_files = cs_sql_count(__FILE__,'usersgallery',$where);
  77. if($count_user_files >= $cs_option['max_files']) {
  78. $error .= $cs_lang['too_many_f'] . cs_html_br(1);
  79. }
  80. if(extension_loaded('gd') AND !empty($gray)) {
  81. require_once('mods/gallery/gd_2.php');
  82. cs_gray($files_gl['picture']['tmp_name']);
  83. }
  84. if(empty($error) AND cs_upload('usersgallery/pics', $filename, $files_gl['picture']['tmp_name']) OR !empty($error) AND extension_loaded('gd') AND cs_resample($files_gl['picture']['tmp_name'], 'uploads/usersgallery/pics/' . $filename, $cs_option['width'], $cs_option['height']))
  85. {
  86. if(empty($error) AND !extension_loaded('gd') AND cs_upload('usersgallery/thumbs', 'Thumb_' . $filename, $files_gl['picture_thumb']['tmp_name']) OR empty($error) AND extension_loaded('gd') AND cs_resample('uploads/usersgallery/pics/' . $filename, 'uploads/usersgallery/thumbs/' . 'Thumb_' . $filename, $cs_option['thumbs'], $cs_option['thumbs']) OR !empty($error) AND extension_loaded('gd') AND cs_resample('uploads/usersgallery/pics/' . $filename, 'uploads/usersgallery/thumbs/' . 'Thumb_' . $filename, $cs_option['thumbs'], $cs_option['thumbs']))
  87. {
  88. } else {
  89. $error .= $cs_lang['upload_error'] . cs_html_br(1);
  90. }
  91. } else {
  92. $error .= $cs_lang['upload_error'] . cs_html_br(1);
  93. }
  94. }
  95. }
  96. if(!isset($_POST['submit']))
  97. $data['head']['body'] = $cs_lang['body_picture'];
  98. elseif(!empty($error) OR empty($files_gl['picture']['tmp_name']))
  99. $data['head']['body'] = $error;
  100. if(!isset($_POST['submit']) OR !empty($error)) {
  101. $data['data'] = $cs_gallery;
  102. $matches[1] = $cs_lang['pic_infos'];
  103. $return_types = '';
  104. foreach($img_filetypes AS $add) {
  105. $return_types .= empty($return_types) ? $add : ', ' . $add;
  106. }
  107. $matches[2] = $cs_lang['max_width'] . $cs_option['width'] . ' px' . cs_html_br(1);
  108. $matches[2] .= $cs_lang['max_height'] . $cs_option['height'] . ' px' . cs_html_br(1);
  109. $matches[2] .= $cs_lang['max_size'] . cs_filesize($cs_option['size2']) . cs_html_br(1);
  110. $matches[2] .= $cs_lang['filetypes'] . $return_types;
  111. $data['data']['infobox'] = cs_abcode_clip($matches);
  112. $data['data']['folders'] = make_folders_select('folders_id',$cs_gallery['folders_id'],$cs_gallery['users_id'],'usersgallery');
  113. $data['access']['options'] = '';
  114. $levels = 0;
  115. while($levels < 6) {
  116. $cs_gallery['usersgallery_access'] == $levels ? $sel = 1 : $sel = 0;
  117. $data['access']['options'] .= cs_html_option($levels . ' - ' . $cs_lang['lev_' . $levels],$levels,$sel);
  118. $levels++;
  119. }
  120. $data['status']['options'] = '';
  121. $levels = 0;
  122. while($levels < 2) {
  123. $cs_gallery['usersgallery_status'] == $levels ? $sel = 1 : $sel = 0;
  124. $data['status']['options'] .= cs_html_option($cs_lang['show_' . $levels],$levels,$sel);
  125. $levels++;
  126. }
  127. $data['abcode']['smileys'] = cs_abcode_smileys('description');
  128. $data['abcode']['features'] = cs_abcode_features('description');
  129. $checked = 'checked="checked"';
  130. $data['check']['gray'] = empty($gray) ? '' : $checked;
  131. $data['data']['usersgallery_name'] = cs_secure($data['data']['usersgallery_name']);
  132. $data['data']['usersgallery_titel'] = cs_secure($data['data']['usersgallery_titel']);
  133. $data['data']['usersgallery_description'] = cs_secure($data['data']['usersgallery_description']);
  134. echo cs_subtemplate(__FILE__,$data,'usersgallery','users_create');
  135. }
  136. else {
  137. $cells = array_keys($cs_gallery);
  138. $save = array_values($cs_gallery);
  139. cs_sql_insert(__FILE__,'usersgallery',$cells,$save);
  140. cs_redirect($cs_lang['create_done'],'usersgallery','center');
  141. }