From c8b2ef7b899766d04562f7e04a84251cea8fa701 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 6 Apr 2013 13:14:44 +0200 Subject: tagging ychat-0.8.0 --- src/mods/html/Makefile.in | 4 +- src/mods/html/yc_admin.cpp | 117 ++++++++++++++++-------------- src/mods/html/yc_colors.cpp | 52 ++++++------- src/mods/html/yc_help.cpp | 76 +++++++++---------- src/mods/html/yc_loggedin.cpp | 31 ++++---- src/mods/html/yc_options.cpp | 81 +++++++++++---------- src/mods/html/yc_register.cpp | 165 +++++++++++++++++++++--------------------- 7 files changed, 270 insertions(+), 256 deletions(-) (limited to 'src/mods/html') diff --git a/src/mods/html/Makefile.in b/src/mods/html/Makefile.in index 30f1782..4b7c728 100755 --- a/src/mods/html/Makefile.in +++ b/src/mods/html/Makefile.in @@ -4,12 +4,12 @@ INCLUDES=`cat ../../includes.add` CFLAGS=`cat ../cflags.add` all: mods $(MODS): - @echo -n "Compiling html module `basename $@` " @if ! test -d `dirname $@`; then mkdir -p `dirname $@`; fi @$(CC) $(CFLAGS) $(INCLUDES) -shared -s -o $@ `echo $(notdir $@) | sed s/.so/.cpp/` + @echo -n "HTML module `basename $@ | sed s/\.so// | sed s/yc_//` " @du -hc $@ | tail -n 1 | sed s/total// | sed "s/ //g" infotext: - @echo Compiling html modules + @echo Compiling HTML modules mods: infotext $(MODS) @echo "Num of html modules: " @ls ../../../mods/html/*.so | wc -l diff --git a/src/mods/html/yc_admin.cpp b/src/mods/html/yc_admin.cpp index b3752ab..cbee80a 100644 --- a/src/mods/html/yc_admin.cpp +++ b/src/mods/html/yc_admin.cpp @@ -7,61 +7,66 @@ using namespace std; -extern "C" { - string replace_chars(string s_string) { - s_string = tool::replace(s_string, "<", "<"); - s_string = tool::replace(s_string, ">", ">"); - s_string = tool::replace(s_string, "\n", "
"); - return s_string; - } - - int extern_function(void *v_arg) - { - container* c = (container*) v_arg; - dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; - user* p_user = (user*) c->elem[2]; - conf* p_conf = (conf*) p_wrap->CONF; - string* p_content = &(*((hashmap*) c->elem[1]))["content"]; - - vector* p_vec_keys = p_conf->get_key_vector(); - sort(p_vec_keys->begin(), p_vec_keys->end()); - vector::iterator p_vec_keys_iter = p_vec_keys->begin(); - - p_content->append( "Currently are " + tool::int2string(p_vec_keys->size()) + " options available!

\n"); - p_content->append( "\n" ); - - for( ;p_vec_keys_iter != p_vec_keys->end(); ++p_vec_keys_iter ) { - - if ( p_vec_keys_iter->find(".descr") != string::npos ) - continue; - - p_content->append( "\n" ); - - string s_descr = p_conf->get_elem(*p_vec_keys_iter + ".descr"); - if ( s_descr.length() > 0 ) - { - p_content->append( "\n" ); - } - - p_content->append( "\n" ); - } // while - - p_content->append( "
\n" + *p_vec_keys_iter + "\n
\n" ); - p_content->append( replace_chars(p_conf->get_elem(*p_vec_keys_iter + ".descr")) ); - p_content->append( "\n
\n" ); - - // Hide some fields! - if ( p_vec_keys_iter->find(".password") != string::npos - || p_vec_keys_iter->find("base.user") != string::npos - || p_vec_keys_iter->find(".dbname") != string::npos ) - p_content->append( "X X X X X X X X X X" ); - - else - p_content->append( replace_chars(p_conf->get_elem(*p_vec_keys_iter)) ); - - p_content->append( "

\n
\n" ); - - return 0; - } +extern "C" +{ + string replace_chars(string s_string) + { + s_string = tool::replace(s_string, "<", "<"); + s_string = tool::replace(s_string, ">", ">"); + s_string = tool::replace(s_string, "\n", "
"); + return s_string; + } + + int extern_function(void *v_arg) + { + container* c = (container*) v_arg; + dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; + user* p_user = (user*) c->elem[2]; + conf* p_conf = (conf*) p_wrap->CONF; + string* p_content = &(*((map*) c->elem[1]))["content"]; + + vector* p_vec_keys = p_conf->get_key_vector(); + sort(p_vec_keys->begin(), p_vec_keys->end()); + vector::iterator p_vec_keys_iter = p_vec_keys->begin(); + + p_content->append( "Currently are " + tool::int2string(p_vec_keys->size()) + " options available!

