示例#1
0
          $display['msg'] .= display_err_msg("$l_list : $l_insert_error");
        }
	$display['detail'] = dis_list_consult($params);
      }
    }

  // Form data are not valid
  } else {
    $display['msg'] .= display_warn_msg($err['msg']);
    $display['detail'] = dis_list_form($action, '', $params);
  }

} elseif ($action == 'update')  {
///////////////////////////////////////////////////////////////////////////////
  if ($params['criteria'] != '') {
    $dynlist = make_list_query_from_criteria($params);
    $params['query'] = $dynlist['query'];
  } else {
    // To change : we do not know if expert mode (query should be stripslashed)
    // or no more graphical criteria (query should be set to empty)
    $params['query'] = stripslashes($params['query']);
  }
  if (check_user_defined_rules() && check_list_data($params['list_id'], $params)) {
    $retour = run_query_list_update($params);
    if ($retour) {
      $display['msg'] .= display_ok_msg("$l_list : $l_update_ok");
    } else {
      $display['msg'] .= display_err_msg("$l_list : $l_update_error");
    }
    $display['detail'] = dis_list_consult($params);
  } else {
示例#2
0
function process_list_list() {
  global $clist_mode_normal, $clist_mode_expert, $lists;

  $cpt_list_ok = 0;
  $cpt_list_err = 0;
  $cpt_list = count($lists);

  $txt = "\n***** Traitement des listes";
  $log .= $txt;
  echo $txt;

  $obm_q = new DB_OBM;
  $nb_lists = count($lists);
  $cpt = 0;

  foreach ($lists as $id => $l) {
    $cpt++;
    $query = '';

    // get the list query
    if ($l['mode'] == $clist_mode_normal) {
      if ($l['structure'] != '') {
	$criteria = unserialize($l['structure']);
	if ($criteria != '') {
	  $as_criteria = $criteria;
	  if (is_array($as_criteria)) {
	    array_walk($as_criteria, 'list_add_slashes_array');
	  }
	  $l['criteria'] = $as_criteria;
	  $dynlist = make_list_query_from_criteria($l);
	  $query = $dynlist['query'];
	}
      }
      // expert mode
    } else {
      $query = $l['query'];
    }

    $obm_q->query($query);
    process_one_list($l, $obm_q, $nb_lists, $cpt);
  }

  echo "\n***** Fin traitement des listes";
  $txt .= "\n\n";
  $log .= $txt;
  echo $txt;
}