|
|
|
@ -723,6 +723,19 @@ char *yon_config_get_section_for_key(char *key){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
char *yon_config_parameter_set_quotes(char *key){
|
|
|
|
|
|
|
|
if (!strstr(key,"[")||strstr(key,"\'")) return yon_char_new(key);
|
|
|
|
|
|
|
|
char *target = yon_char_new(key);
|
|
|
|
|
|
|
|
char *first_part = yon_char_divide(target,strlen(target)-strlen(strstr(target,"[")));
|
|
|
|
|
|
|
|
int end_pos = yon_char_find_last(target,']');
|
|
|
|
|
|
|
|
char *key_str = yon_char_divide(target,end_pos);
|
|
|
|
|
|
|
|
char *final = yon_char_unite(first_part,"['",key_str,"']",NULL);
|
|
|
|
|
|
|
|
free(target);
|
|
|
|
|
|
|
|
free(first_part);
|
|
|
|
|
|
|
|
free(key_str);
|
|
|
|
|
|
|
|
return final;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void *yon_config_get_all_by_key(char *key, int *size){
|
|
|
|
void *yon_config_get_all_by_key(char *key, int *size){
|
|
|
|
(*size)=0;
|
|
|
|
(*size)=0;
|
|
|
|
check_config{
|
|
|
|
check_config{
|
|
|
|
@ -730,9 +743,11 @@ void *yon_config_get_all_by_key(char *key, int *size){
|
|
|
|
dictionary *dict = NULL;
|
|
|
|
dictionary *dict = NULL;
|
|
|
|
for_dictionaries(dict, (dictionary*)__yon__config__strings){
|
|
|
|
for_dictionaries(dict, (dictionary*)__yon__config__strings){
|
|
|
|
if (strstr(dict->key,key)&&((yon_config_parameter*)dict)->flag1!=-1) {
|
|
|
|
if (strstr(dict->key,key)&&((yon_config_parameter*)dict)->flag1!=-1) {
|
|
|
|
char *ret_string = yon_char_unite(dict->key,"=",(char*)dict->data,NULL);
|
|
|
|
char *key_quoted = yon_config_parameter_set_quotes(dict->key);
|
|
|
|
|
|
|
|
char *ret_string = yon_char_unite(key_quoted,"=",(char*)dict->data,NULL);
|
|
|
|
if (ret_data) ret_data = yon_char_parsed_append(ret_data,size,ret_string);
|
|
|
|
if (ret_data) ret_data = yon_char_parsed_append(ret_data,size,ret_string);
|
|
|
|
else ret_data = yon_char_parsed_new(size,ret_string,NULL);
|
|
|
|
else ret_data = yon_char_parsed_new(size,ret_string,NULL);
|
|
|
|
|
|
|
|
free(key_quoted);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return ret_data;
|
|
|
|
return ret_data;
|
|
|
|
@ -1559,3 +1574,11 @@ int yon_config_move_after(char *parameter, char *target){
|
|
|
|
parameter_dict->prev=target_dict;
|
|
|
|
parameter_dict->prev=target_dict;
|
|
|
|
return 1;
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void yon_config_to_default(){
|
|
|
|
|
|
|
|
yon_config_clean();
|
|
|
|
|
|
|
|
yon_config_parameter *dict;
|
|
|
|
|
|
|
|
for_dictionaries(dict,__yon__config__default__strings){
|
|
|
|
|
|
|
|
yon_config_register(dict->key,dict->load_command,dict->data);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|