\n"); + p_content->append( "\n" ); + + for( ;p_vec_keys_iter != p_vec_keys->end(); ++p_vec_keys_iter ) + { + + if ( p_vec_keys_iter->find(".descr") != string::npos ) + continue; + + p_content->append( "\n" ); + + string s_descr = p_conf->get_elem(*p_vec_keys_iter + ".descr"); + if ( s_descr.length() + > 0 ) + { + p_content->append( "\n" ); + } + + p_content->append( "\n" ); + } // while + + p_content->append( "
\n" + *p_vec_keys_iter + "\n
\n" ); + p_content->append( replace_chars(p_conf->get_elem(*p_vec_keys_iter + ".descr")) ); + p_content->append( "\n
\n" ); + + // Hide some fields! + if ( p_vec_keys_iter->find(".password") + != string::npos + || p_vec_keys_iter->find("base.user") != string::npos + || p_vec_keys_iter->find(".dbname") != string::npos ) + p_content->append( "X X X X X X X X X X" ); + + else + p_content->append( replace_chars(p_conf->get_elem(*p_vec_keys_iter)) ); + + p_content->append( "

\n
\n" ); + + return 0; + } } diff --git a/src/mods/html/yc_colors.cpp b/src/mods/html/yc_colors.cpp index 2579fab..1f12f60 100755 --- a/src/mods/html/yc_colors.cpp +++ b/src/mods/html/yc_colors.cpp @@ -6,30 +6,32 @@ using namespace std; -extern "C" { - int extern_function(void *v_arg) - { - container* c = (container*) v_arg; - dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; - conf* p_conf = (conf*) p_wrap->CONF; - string* p_col1 = &(*((hashmap*) c->elem[1]))["col1"]; - string* p_col2 = &(*((hashmap*) c->elem[1]))["col2"]; - string* p_flag = &(*((hashmap*) c->elem[1]))["flag"]; - user* p_user = (user*) c->elem[2]; - - p_col1->erase(0); - p_col2->erase(0); - - p_col1->append( p_user->get_col1() ); - p_col2->append( p_user->get_col2() ); - - if ( *p_flag == "submit" ) - { - string* p_msgs = &(*((hashmap*) c->elem[1]))["msgs"]; - p_msgs->append( p_conf->get_elem( "chat.msgs.optionschanged" ) ); - } - - return 0; - } +extern "C" +{ + int extern_function(void *v_arg) + { + container* c = (container*) v_arg; + dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; + conf* p_conf = (conf*) p_wrap->CONF; + string* p_col1 = &(*((map*) c->elem[1]))["col1"]; + string* p_col2 = &(*((map*) c->elem[1]))["col2"]; + string* p_flag = &(*((map*) c->elem[1]))["flag"]; + user* p_user = (user*) c->elem[2]; + + p_col1->erase(0); + p_col2->erase(0); + + p_col1->append( p_user->get_col1() ); + p_col2->append( p_user->get_col2() ); + + if ( *p_flag == "submit" ) + { + string* p_msgs = &(*((map*) c->elem[1]) + )["msgs"]; + p_msgs->append( p_conf->get_elem( "chat.msgs.optionschanged" ) ); + } + + return 0; + } } diff --git a/src/mods/html/yc_help.cpp b/src/mods/html/yc_help.cpp index f839c77..da58be8 100755 --- a/src/mods/html/yc_help.cpp +++ b/src/mods/html/yc_help.cpp @@ -6,43 +6,45 @@ using namespace std; -extern "C" { - int extern_function(void *v_arg) - { - container* c = (container*) v_arg; - dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; - user* p_user = (user*) c->elem[2]; - modl* p_modl = (modl*) p_wrap->MODL; - conf* p_conf = (conf*) p_wrap->CONF; - chat* p_chat = (chat*) p_wrap->CHAT; - string* s_content = &(*((hashmap*) c->elem[1]))["content"]; - - vector* p_vec_keys = p_modl->get_mod_vector(); - - sort(p_vec_keys->begin(), p_vec_keys->end()); - vector::iterator p_vec_keys_iter = p_vec_keys->begin(); - - while( p_vec_keys_iter != p_vec_keys->end() ) { - - if ( p_vec_keys_iter->find( "mods/commands/", 0 ) != string::npos ) - { - - string s_command_name = p_vec_keys_iter->substr(17); - s_command_name.erase( s_command_name.find( ".so" ) ); - - if ( !p_chat->get_command_disabled( s_command_name ) && - p_chat->get_command_status( s_command_name ) >= p_user->get_status()) - { - s_content->append( "\n" ); - s_content->append( "\n" ); - s_content->append( "\n" ); - s_content->append( "
/" + s_command_name + "
" + p_conf->get_elem("chat.msgs.help." + s_command_name) + "
\n
\n" ); - } - } - p_vec_keys_iter++; +extern "C" +{ + int extern_function(void *v_arg) + { + container* c = (container*) v_arg; + dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; + user* p_user = (user*) c->elem[2]; + + modl* p_modl = (modl*) p_wrap->MODL; + conf* p_conf = (conf*) p_wrap->CONF; + chat* p_chat = (chat*) p_wrap->CHAT; + string* s_content = &(*((map*) c->elem[1]))["content"]; + + vector* p_vec_keys = p_modl->get_mod_vector(); + + sort(p_vec_keys->begin(), p_vec_keys->end()); + vector::iterator p_vec_keys_iter = p_vec_keys->begin(); + + while( p_vec_keys_iter != p_vec_keys->end() ) + { + + if ( p_vec_keys_iter->find( "mods/commands/", 0 ) != string::npos ) + { + + string s_command_name = p_vec_keys_iter->substr(17); + s_command_name.erase( s_command_name.find( ".so" ) ); + + if ( !p_chat->get_command_disabled( s_command_name ) && + p_chat->get_command_status( s_command_name ) >= p_user->get_status()) + { + s_content->append( "\n" ); + s_content->append( "\n" ); + s_content->append( "\n" ); + s_content->append( "
/" + s_command_name + "
" + p_conf->get_elem("chat.msgs.help." + s_command_name) + "
\n
\n" ); } - - return 0; - } + } + p_vec_keys_iter++; + } + return 0; + } } diff --git a/src/mods/html/yc_loggedin.cpp b/src/mods/html/yc_loggedin.cpp index 529ae0d..2dcc9dc 100755 --- a/src/mods/html/yc_loggedin.cpp +++ b/src/mods/html/yc_loggedin.cpp @@ -6,23 +6,24 @@ using namespace std; -extern "C" { - int extern_function(void *v_arg) - { - container* c = (container*) v_arg; - dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; - chat* p_chat = (chat*) p_wrap->CHAT; - hashmap* p_map = (hashmap*) c->elem[1]; +extern "C" +{ + int extern_function(void *v_arg) + { + container* c = (container*) v_arg; + dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; + chat* p_chat = (chat*) p_wrap->CHAT; + map* p_map = (map*) c->elem[1]; -/* - string s_list; - p_chat->get_user_list(s_list); - (*p_map)["USERLIST"] = s_list; -*/ + /* + string s_list; + p_chat->get_user_list(s_list); + (*p_map)["USERLIST"] = s_list; + */ - p_chat->get_user_list((*p_map)["USERLIST"]); + p_chat->get_user_list((*p_map)["USERLIST"]); - return 0; - } + return 0; + } } diff --git a/src/mods/html/yc_options.cpp b/src/mods/html/yc_options.cpp index 638a2f7..ec9ab5e 100755 --- a/src/mods/html/yc_options.cpp +++ b/src/mods/html/yc_options.cpp @@ -6,50 +6,51 @@ using namespace std; -extern "C" { - int extern_function(void *v_arg) - { - container* c = (container*) v_arg; - dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; - conf* p_conf = (conf*) p_wrap->CONF; - string* p_flag = &(*((hashmap*) c->elem[1]))["flag"]; - string* p_email = &(*((hashmap*) c->elem[1]))["email"]; - string* p_pass = &(*((hashmap*) c->elem[1]))["pass"]; - string* p_newpass = &(*((hashmap*) c->elem[1]))["newpass"]; - string* p_newpass2 = &(*((hashmap*) c->elem[1]))["newpass2"]; - user* p_user = (user*) c->elem[2]; - - if ( *p_flag == "submit" ) +extern "C" +{ + int extern_function(void *v_arg) + { + container* c = (container*) v_arg; + dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; + conf* p_conf = (conf*) p_wrap->CONF; + string* p_flag = &(*((map*) c->elem[1]))["flag"]; + string* p_email = &(*((map*) c->elem[1]))["email"]; + string* p_pass = &(*((map*) c->elem[1]))["pass"]; + string* p_newpass = &(*((map*) c->elem[1]))["newpass"]; + string* p_newpass2 = &(*((map*) c->elem[1]))["newpass2"]; + user* p_user = (user*) c->elem[2]; + + if ( *p_flag == "submit" ) + { + string* p_msgs = &(*((map*) c->elem[1]) + )["msgs"]; + + // If the password has to be changed: + if ( *p_pass != "" || *p_newpass != "" || *p_newpass2 != "" ) + { + if ( p_user->get_pass() != *p_pass ) { - string* p_msgs = &(*((hashmap*) c->elem[1]))["msgs"]; - - // If the password has to be changed: - if ( *p_pass != "" || *p_newpass != "" || *p_newpass2 != "" ) - { - if ( p_user->get_pass() != *p_pass ) - { - p_msgs->append( p_conf->get_elem( "chat.msgs.err.changepassword" ) ); - return 0; - } - - if ( *p_newpass != *p_newpass2 ) - { - p_msgs->append( p_conf->get_elem( "chat.msgs.err.changepassword2" ) ); - return 0; - } - p_user->set_pass( *p_newpass ); - } - - p_user->set_email( *p_email ); - p_msgs->append( p_conf->get_elem( "chat.msgs.optionschanged" ) ); + p_msgs->append( p_conf->get_elem( "chat.msgs.err.changepassword" ) ); + return 0; } - else + if ( *p_newpass != *p_newpass2 ) { - p_email->append( p_user->get_email() ); + p_msgs->append( p_conf->get_elem( "chat.msgs.err.changepassword2" ) ); + return 0; } - - return 0; - } + p_user->set_pass( *p_newpass ); + } + + p_user->set_email( *p_email ); + p_msgs->append( p_conf->get_elem( "chat.msgs.optionschanged" ) ); + } + else + { + p_email->append( p_user->get_email() ); + } + + return 0; + } } diff --git a/src/mods/html/yc_register.cpp b/src/mods/html/yc_register.cpp index 19d951a..d0bcc8f 100755 --- a/src/mods/html/yc_register.cpp +++ b/src/mods/html/yc_register.cpp @@ -6,88 +6,91 @@ using namespace std; -extern "C" { - int extern_function(void *v_arg) - { +extern "C" +{ + int extern_function(void *v_arg) + { #ifdef DATABASE - container* c = (container*) v_arg; - dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; - conf* p_conf = (conf*) p_wrap->CONF; - data* p_data = (data*) p_wrap->DATA; - string* p_msgs = &(*((hashmap*) c->elem[1]))["INFO"]; - string* p_nick = &(*((hashmap*) c->elem[1]))["nick"]; - string* p_email = &(*((hashmap*) c->elem[1]))["email"]; - string* p_pass = &(*((hashmap*) c->elem[1]))["pass"]; - string* p_pass2 = &(*((hashmap*) c->elem[1]))["pass2"]; - string* p_request = &(*((hashmap*) c->elem[1]))["request"]; - user* p_user = (user*) c->elem[2]; - string s_nick = *p_nick; - - - p_user->set_name( "!" + s_nick ); - p_user->set_has_sess( false ); - *p_nick = tool::to_lower(*p_nick); - - if ( *p_pass != *p_pass2 ) - { - p_msgs->append( p_conf->get_elem( "chat.msgs.err.registerpassword" ) ); - } - - // prove if the nick is alphanumeric: - else if ( ! tool::is_alpha_numeric( *p_nick ) ) - { - p_msgs->append( p_conf->get_elem( "chat.msgs.err.alpnum" ) ); - } - - // prove if the nick is too long: - else if ( p_nick->length() > tool::string2int( p_conf->get_elem("chat.maxlength.username") ) ) - { - p_msgs->append( p_conf->get_elem( "chat.msgs.err.nicklength" ) ); - } - - else if ( p_pass->length() > tool::string2int( p_conf->get_elem("chat.maxlength.password") ) ) - { - p_msgs->append( p_conf->get_elem( "chat.msgs.err.passlength" ) ); - } - - else if ( p_email->length() > tool::string2int( p_conf->get_elem("chat.maxlength.emailaddress") ) ) - { - p_msgs->append( p_conf->get_elem( "chat.msgs.err.emaillength" ) ); - } - - else - { - hashmap result_map = p_data->select_user_data( *p_nick, "selectnick" ); - if (result_map["nick"] == *p_nick) - { - p_msgs->append( p_conf->get_elem( "chat.msgs.err.registerexists" ) ); - } - - else - { - p_user->set_name( s_nick ); - p_msgs->append( p_conf->get_elem( "chat.msgs.registernick" ) ); - p_request->replace( 0, p_request->length(), p_conf->get_elem("httpd.startsite") ); - - hashmap map_insert = *((hashmap*) c->elem[1]); - map_insert["password"] = *p_pass; - map_insert["color1"] = p_conf->get_elem("chat.html.user.color1"); - map_insert["color2"] = p_conf->get_elem("chat.html.user.color2"); - map_insert["registerdate"] = tool::int2string((int)tool::unixtime()); - - p_user->set_pass( map_insert["password"] ); - p_user->set_email( map_insert["email"] ); - p_user->set_col1( map_insert["color1"] ); - p_user->set_col2( map_insert["color2"] ); - p_user->set_is_reg( 1 ); - p_user->set_status( tool::string2int(p_conf->get_elem("chat.defaultrang") ) ); - - p_data->insert_user_data( *p_nick, "registernick", map_insert ); - } - } - - return 0; + container* c = (container*) v_arg; + dynamic_wrap* p_wrap = (dynamic_wrap*) c->elem[0]; + conf* p_conf = (conf*) p_wrap->CONF; + data* p_data = (data*) p_wrap->DATA; + string* p_msgs = &(*((map*) c->elem[1]))["INFO"]; + string* p_nick = &(*((map*) c->elem[1]))["nick"]; + string* p_email = &(*((map*) c->elem[1]))["email"]; + string* p_pass = &(*((map*) c->elem[1]))["pass"]; + string* p_pass2 = &(*((map*) c->elem[1]))["pass2"]; + string* p_request = &(*((map*) c->elem[1]))["request"]; + user* p_user = (user*) c->elem[2]; + string s_nick = *p_nick; + + + p_user->set_name( "!" + s_nick ); + p_user->set_has_sess( false ); + *p_nick = tool::to_lower(*p_nick); + + if ( *p_pass != *p_pass2 ) + { + p_msgs->append( p_conf->get_elem( "chat.msgs.err.registerpassword" ) ) + ; + } + + // prove if the nick is alphanumeric: + else if ( ! tool::is_alpha_numeric( *p_nick ) ) + { + p_msgs->append( p_conf->get_elem( "chat.msgs.err.alpnum" ) ) + ; + } + + // prove if the nick is too long: + else if ( p_nick->length() > tool::string2int( p_conf->get_elem("chat.maxlength.username") + ) ) + { + p_msgs->append( p_conf->get_elem( "chat.msgs.err.nicklength" ) ); + } + else if ( p_pass->length() > tool::string2int( p_conf->get_elem("chat.maxlength.password") + ) ) + { + p_msgs->append( p_conf->get_elem( "chat.msgs.err.passlength" ) ); + } + else if ( p_email->length() > tool::string2int( p_conf->get_elem("chat.maxlength.emailaddress") + ) ) + { + p_msgs->append( p_conf->get_elem( "chat.msgs.err.emaillength" ) ); + } + else + { + hashmap result_map = p_data->select_user_data( *p_nick, "selectnick" ); + if (result_map["nick"] == *p_nick) + { + p_msgs->append( p_conf->get_elem( "chat.msgs.err.registerexists" ) ); + } + else + { + p_user->set_name( s_nick ); + p_msgs->append( p_conf->get_elem( "chat.msgs.registernick" ) ); + p_request->replace( 0, p_request->length(), p_conf->get_elem("httpd.startsite") ); + + map map_insert = *((map*) c->elem[1]); + map_insert["password"] = *p_pass; + map_insert["color1"] = p_conf->get_elem("chat.html.user.color1"); + map_insert["color2"] = p_conf->get_elem("chat.html.user.color2"); + map_insert["registerdate"] = tool::int2string((int)tool::unixtime()); + + p_user->set_pass( map_insert["password"] ); + p_user->set_email( map_insert["email"] ); + p_user->set_col1( map_insert["color1"] ); + p_user->set_col2( map_insert["color2"] ); + p_user->set_is_reg( 1 ); + p_user->set_status( tool::string2int(p_conf->get_elem("chat.defaultrang") ) ); + + p_data->insert_user_data( *p_nick, "registernick", map_insert ); + } + } + + return 0; #endif - } + + } } -- cgit v1.2.3