function process_project($window, $id, $ctrl)
{
    global $wb;
    switch ($id) {
        case IDC_ISTABPAGE:
            $val = wb_get_value($ctrl);
            wb_set_enabled(wb_get_control($wb->winproject, IDC_TABNUMBER), $val);
            wb_set_enabled(wb_get_control($wb->winproject, IDC_TABNUMBERSPINNER), $val);
            break;
        case IDC_CTRLVAR:
            $hastext = wb_get_text($ctrl) !== '';
            wb_set_enabled(wb_get_control($wb->winproject, IDC_STARTCTRLVAL), $hastext);
            break;
        case IDC_LOCALIZE:
            wb_set_enabled(wb_get_control($wb->winproject, IDC_LOCPREFIX), wb_get_value($ctrl));
            break;
        case IDOK:
            // 	Set various settings
            foreach ($wb->project_array as $var) {
                $var = strtolower($var);
                $ctrl = wb_get_control($wb->winproject, constant("IDC_" . strtoupper($var)));
                if (wb_get_class($ctrl) != RadioButton && wb_get_class($ctrl) != CheckBox) {
                    $wb->form[$wb->currentform]->{$var} = wb_get_text($ctrl);
                } else {
                    $wb->form[$wb->currentform]->{$var} = wb_get_value($ctrl);
                }
            }
            // Fall-through
        // Fall-through
        case IDCANCEL:
            set_default_accel();
            wb_destroy_window($window);
            break;
    }
}
function reset_company_view()
{
    global $wb;
    // Empty listview
    wb_delete_items(wb_get_control($wb->right_control, IDC_COMPANY_LIST), null);
    $keyword = $wb->keyword;
    $where_is = " where 1 ";
    if ($keyword) {
        $where_is .= " AND name LIKE '%{$keyword}%' ";
    }
    $max_row = 22;
    $table_name = $wb->setting["Settings"]["company_table"];
    $start_num = ($wb->current_page - 1) * $max_row;
    $sql = " SELECT COUNT(*) AS num FROM {$table_name} {$where_is} ";
    $wb->db->query($sql);
    $wb->db->next_record();
    $total_num = $wb->db->f("num");
    $wb->total_page = ceil($total_num / $max_row);
    include PATH_CONFIG . "common.php";
    $sql = " SELECT * FROM {$table_name} {$where_is} ORDER BY id DESC LIMIT {$start_num}," . $max_row;
    $wb->db->query($sql);
    $data = array();
    while ($wb->db->next_record()) {
        $row = array();
        $row[] = $wb->db->f("id");
        $row[] = $wb->db->f("name");
        $row[] = $wb->db->f("link_man");
        $row[] = $wb->db->f("phone");
        $row[] = $wb->db->f("email");
        $row[] = $wb->db->f("addrees");
        $data[] = $row;
    }
    // Create listview items
    wb_create_items(wb_get_control($wb->right_control, IDC_COMPANY_LIST), $data);
    //	navigator
    wb_set_text(wb_get_control($wb->right_control, IDC_NAV_BAR), $wb->vars["Lang"]["lang_total"] . " " . $total_num . " " . $wb->vars["Lang"]["lang_records"] . " " . $wb->vars["Lang"]["lang_current"] . $wb->current_page . "/" . $wb->total_page . " " . $wb->vars["Lang"]["lang_page"]);
    wb_set_enabled(wb_get_control($wb->right_control, IDC_NAV_PRE), true);
    wb_set_enabled(wb_get_control($wb->right_control, IDC_NAV_FIRST), true);
    wb_set_enabled(wb_get_control($wb->right_control, IDC_NAV_NEXT), true);
    wb_set_enabled(wb_get_control($wb->right_control, IDC_NAV_LAST), true);
    if ($wb->current_page == $wb->total_page) {
        wb_set_enabled(wb_get_control($wb->right_control, IDC_NAV_NEXT), false);
        wb_set_enabled(wb_get_control($wb->right_control, IDC_NAV_LAST), false);
    }
    if ($wb->current_page == 1) {
        wb_set_enabled(wb_get_control($wb->right_control, IDC_NAV_PRE), false);
        wb_set_enabled(wb_get_control($wb->right_control, IDC_NAV_FIRST), false);
    }
}
function process_agreement_edit($window, $id, $ctrl)
{
    global $wb;
    switch ($id) {
        case IDC_UPDATE:
            $wb->current_action = 'update';
            wb_set_enabled(wb_get_control($window, IDC_SAVE), true);
            wb_set_enabled(wb_get_control($window, IDC_UPDATE), false);
            break;
        case IDC_SAVE:
            inser_update_agreement($window);
            wb_destroy_window($window);
            break;
        case IDCANCEL:
            wb_destroy_window($window);
            break;
    }
}
function process_refundment_edit($window, $id, $ctrl)
{
    global $wb;
    switch ($id) {
        case IDC_UPDATE:
            $wb->current_action = 'update';
            wb_set_enabled(wb_get_control($window, IDC_SAVE), true);
            wb_set_enabled(wb_get_control($window, IDC_UPDATE), false);
            break;
        case IDC_SAVE:
            if (!wb_get_text(wb_get_control($window, IDC_REFUNDMENT_COMPANY))) {
                empty_message_box($window, $wb->vars["Lang"]["lang_please_fillup"] . $wb->vars["Lang"]["lang_company"]);
                wb_set_focus(wb_get_control($window, IDC_REFUNDMENT_COMPANY));
            } else {
                inser_update_refundment($window);
                wb_destroy_window($window);
            }
            break;
        case IDCANCEL:
            wb_destroy_window($window);
            break;
    }
}
function update_prior_controls($window)
{
    global $mainwin, $prior_table;
    $itemlist = wb_get_control($window, ID_PRIORITYLIST);
    $id = db_get_id($prior_table, wb_get_selected($itemlist));
    wb_set_text(wb_get_control($window, ID_NAME), db_get_data($prior_table, $id, "name"));
    $sel = wb_get_selected($itemlist);
    wb_set_enabled(wb_get_control($window, ID_SETITEM), $sel != -1);
    wb_set_enabled(wb_get_control($window, ID_DELETEITEM), $sel != -1);
}
function update_cat_controls($window)
{
    global $mainwin, $cat_table, $it_list;
    // Below: get id of selected treeview element. See comment in update_items()
    $it_list = wb_get_control($window, ID_TREE);
    $sel_text = wb_get_text($it_list);
    $cat_data = db_get_data("cat", null, "name");
    $sel_index = (int) array_search($sel_text, $cat_data);
    $cat_data = db_get_data("cat", null, "id");
    $id_cat = $cat_data[$sel_index];
    $id = db_get_id($cat_table, $sel_index);
    $data = db_get_data($cat_table, $id, null, "", FETCH_ASSOC);
    $data = $data[0];
    wb_set_text(wb_get_control($window, ID_NAME), $data["name"]);
    wb_set_value(wb_get_control($window, ID_LEVEL), $data["level"]);
    wb_set_enabled(wb_get_control($window, ID_SETITEM), $sel_text != "");
    wb_set_enabled(wb_get_control($window, ID_DELETEITEM), $sel_text != "");
}
 function reset_category_listview($keyword = "")
 {
     global $wb;
     // Empty listview
     wb_delete_items($this->category_list, null);
     $where_is = " where 1 ";
     if ($keyword) {
         $where_is .= " AND category_name LIKE '%{$keyword}%' ";
     }
     $category_table_name = $wb->setting["Settings"]["contact_category_table"];
     $start_num = ($wb->current_category_page - 1) * $this->max_row;
     $sql2 = " SELECT * FROM {$category_table_name} {$where_is} ";
     $wb->db->query($sql2);
     $this->total_category_num = $wb->db->num_rows();
     $wb->total_category_page = ceil($this->total_category_num / $this->max_row);
     $sql2 = " SELECT * FROM {$category_table_name} {$where_is} ORDER BY id DESC LIMIT {$start_num}," . $this->max_row;
     $wb->db->query($sql2);
     $category_data = array();
     while ($wb->db->next_record()) {
         $row = array();
         $row[] = $wb->db->f("id");
         $row[] = $wb->db->f("category_name");
         $row[] = $wb->db->f("active");
         $category_data[] = $row;
     }
     // Create listview items
     wb_create_items($this->category_list, $category_data);
     //category navigator
     $dim = wb_get_size($this->left_control, true);
     $nav_button_y = $dim[1] - 280;
     $nav_button_x = 80 + 150;
     $nav_button_space = 120;
     wb_create_control($this->left_control, Label, $wb->vars["Lang"]["lang_total"] . " " . $this->total_category_num . " " . $wb->vars["Lang"]["lang_records"] . " " . $wb->vars["Lang"]["lang_current"] . $wb->current_category_page . "/" . $wb->total_category_page . " " . $wb->vars["Lang"]["lang_page"], 20, $nav_button_y + 5, 150, 14, 0, WBC_VISIBLE, 0, 1);
     $category_nav_first = wb_create_control($this->left_control, PushButton, $wb->vars["Lang"]["lang_first_page"], $nav_button_x, $nav_button_y, 80, 22, IDC_CATEGORY_NAV_FIRST, WBC_VISIBLE, 0, 1);
     $category_nav_pre = wb_create_control($this->left_control, PushButton, $wb->vars["Lang"]["lang_pre_page"], $nav_button_x + $nav_button_space, $nav_button_y, 80, 22, IDC_CATEGORY_NAV_PRE, WBC_VISIBLE, 0, 1);
     $category_nav_next = wb_create_control($this->left_control, PushButton, $wb->vars["Lang"]["lang_next_page"], $nav_button_x + $nav_button_space * 2, $nav_button_y, 80, 22, IDC_CATEGORY_NAV_NEXT, WBC_VISIBLE, 0, 1);
     $category_nav_last = wb_create_control($this->left_control, PushButton, $wb->vars["Lang"]["lang_last_page"], $nav_button_x + $nav_button_space * 3, $nav_button_y, 80, 22, IDC_CATEGORY_NAV_LAST, WBC_VISIBLE, 0, 1);
     //category
     if ($wb->current_category_page == $wb->total_category_page) {
         wb_set_enabled($category_nav_next, false);
         wb_set_enabled($category_nav_last, false);
     }
     if ($wb->current_category_page == 1) {
         wb_set_enabled($category_nav_pre, false);
         wb_set_enabled($category_nav_first, false);
     }
 }
