/***************************************************************************
- * Copyright (C) 2005-07 by the Quassel IRC Team *
+ * Copyright (C) 2005-08 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
-#include "util.h"
+#include <QCoreApplication>
#include <QDebug>
#include <QTextCodec>
+#include "util.h"
+
class QMetaMethod;
QString nickFromMask(QString mask) {
QByteArray sig(method.signature());
return sig.left(sig.indexOf("("));
}
+
+QDir quasselDir() {
+ // kinda ugly, but I currently see no other way to do that
+#ifdef Q_OS_WIN32
+ QString quasselDir = qgetenv("APPDATA") + "/quassel/";
+#else
+ QString quasselDir = QDir::homePath() + "/.quassel/";
+#endif
+
+ QDir qDir(quasselDir);
+ if(!qDir.exists(quasselDir)) {
+ if(!qDir.mkpath(quasselDir)) {
+ qCritical() << "Unable to create Quassel data directory:" << qPrintable(qDir.absolutePath());
+ }
+ }
+
+ return qDir;
+}
+
+
+QString secondsToString(int timeInSeconds) {
+ QList< QPair<int, QString> > timeUnit;
+ timeUnit.append(qMakePair(365*60*60, QCoreApplication::translate("Quassel::secondsToString()", "year")));
+ timeUnit.append(qMakePair(24*60*60, QCoreApplication::translate("Quassel::secondsToString()", "day")));
+ timeUnit.append(qMakePair(60*60, QCoreApplication::translate("Quassel::secondsToString()", "h")));
+ timeUnit.append(qMakePair(60, QCoreApplication::translate("Quassel::secondsToString()", "min")));
+ timeUnit.append(qMakePair(1, QCoreApplication::translate("Quassel::secondsToString()", "sec")));
+
+ QString returnString;
+ for(int i=0; i < timeUnit.size(); i++) {
+ int n = timeInSeconds / timeUnit[i].first;
+ if(n > 0) {
+ returnString += QString("%1 %2 ").arg(QString::number(n), timeUnit[i].second);
+ }
+ timeInSeconds = timeInSeconds % timeUnit[i].first;
+ }
+ return returnString;
+}