示例#1
0
// for each key/value in params_one, set params_two[key] = value
void merge_params(params_t& params_one, params_t& params_two) {
    map<string,string>::iterator iter;
    for(iter = params_one.begin(); iter != params_one.end(); iter++) {
        string param_key(iter->first);
        params_two[param_key] = params_one[param_key];
    }
};
示例#2
0
void get_extension_params(params_t& extparams, params_t& params) {
    map<string,string>::iterator iter;
    extparams.reset_fields();
    for(iter = params.begin(); iter != params.end(); iter++) {
        string param_key(iter->first);
        vector<string> parts = explode(param_key, ".");
        // if there is more than one "." in the param name then we're
        // dealing with an extension parameter
        if(parts.size() > 2)
            extparams[param_key] = params[param_key];
    }
};
示例#3
0
void remove_openid_vars(params_t& params) {
    map<string,string>::iterator iter, iter_next;
    for(iter = params.begin(); iter != params.end(); ) {
        iter_next = iter;
        ++iter_next;
        string param_key(iter->first);
        // if starts with openid. or modauthopenid. (for the nonce) or openid_identifier (the login) remove it
        if((param_key.substr(0, 7) == "openid." || param_key.substr(0, 14) == "modauthopenid." || param_key == "openid_identifier")) {
            params.erase(iter); // invalidates iter, but its successor iter_next is still valid
        }
        iter = iter_next;
    }
};
  void remove_openid_vars(params_t& params) {
    map<string,string>::iterator iter;
    for(iter = params.begin(); iter != params.end(); iter++) {
      string param_key(iter->first);
      // if starts with openid. or modauthopenid. (for the nonce) or openid_identifier (the login) remove it
      if((param_key.substr(0, 7) == "openid." || param_key.substr(0, 14) == "modauthopenid." || param_key == "openid_identifier")) {
        params.erase(param_key);
        // stupid map iterator screws up if we just continue the iteration... 
	// so recursion to the rescue - we'll delete them one at a time    
	remove_openid_vars(params);
        return;
      }
    }
  };