[ Index ]

Source Code Reference for V1.00

title

Body

[close]

/modules/smartsearch/ -> index.php (source)

   1  <?php /* $Id: index.php 115 2008-03-21 17:20:33Z pedroix $ $URL: https://web2project.svn.sourceforge.net/svnroot/web2project/trunk/modules/smartsearch/index.php $ */
   2  if (!defined('W2P_BASE_DIR')) {
   3      die('You should not access this file directly.');
   4  }
   5  
   6  //--MSy--

   7  $files = $AppUI->readFiles(W2P_BASE_DIR . '/modules/' . $m . '/searchobjects', '\.php$');
   8  $ssearch = array();
   9  $ssearch['keywords'] = array();
  10  
  11  $ssearch['advanced_search'] = w2PgetParam($_POST, 'advancedsearch', '');
  12  
  13  $ssearch['mod_selection'] = w2PgetParam($_POST, 'modselection', '');
  14  sort($files);
  15  foreach ($files as $tmp) {
  16      $temp = substr($tmp, 0, -8);
  17      $ssearch['mod_' . $temp] = w2PgetParam($_POST, 'mod_' . $temp, '');
  18  }
  19  
  20  $ssearch['all_words'] = w2PgetParam($_POST, 'allwords', '');
  21  
  22  if ($ssearch['advanced_search'] == 'on') {
  23      $ssearch['ignore_case'] = w2PgetParam($_POST, 'ignorecase', '');
  24      $ssearch['ignore_specchar'] = w2PgetParam($_POST, 'ignorespecchar', '');
  25      $ssearch['display_all_flds'] = w2PgetParam($_POST, 'displayallflds', '');
  26      $ssearch['show_empty'] = w2PgetParam($_POST, 'showempty', '');
  27  } else {
  28      $ssearch['ignore_case'] = 'on';
  29      $ssearch['ignore_specchar'] = '';
  30      $ssearch['display_all_flds'] = '';
  31      $ssearch['show_empty'] = '';
  32  }
  33  
  34  ?>
  35  <script language="JavaScript">
  36  
  37  	function focusOnSearchBox() {
  38          document.forms.frmSearch.keyword.focus();
  39      }
  40  	function toggleStatus(obj) {
  41          if (obj.checked) {
  42                  var block=document.getElementById('div_advancedsearch');
  43                  block.style.display='block';
  44                  var block1=document.getElementById('div_advancedsearch1');
  45                  block1.style.visibility='visible';
  46              }
  47          else {
  48                  var block=document.getElementById('div_advancedsearch');
  49                  block.style.display='none';
  50                  var block1=document.getElementById('div_advancedsearch1');
  51                  block1.style.visibility='hidden';
  52                  var key2=document.getElementById('keyword2');
  53                  key2.value='';
  54                  var key3=document.getElementById('keyword3');
  55                  key3.value='';
  56                  var key4=document.getElementById('keyword4');
  57                  key4.value='';
  58              }
  59      }
  60  
  61  	function toggleModules(obj) {
  62          var block=document.getElementById('div_selmodules');
  63          
  64          if (obj.checked) {
  65                  block.style.display='block';
  66              }
  67          else {
  68                  block.style.display='none';
  69              }
  70      }
  71      
  72  	function selModAll() {
  73          <?php
  74  $objarray = array();
  75  foreach ($files as $tmp) {
  76      $temp = substr($tmp, 0, -8);
  77  ?>                            
  78          document.frmSearch.mod_<?php echo $temp ?>.checked=true;
  79              <?php
  80  }
  81  ?>
  82      }        
  83  
  84  	function deselModAll() {
  85          <?php
  86  $objarray = array();
  87  foreach ($files as $tmp) {
  88      $temp = substr($tmp, 0, -8);
  89  ?>                            
  90          document.frmSearch.mod_<?php echo $temp ?>.checked=false;
  91              <?php
  92  }
  93  ?>
  94      }        
  95  
  96      
  97      window.onload = focusOnSearchBox;
  98  
  99  </script>
 100  
 101  
 102  <?php
 103  $titleBlock = new CTitleBlock('SmartSearch', 'kfind.png', $m, $m . '.' . $a);
 104  $titleBlock->show();
 105  ?>
 106      <table class="std" width="100%" cellspacing="5" cellpadding="0" border="0">
 107      <form name="frmSearch" action="?m=<?php echo $m; ?>"  method="POST">
 108      <tr><td>
 109              <table cellspacing="5" cellpadding="0" border="0">
 110                  <tr>
 111                      <td align="left" valign="middle">
 112                      <div id="div_advancedsearch1" id="div_advancedsearch1"  style="<?php echo ($ssearch['advanced_search'] == "on" ? 'visibility:visible' : 'visibility:hidden'); ?> "> 1. </div></td>
 113                      <td align="left"><input class="text" size="18" type="text" id="keyword" name="keyword" value="<?php echo stripslashes($_POST['keyword']); ?>" /></td>
 114                      <td align="left"><input class="button" type="submit" value="<?php echo $AppUI->_('Search'); ?>" /></td>
 115                      <td align="left"><input name="allwords" id="allwords" type="checkbox"  <?php echo ($ssearch['all_words'] == "on" ? 'checked="checked"' : ''); ?> /></td> <td align="left"><label for="allwords"><?php echo $AppUI->_('All words'); ?></label></td>
 116                      <td align="left"><input name="modselection" id="modselection" type="checkbox"  <?php echo ($ssearch['mod_selection'] == "on" ? 'checked="checked"' : ''); ?> onclick="toggleModules(this)" /></td> <td align="left"><label for="modselection"><?php echo $AppUI->_('Modules selection'); ?></label></td>
 117                      <td align="left"><input name="advancedsearch" id="advancedsearch" type="checkbox" <?php echo ($ssearch['advanced_search'] == "on" ? 'checked="checked"' : ''); ?> onclick="toggleStatus(this)" /></td> <td align="left"><label for="advancedsearch"><?php echo $AppUI->_('Advanced search'); ?></label></td>
 118                  </tr>
 119              </table>
 120              <div id="div_advancedsearch" id="div_advancedsearch"  style="<?php echo ($ssearch['advanced_search'] == "on" ? 'display:block' : 'display:none'); ?> ">
 121                  <table cellspacing="5" cellpadding="0" border="0">
 122                      <tr>
 123                          <td align="left"> 2. </td>
 124                          <td align="left"><input class="text" size="18" type="text" id="keyword2" name="keyword2" value="<?php echo stripslashes($_POST['keyword2']); ?>" /></td>
 125                          <td align="left"> 3. <input class="text" size="18" type="text" id="keyword3" name="keyword3" value="<?php echo stripslashes($_POST['keyword3']); ?>" /></td>
 126                          <td align="left"> 4. <input class="text" size="18" type="text" id="keyword4" name="keyword4" value="<?php echo stripslashes($_POST['keyword4']); ?>" /></td>
 127                          <td align="left"><input name="ignorespecchar" id="ignorespecchar" type="checkbox"  <?php echo ($ssearch['ignore_specchar'] == "on" ? 'checked="checked"' : ''); ?> /></td> <td align="left"><label for="ignorespecchar"><?php echo $AppUI->_('Ignore special chars'); ?></label></td>
 128                          <td align="left"><input name="ignorecase" id="ignorecase" type="checkbox"  <?php echo ($ssearch['ignore_case'] == "on" ? 'checked="checked"' : ''); ?> /></td> <td align="left"><label for="ignorecase"><?php echo $AppUI->_('Ignore case'); ?></label></td>
 129                          <td align="left"><input name="displayallflds" id="displayallflds" type="checkbox"  <?php echo ($ssearch['display_all_flds'] == "on" ? 'checked="checked"' : ''); ?> /></td> <td align="left"><label for="displayallflds"><?php echo $AppUI->_('Display all fields'); ?></label></td>
 130                          <td align="left"><input name="showempty" id="showempty" type="checkbox"  <?php echo ($ssearch['show_empty'] == "on" ? 'checked="checked"' : ''); ?> /></td> <td align="left"><label for="showempty"><?php echo $AppUI->_('Show empty'); ?></label></td>
 131                      </tr>
 132                  </table>
 133              </div>
 134              <div id="div_selmodules" style="<?php echo ($ssearch['mod_selection'] == "on" ? 'display:block' : 'display:none'); ?> ">
 135                  <table cellspacing="0" cellpadding="0" border="0">
 136                  <tr><td nowrap="nowrap" colspan="2"><a href="javascript: void(0);" onclick="selModAll(this)"><?php echo $AppUI->_('Select all'); ?></a> | <a href="javascript: void(0);" onclick="deselModAll(this)"><?php echo $AppUI->_('Deselect all'); ?></a></td></tr>
 137                          <?php
 138  $objarray = array();
 139  foreach ($files as $tmp) {
 140      require_once ('./modules/' . $m . '/searchobjects/' . $tmp);
 141      $temp = substr($tmp, 0, -8);
 142      $tempf = $temp . '()';
 143      eval("\$class_obj = new $tempf;");
 144      $temp_title = $class_obj->table_title;
 145      $objarray[$temp] = $temp_title;
 146  ?>                            
 147                  <tr><td width="10" align="left"><input name="mod_<?php echo $temp; ?>" id="mod_<?php echo $temp; ?>" type="checkbox" 
 148                          <?php
 149      echo ($ssearch['mod_' . $temp] == 'on') ? 'checked="checked"' : '';
 150      echo ' /></td><td align="left"><label for="mod_' . $temp . '">' . $AppUI->_($objarray[$temp]) . '</label>';
 151  ?> 
 152                  </td></tr>
 153                  <?php } ?>
 154                  </table>
 155              </div>
 156      </td></tr>
 157      </form>
 158      </table>
 159  <?php
 160  if (isset($_POST['keyword'])) {
 161      $search = new smartsearch();
 162      $search->keyword = addslashes($_POST['keyword']);
 163  
 164      if (isset($_POST['keyword']) && strlen($_POST['keyword']) > 0) {
 165          $or_keywords = preg_split('/[\s,;]+/', addslashes($_POST['keyword']));
 166          foreach ($or_keywords as $or_keyword) {
 167              $ssearch['keywords'][$or_keyword] = array($or_keyword);
 168              $ssearch['keywords'][$or_keyword][1] = 0;
 169          }
 170      } else {
 171          $or_keywords = preg_split('/[\s,;]+/', addslashes($_POST['keyword']));
 172          foreach ($or_keywords as $or_keyword) {
 173              unset($ssearch['keywords'][$or_keyword]);
 174          }
 175      }
 176  
 177      if (isset($_POST['keyword2']) && strlen($_POST['keyword2']) > 0) {
 178          $or_keywords = preg_split('/[\s,;]+/', addslashes($_POST['keyword2']));
 179          foreach ($or_keywords as $or_keyword) {
 180              $ssearch['keywords'][$or_keyword] = array($or_keyword);
 181              $ssearch['keywords'][$or_keyword][1] = 1;
 182          }
 183      } else {
 184          $or_keywords = preg_split('/[\s,;]+/', addslashes($_POST['keyword2']));
 185          foreach ($or_keywords as $or_keyword) {
 186              unset($ssearch['keywords'][$or_keyword]);
 187          }
 188      }
 189  
 190      if (isset($_POST['keyword3']) && strlen($_POST['keyword3']) > 0) {
 191          $or_keywords = preg_split('/[\s,;]+/', addslashes($_POST['keyword3']));
 192          foreach ($or_keywords as $or_keyword) {
 193              $ssearch['keywords'][$or_keyword] = array($or_keyword);
 194              $ssearch['keywords'][$or_keyword][1] = 2;
 195          }
 196      } else {
 197          $or_keywords = preg_split('/[\s,;]+/', addslashes($_POST['keyword3']));
 198          foreach ($or_keywords as $or_keyword) {
 199              unset($ssearch['keywords'][$or_keyword]);
 200          }
 201      }
 202  
 203      if (isset($_POST['keyword4']) && strlen($_POST['keyword4']) > 0) {
 204          $or_keywords = preg_split('/[\s,;]+/', addslashes($_POST['keyword4']));
 205          foreach ($or_keywords as $or_keyword) {
 206              $ssearch['keywords'][$or_keyword] = array($or_keyword);
 207              $ssearch['keywords'][$or_keyword][1] = 3;
 208          }
 209      } else {
 210          $or_keywords = preg_split('/[\s,;]+/', addslashes($_POST['keyword4']));
 211          foreach ($or_keywords as $or_keyword) {
 212              unset($ssearch['keywords'][$or_keyword]);
 213          }
 214      }
 215  
 216  ?>
 217  
 218      <table width="100%" border="0" cellpadding="2" cellspacing="1" class="tbl">
 219      <?php
 220      $perms = &$AppUI->acl();
 221      sort($files);
 222      $reccount = 0;
 223      foreach ($files as $tmp) {
 224          require_once ('./modules/' . $m . '/searchobjects/' . $tmp);
 225          $temp = substr($tmp, 0, -8);
 226          if ($ssearch['mod_selection'] == '' || $ssearch['mod_' . $temp] == 'on') {
 227              $temp .= '()';
 228              eval("\$class_search = new $temp;");
 229              $class_search->setKeyword($search->keyword);
 230              if (method_exists($class_search, 'setAdvanced')) {
 231                  $class_search->setAdvanced($ssearch);
 232              }
 233              $results = $class_search->fetchResults($perms, $reccount);
 234              echo $results;
 235          }
 236      }
 237      echo '<tr><td><b>' . $AppUI->_('Total records found') . ': ' . $reccount . '</b></td></tr>';
 238  ?>
 239  </table>
 240  <?php
 241  }
 242  ?>


Generated: Thu Jan 8 03:00:03 2009 Cross-referenced by PHPXref 0.7