#ifndef CONNEXION_H
#define CONNEXION_H

#include <QtCore>
#include <QtSql>
#include <QSqlDatabase>
#include <QMessageBox>



//lance la connection a DrTuxTest
bool CreateConnection()
{
extern QString g_pathabsolu;

QString host;
QString utilisateur;
QString mapoule;
QStringList liste;
QStringList hostuser;

const QString chemin = ""+g_pathabsolu+"/utilisateur.ini";

QFile fichier(""+chemin+"");
if(!fichier.open(QIODevice::ReadWrite | QIODevice::Text)){
QMessageBox::warning(0,QObject::tr("erreur"),QObject::trUtf8("le fichier utilisateur.ini n'est pas accessible"),QMessageBox::Ok);}

QTextStream loire(&fichier);

while(!loire.atEnd()){
QString ligne = loire.readLine();
hostuser << ""+ligne+"";
}

host = hostuser[0];
QStringList hostlist = host.split("=");
host = hostlist[1];
utilisateur = hostuser[1];
QStringList utillist = utilisateur.split("=");
utilisateur = utillist[1];
mapoule = hostuser[2];
QStringList maplist = mapoule.split("=");
mapoule = maplist[1];

///////si le mot de passe est vide
if(mapoule == ""){
QSqlDatabase db = QSqlDatabase :: addDatabase("QMYSQL");
db.setHostName(""+host+"");
db.setDatabaseName("DrTuxTest");
db.setUserName(""+utilisateur+"");
db.setPassword("");

if (!db.open()) {
	QString erreur = db.lastError().text();
	std::string erreurstring = erreur.toStdString();
	const char *erreurchar = erreurstring.c_str();

	QMessageBox::critical(0,QObject::tr("Erreur1 Lecture_Alarmes"),QObject::trUtf8("Erreur ouverture de base,\n si vous avez un mot de passe mysql,\nrenseignez le .ini par set_bases\nVeuillez lancer set_bases.",erreurchar),QMessageBox::Ok|QMessageBox::Close);

return false;
}

return true;
}

else{
/*QString lettre;
QString hellothatsme;
int chiffremot;
int chiffre;
QString mot;
chiffremot = mapoule.mid(4,1).toInt();
chiffre = mapoule.mid(3,1).toInt();
liste << ""+mapoule.mid(10+chiffre,1)+"";
mot = liste[0];

int j= 1;
for(int i=0; i< chiffremot-1 ;i++){
lettre = mapoule.mid(j*3+10+chiffre,1);
liste  << ""+lettre+"";
j++;
}
QString motus;
int k = 1;
for(int i=0; i< chiffremot-1 ;i++){
motus += liste[k];
k++;
}
hellothatsme = mot+motus;*/
///////////////////////////////////////////////////
QString motdepasse = mapoule;//hellothatsme;
motdepasse = motdepasse.replace(QRegExp("\\n"),"");
QSqlDatabase db = QSqlDatabase :: addDatabase("QMYSQL");
db.setHostName(""+host+"");
db.setDatabaseName("DrTuxTest");
db.setUserName(""+utilisateur+"");
db.setPassword(""+motdepasse+"");

if (!db.open()) {
	QString erreur = db.lastError().text();
	std::string erreurstring = erreur.toStdString();
	const char *erreurchar = erreurstring.c_str();

	QMessageBox::critical(0,QObject::tr("Erreur2"),QObject::trUtf8("Erreur ouverture de base,\n si vous avez un mot de passe mysql\nrenseignez le .ini par set_bases",erreurchar),QMessageBox::Close);
	return false;
}

return true;
}
}

#endif
