Exemplo n.º 1
0
 function estimate_update($id, $close = false)
 {
     $estimate_estimate = new EstimateCalc();
     $components_estimate = new ComponentEstimate();
     $component = new EstimateComponents();
     if (close == true) {
         $query = ' UPDATE ' . $estimate_estimate->table_name . ' SET status="closed" WHERE estimate_id="' . $id . '" AND deleted=0 ';
         $this->db->query($query, true, "");
     } else {
         $query = ' SELECT id FROM ' . $estimate_estimate->table_name . ' WHERE estimate_id="' . $id . '" AND deleted=0 ';
         $result = $this->db->query($query, true, "");
         if ($result != false) {
             while ($data = $this->db->fetchByAssoc($result)) {
                 $estimate_estimate->mark_deleted($data['id']);
             }
         }
     }
     $query = ' SELECT id FROM ' . $component->table_name . ' WHERE parent_id="' . $id . '" AND deleted=0 ';
     $result = $this->db->query($query, true, "");
     if ($result != false) {
         if (close == true) {
             $query = ' UPDATE ' . $component->table_name . ' SET status="closed" WHERE parent_id="' . $id . '" AND deleted=0 ';
             $this->db->query($query, true, "");
         }
         while ($data = $this->db->fetchByAssoc($result)) {
             if (close == true) {
                 $query = ' UPDATE ' . $components_estimate->table_name . ' SET status="closed" WHERE component_id="' . $data['id'] . '" AND deleted=0 ';
                 $this->db->query($query, true, "");
             } else {
                 $component->mark_deleted($data['id']);
                 $query = ' SELECT id FROM ' . $components_estimate->table_name . ' WHERE component_id="' . $data['id'] . '" AND deleted=0 ';
                 $result_components_estimate = $this->db->query($query, true, "");
                 if ($result_components_estimate != false) {
                     while ($data = $this->db->fetchByAssoc($result)) {
                         $components_estimate->mark_deleted($data['id']);
                     }
                 }
             }
         }
     }
 }