function process_review_edit($window, $id, $ctrl)
{
    global $wb;
    switch ($id) {
        //		case IDC_REVIEW_CAL_SELECT:
        //			wb_set_visible (wb_get_control($window, IDC_REVIEW_CALENDAR), true);
        //			break;
        //		case IDC_REVIEW_CALENDAR:
        //			$date = strftime("%Y-%m-%d %H:%M%:%S", wb_get_value($ctrl));
        //			wb_set_text(wb_get_control($window, IDC_REVIEW_REVIEWDATE), $date);
        ////			wb_set_visible (wb_get_control($window, IDC_REVIEW_CALENDAR), false);
        //			break;
        case IDC_UPDATE:
            $wb->current_action = 'update';
            wb_set_enabled(wb_get_control($window, IDC_SAVE), true);
            wb_set_enabled(wb_get_control($window, IDC_UPDATE), false);
            break;
        case IDC_SAVE:
            if (!wb_get_text(wb_get_control($window, IDC_REVIEW_COMPANY))) {
                empty_message_box($window, $wb->vars["Lang"]["lang_please_fillup"] . $wb->vars["Lang"]["lang_company"]);
                wb_set_focus(wb_get_control($window, IDC_REVIEW_COMPANY));
            } else {
                inser_update_review($window);
                wb_destroy_window($window);
            }
            break;
        case IDCANCEL:
            wb_destroy_window($window);
            break;
    }
}