Commit 14f595e3 authored by jan.koester's avatar jan.koester
Browse files

some improvements

parent c01ff34e
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -59,6 +59,9 @@ bool blogi::Auth::login(const char* username, const char* password, std::string&
}

bool blogi::Auth::locallogin(const char* username, const char* password, std::string& ssid){
    blogi::SQL sql;
    blogi::DBResult res;
    sql = "SELECT sid,id,username FROM users WHERE username='"; sql.escaped(username) << "' LIMIT 1;";
    return false;
}

@@ -185,7 +188,7 @@ LDAPLOGINUSERFOUND:
        sql = "SELECT sid,id FROM users WHERE sid='"; sql << sid << "' LIMIT 1;";

        if (_dbconn->exec(&sql,res) < 1) {
           sql <<  "INSERT INTO users (sid,username,email) VALUES ('" << sid <<"','" << username << "','" << email <<"');";
           sql <<  "INSERT INTO users (sid,username,email,authprovider) VALUES ('" << sid <<"','" << username << "','" << email <<"','1');";
           _dbconn->exec(&sql,res);
        };

+7 −1
Original line number Diff line number Diff line
@@ -388,7 +388,13 @@ int main(int argc, char** argv){
    blogi::Config *cins;
    cins=blogi::Config::getInstance();

    if(config)
        cins->loadconfig(config);
    else
        return -1;

    if(!cins)
        return -1;

    HttpConD(cins->gethttpaddr(),
             cins->gethttpport(),
+50 −17
Original line number Diff line number Diff line
@@ -53,73 +53,106 @@ void blogi::Config::loadconfig(const char* path){


const char * blogi::Config::getsiteurl(){
    if(_PlsConfig->getKey("/BLOGI/HTTP/URL"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/HTTP/URL"),0);
    return nullptr;
}


const char * blogi::Config::getprefix(){
    if(_PlsConfig->getKey("/BLOGI/HTTP/PREFIX"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/HTTP/PREFIX"),0);
    return nullptr;
}

const char * blogi::Config::gettemplate(){
    if(_PlsConfig->getKey("/BLOGI/TEMPLATE"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/TEMPLATE"),0);
    return nullptr;
}

const char * blogi::Config::getstartpage(){
    if(_PlsConfig->getKey("/BLOGI/STARTPAGE"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/STARTPAGE"),0);
    return nullptr;
}

const char * blogi::Config::buildurl(const char *url,char *buffer,size_t size){
    if(!getprefix())
        return nullptr;
    snprintf(buffer,size,"%s/%s",getprefix(),url);
    return buffer;
}

const char *blogi::Config::getplgdir(size_t el){
    if(_PlsConfig->getKey("/BLOGI/PLUGINDIR"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/PLUGINDIR"),el);
    return nullptr;
}

size_t blogi::Config::getplgdirs(){
    if(_PlsConfig->getKey("/BLOGI/PLUGINDIR"))
        return _PlsConfig->getElements(_PlsConfig->getKey("/BLOGI/PLUGINDIR"));
    return 0;
}

const char * blogi::Config::getdbopts(){
    if(_PlsConfig->getKey("/BLOGI/DATABASE/CONNECTION"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/DATABASE/CONNECTION"),0);
    return nullptr;
}

const char * blogi::Config::getlpdomain(){
    if(_PlsConfig->getKey("/BLOGI/LDAP/DOMAIN"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/LDAP/DOMAIN"),0);
    return nullptr;
}

const char *blogi::Config::getlphost(){
    if(_PlsConfig->getKey("/BLOGI/LDAP/HOST"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/LDAP/HOST"),0);
    return nullptr;
}

const char * blogi::Config::getlpbasedn(){
    if(_PlsConfig->getKey("/BLOGI/LDAP/BASEDN"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/LDAP/BASEDN"),0);
    return nullptr;
}

const char * blogi::Config::getlpfilter(){
    if(_PlsConfig->getKey("/BLOGI/LDAP/BASEDN"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/LDAP/LOGINFILTER"),0);
    return nullptr;
}

const char * blogi::Config::gethttpaddr(){
    if(_PlsConfig->getKey("/BLOGI/HTTP/BIND"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/HTTP/BIND"),0);
    return nullptr;
}

int blogi::Config::gethttpport(){
    if(_PlsConfig->getKey("/BLOGI/HTTP/PORT"))
        return _PlsConfig->getIntValue(_PlsConfig->getKey("/BLOGI/HTTP/PORT"),0);
    return -1;
}

int blogi::Config::gethttpmaxcon(){
    if(_PlsConfig->getKey("/BLOGI/HTTP/MAXCON"))
        return _PlsConfig->getIntValue(_PlsConfig->getKey("/BLOGI/HTTP/MAXCON"),0);
    return -1;
}

const char * blogi::Config::getRedisHost(){
    if(_PlsConfig->getKey("/BLOGI/REDIS/HOST"))
        return _PlsConfig->getValue(_PlsConfig->getKey("/BLOGI/REDIS/HOST"),0);
    return nullptr;
}

int blogi::Config::getRedisPort(){
    if(_PlsConfig->getKey("/BLOGI/REDIS/PORT"))
        return _PlsConfig->getIntValue(_PlsConfig->getKey("/BLOGI/REDIS/PORT"),0);
    return -1;
}

+1 −0
Original line number Diff line number Diff line
@@ -88,6 +88,7 @@ bool blogi::SQL::empty(){

blogi::DBResult::DBResult(){
    firstRow=nullptr;
    columns=0;
}

blogi::DBResult::~DBResult(){
+0 −1
Original line number Diff line number Diff line
@@ -64,7 +64,6 @@ namespace blogi {
            }

            res.firstRow=nullptr;

            DBResult::Data *lastdat;

            res.columns=PQnfields(pres);