$attach_ids = $db->sql_fetchrowset($result); $num_attach_ids = $db->sql_numrows($result); $db->sql_freeresult($result); if ($num_attach_ids == 0) { message_die(GENERAL_MESSAGE, 'For some reason no Attachments are assigned to the User "' . $username . '".'); } $total_rows = $num_attach_ids; $attach_id = array(); for ($j = 0; $j < $num_attach_ids; $j++) { $attach_id[] = intval($attach_ids[$j]['attach_id']); } $sql = "SELECT a.*\n\t\t\tFROM " . ATTACHMENTS_DESC_TABLE . " a\n\t\t\tWHERE a.attach_id IN (" . implode(', ', $attach_id) . ") " . $order_by; } else { if ($search_based) { // we are called from search $attachments = search_attachments($order_by, $total_rows); } else { $sql = "SELECT a.*\n\t\t\tFROM " . ATTACHMENTS_DESC_TABLE . " a " . $order_by; } } if (!$search_based) { if (!($result = $db->sql_query($sql))) { message_die(GENERAL_ERROR, 'Couldn\'t query attachments', '', __LINE__, __FILE__, $sql); } $attachments = $db->sql_fetchrowset($result); $num_attach = $db->sql_numrows($result); $db->sql_freeresult($result); } if (sizeof($attachments) > 0) { for ($i = 0; $i < sizeof($attachments); $i++) { $delete_box = '<input type="checkbox" name="delete_id_list[]" value="' . intval($attachments[$i]['attach_id']) . '" />';
/** * Render and process quick search dialog * * @param void * @return null */ function quick_search() { if (!$this->request->isAsyncCall()) { $this->redirectTo('search'); } // if //BOF:mod 20110629 search if (trim($this->request->post('search_for')) != '') { //$_SESSION['search_string'] = trim($this->request->post('search_for')); } //$this->smarty->assign('search_string', $_SESSION['search_string']); //EOF:mod 20110629 search /*$object_types = array(); $object_types[] = array('id' => '', 'text' => ''); $link = mysql_connect(DB_HOST, DB_USER, DB_PASS); mysql_select_db(DB_NAME, $link); $query = "select distinct type from healingcrystals_project_objects order by type"; $result = mysql_query($query); while($type = mysql_fetch_assoc($result)){ $object_types[] = array('id' => $type['type'], 'text' => $type['type']); } mysql_close($link);*/ $search_projects = array(); $link = mysql_connect(DB_HOST, DB_USER, DB_PASS); mysql_select_db(DB_NAME, $link); $query = "select distinct a.project_id from healingcrystals_project_users a inner join healingcrystals_projects b on a.project_id=b.id where a.user_id='" . $this->logged_user->getId() . "' order by b.name"; $result = mysql_query($query); while ($entry = mysql_fetch_assoc($result)) { $search_projects[] = new Project($entry['project_id']); } mysql_close($link); $object_types = $this->get_object_types(); if ($this->request->isSubmitted()) { $search_for = trim($this->request->post('search_for')); $search_type = $this->request->post('search_type'); $search_object_type = $this->request->post('search_object_type'); $search_project_id = $this->request->post('search_project_id'); if ($search_for == '') { die(lang('Nothing to search for')); } // if $this->smarty->assign(array('search_for' => $search_for, 'search_type' => $search_type, 'search_object_type' => $search_object_type, 'object_types' => $object_types, 'search_project_id' => $search_project_id, 'search_projects' => $search_projects)); $per_page = 5; // Search inside the project if ($search_type == 'in_projects') { //BOF:mod 20120822 if ($search_object_type == 'Attachment') { $template = get_template_path('_quick_search_project_objects', null, SYSTEM_MODULE); list($results, $pagination) = search_attachments($search_for, $this->logged_user, 1, $per_page, $search_object_type, $search_project_id); } else { //EOF:mod 20120822 $template = get_template_path('_quick_search_project_objects', null, SYSTEM_MODULE); list($results, $pagination) = search_index_search($search_for, 'ProjectObject', $this->logged_user, 1, $per_page, $search_object_type, $search_project_id); //BOF:mod 20120822 } //EOF:mod 20120822 // Search for people } elseif ($search_type == 'for_people') { $template = get_template_path('_quick_search_users', null, SYSTEM_MODULE); list($results, $pagination) = search_index_search($search_for, 'User', $this->logged_user, 1, $per_page); // Search for projects } elseif ($search_type == 'for_projects') { $template = get_template_path('_quick_search_projects', null, SYSTEM_MODULE); list($results, $pagination) = search_index_search($search_for, 'Project', $this->logged_user, 1, $per_page); // Unknown type } else { die(lang('Unknown search type: :type', array('type' => $search_type))); } // if $this->smarty->assign(array('results' => $results, 'pagination' => $pagination)); $this->smarty->display($template); die; } else { $this->smarty->assign('object_types', $object_types); $this->smarty->assign('search_projects', $search_projects); } }