Advertisement
Guest User

Untitled

a guest
Sep 26th, 2016
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.16 KB | None | 0 0
  1. <?php
  2. function form_example_permission() {
  3. return array(
  4. 'submit form_example' => array(
  5. 'title' => t('Submit form_example'),
  6. 'description' => t('Submit the form_example form'),
  7. ),
  8. 'access form_example submissions' => array(
  9. 'title' => t('Access form_example submissions'),
  10. 'description' => t('Access the form_example submissions'),
  11. ),
  12. 'access form_example search' => array(
  13. 'title' => t('Access form_example search'),
  14. 'description' => t('Access the form_example search'),
  15. ),
  16. );
  17. }
  18. function form_example_menu() {
  19. $items = array();
  20.  
  21. $items['form-example'] = array( //this creates a URL that will call this form at "examples/form-example"
  22. 'title' => 'Employess Entry Form', //page title
  23. 'description' => "A form to submit the employee's data.",
  24. 'type' => MENU_NORMAL_ITEM,
  25. 'access arguments' => array('submit form_example'),
  26. 'page callback' => 'drupal_get_form', //this is the function that will be called when the page is accessed. for a form, use drupal_get_form
  27. 'page arguments' => array('form_example_form'),
  28.  
  29. );
  30.  
  31. $items['form-submissions'] = array(
  32. 'title' => t('List'),
  33. 'page callback' => 'form_example_submissions',
  34. 'access callback' => TRUE,
  35. 'access arguments' => array('access form_example submissions'),
  36. 'type' => MENU_CALLBACK,
  37. );
  38.  
  39. $items['form-list'] = array(
  40. 'title' => t('List'),
  41. 'page callback' => 'form_example_list',
  42. 'access callback' => TRUE,
  43. 'access arguments' => array('access form_example search'),
  44. 'type' => MENU_CALLBACK,
  45. );
  46. return $items;
  47. }
  48.  
  49. function form_example_form($form, &$form_state) {
  50.  
  51. $form['empcode'] = array(
  52. '#weight' => '0',
  53. '#required' => '1',
  54. '#type' => 'textfield',
  55. '#title' => t('Employee Code'),
  56. );
  57. $form['empname'] = array(
  58. '#weight' => '1',
  59. '#required' => '1',
  60. '#type' => 'textfield',
  61. '#title' => t('Employee Name'),
  62. );
  63. $form['empemail'] = array(
  64. '#weight' => '2',
  65. '#required' => '1',
  66. '#type' => 'textfield',
  67. '#title' => t('Employee Email'),
  68. );
  69. $form['empdesignation'] = array(
  70. '#weight' => '3',
  71. '#required' => '1',
  72. '#type' => 'textfield',
  73. '#title' => t('Employee Designation'),
  74. );
  75. $form['file'] = array(
  76. '#weight' => '4',
  77. '#type' => 'file',
  78. '#size' => '30',
  79. '#title' => t('Employee Photo'),
  80. );
  81. $form['submit'] = array(
  82. '#weight' => '5',
  83. '#type' => 'submit',
  84. '#value' => t('Submit'),
  85. );
  86.  
  87. return $form;
  88.  
  89. }
  90.  
  91. function form_example_form_validate($form, &$form_state) {
  92. /*if (!($form_state['values']['price'] > 0)){
  93. form_set_error('price', t('Price must be a positive number.'));
  94. }*/
  95. // print('<pre>'.print_r($form_state['values'],1).'</pre>');
  96. //die();
  97. $file = file_save_upload('file', array(
  98. 'file_validate_is_image' => array(),
  99. 'file_validate_extensions' => array('png gif jpg jpeg'),
  100. ));
  101. if ($file) {
  102. if ($file = file_move($file, 'public://')) {
  103. $form_state['values']['file'] = $file;
  104. }
  105. else {
  106. form_set_error('file', t('Failed to write the uploaded file the site's file folder.'));
  107. }
  108. }
  109. else {
  110. form_set_error('file', t('No file was uploaded.'));
  111. }
  112. }
  113.  
  114. function form_example_form_submit($form, &$form_state) {
  115. $file=$form_state['values']['file'];
  116. unset($form_state['values']['file']);
  117. $file->status = FILE_STATUS_PERMANENT;
  118. file_save($file);
  119. // drupal_set_message(t('The form has been submitted and the image has been saved, filename: @filename.', array('@filename' => $file->filename)));
  120.  
  121.  
  122. $fe_id = db_insert('form_example')
  123. ->fields(array(
  124.  
  125. 'empcode' => $form_state['values']['empcode'],
  126. 'empname' => $form_state['values']['empname'],
  127. 'empemail' => $form_state['values']['empemail'],
  128. 'empdesignation' => $form_state['values']['empdesignation'],
  129. 'empphoto' => $file->filename,
  130. ))
  131. ->execute();
  132. drupal_set_message(t('Successfully added'));
  133.  
  134. }
  135. function form_example_theme($existing, $type, $theme, $path) {
  136. return array(
  137. 'form_example_function' => array(
  138. 'variables' => array('rows' => NULL),
  139. ),
  140. 'form_example_template' => array(
  141. 'variables' => array('rows' => NULL),
  142. 'template' => 'form_example_template',
  143. ),
  144.  
  145.  
  146. );
  147. }
  148.  
  149. /* view the form submissions*/
  150. function form_example_submissions()
  151. {
  152. $results = db_query("Select * from {form_example}");
  153. $rows = array();
  154. foreach($results as $result)
  155. {
  156. $rows[] = array(
  157. $result->fe_id,
  158. $result->empcode,
  159. $result->empname,
  160. $result->empphoto,
  161. $result->empemail,
  162. $result->empdesignation,
  163. );
  164.  
  165. }
  166. return theme('form_example_function',array('rows' => $rows));
  167. }
  168. /*function theme_form_example_function($variables)
  169. {
  170. print_r($variables);
  171. //$output ="<h2>".print_r$variables."</pre></h2>";
  172. /* foreach ($variables as $result)
  173. {
  174.  
  175. $output = "<h2><pre>".print_r($result)."</pre></h2>";
  176. }
  177. return $output;
  178. $output = '';
  179.  
  180. foreach($variables['rows'] as $row) {
  181. foreach($row as $values) {
  182.  
  183. print_r($values);
  184. $output .= "Empcode: " . $values . "</br> ";
  185. // $output .= "EmpName: " . $values[1] . " </br>";
  186. //$output .= "Emphot: " . $values[2] . "n";
  187. }
  188. }
  189. return $output;
  190.  
  191. }*/
  192. function theme_form_example_function($variables)
  193. {
  194. $output = '';
  195. $search_form =drupal_get_form('form_example_search_form');
  196. $output = '<div class="block" >'.drupal_render($search_form).'</div>';
  197. $output .= '<div style="clear:both" ></div>';
  198.  
  199.  
  200. //print_r($variables);
  201. foreach($variables['rows'] as $row) {
  202. // echo $path;
  203. // $output .= "Empcode: " . (isset($row[1]) ? $row[1] : "--") . " ";
  204. // $output .= "EmpName: " . (isset($row[2]) ? $row[2] : "--") . " ";
  205. // $output .= "Emphot: " . (isset($row[3]) ? $row[3] : "--") . "<br>";
  206.  
  207. $img_url = 'public://'.(isset($row[3]) ? $row[3] : "--"); // the orig image uri
  208. $style = 'medium'; // or any other custom image style you've created via /admin/config/media/image-styles
  209.  
  210.  
  211.  
  212. $output .= '<div class="views-row"><div class="do_featured">
  213. <div style="position: relative;" class="do_image">
  214. <div class="field field-name-field-thumb-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item "><img src="'.image_style_url($style, $img_url).'" ></div></div></div></div>
  215. <div class="do_title">
  216. <span> <div class="field"><div class="field-items"><b>'.(isset($row[2]) ? $row[2] : "--") .'</b></div></div>
  217. <div class="field"><div class="field-items">Emp Code: &nbsp;</div><div class="field-items">'.(isset($row[1]) ? $row[1] : "--") .'</div></div>
  218. <div class="field"><div class="field-items">'.(isset($row[4]) ? $row[4] : "--") .'</div></div>
  219. <div class="field"><div class="field-items">'.(isset($row[5]) ? $row[5] : "--") .'</div></div>
  220.  
  221.  
  222.  
  223. </span>
  224. </div></div></div>';
  225.  
  226.  
  227.  
  228. }
  229.  
  230. return $output;
  231. }
  232. function form_example_list(){
  233. $search_form =drupal_get_form('form_example_search_form');
  234. $content = '<div class="block" >'.drupal_render($search_form).'</div>';
  235. $content .= '<div style="clear:both" ></div>';
  236.  
  237. $query = db_select('form_example', 'pd');
  238. if(isset($_GET['empname']) && $_GET['empname'] != ''){
  239. $query->condition('pd.empname', '%' . db_like($_GET['empname']). '%','LIKE');
  240. }
  241. if(!empty($_GET['empcode'])){
  242. $query->condition('pd.empcode', '%' . db_like($_GET['empcode']). '%','LIKE');
  243. }
  244. if(isset($_GET['empdesignation']) && $_GET['empdesignation'] != ''){
  245. $query->condition('pd.empdesignation', '%' . db_like($_GET['empdesignation']). '%','LIKE');
  246. }
  247. $query->fields('pd');
  248. $query->extend('PagerDefault')->limit(1);
  249. //$query->limit(10);
  250. //$table_sort = $query->extend('TableSort')->orderByHeader($header);
  251. //$pager = $table_sort->extend('PagerDefault')->limit(10);
  252.  
  253. $results = $query->execute();
  254. $rows = array();
  255. foreach($results as $result)
  256. {
  257. $rows[] = array(
  258. $result->fe_id,
  259. $result->empcode,
  260. $result->empname,
  261. $result->empphoto,
  262. $result->empemail,
  263. $result->empdesignation,
  264. );
  265.  
  266. }
  267. $limit =1;
  268. pager_default_initialize(count($results), $limit, $element = 0);
  269. $pager = theme('pager',array("quantity"=>5));
  270. return theme("form_example_function",array("rows"=>$rows ,"pager"=>$pager));
  271. // return theme('form_example_function',array('rows' => $rows));
  272. //return $content;
  273. }
  274. function form_example_search_form($form, &$form_state){
  275.  
  276. $form['#method'] = 'get';
  277. $form['#token'] = FALSE;
  278. $form['#form_build_id'] = FALSE;
  279. $form['#form_id'] = FALSE;
  280. $form['empname'] = array(
  281. '#type' => 'textfield',
  282. '#title' => t('empname'),
  283. '#attributes' => array( 'maxlength' => '128', 'size'=> '30'),
  284. '#prefix' => '<div class="form-inline views-exposed-form"> <div class="views-exposed-widget">',
  285. '#suffix' => '</div>',
  286. '#default_value' => isset($_GET['empname'])?$_GET['empname']:'',
  287. );
  288. $form['empcode'] = array(
  289. '#type' => 'textfield',
  290. '#title' => t('empcode'),
  291. '#attributes' => array( 'maxlength' => '128', 'size'=> '30'),
  292. '#prefix' => '<div class="form-inline views-exposed-form"> <div class="views-exposed-widget">',
  293. '#suffix' => '</div>',
  294. '#default_value' => isset($_GET['empcode'])?$_GET['empcode']:'',
  295. );
  296. $form['empdesignation'] = array(
  297. '#type' => 'textfield',
  298. '#title' => t('empdesignation'),
  299. '#attributes' => array( 'maxlength' => '128', 'size'=> '30'),
  300. '#prefix' => '<div class="form-inline views-exposed-form"> <div class="views-exposed-widget">',
  301. '#suffix' => '</div>',
  302. '#default_value' => isset($_GET['empdesignation'])?$_GET['empdesignation']:'',
  303. );
  304. //views-exposed-widget
  305.  
  306. $form['submit'] = array(
  307. '#type' => 'submit',
  308. '#attributes' => array( 'name' => ''),
  309. '#prefix' => '<div class="views-exposed-widget">',
  310. '#suffix' => '</div></div>',
  311. '#value' => 'Apply',
  312. );
  313.  
  314. return $form;
  315. }
  316. ?>
  317.  
  318. $query = db_select('form_example', 'fe')->extend('PagerDefault');
  319. $query->limit(5); // adjust to the number to show per page
  320. $query->fields('fe', array('fe_id', 'empcode', 'empname', 'empphoto', 'empmail', 'empdesignation'));
  321. $results = $query->execute();
  322.  
  323. theme('pager');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement