void FileNameSearchProtocol::listDir(const KUrl& url) { cleanup(); m_checkContent = url.queryItem("checkContent"); m_literal = url.queryItem("literal"); m_checkType = url.queryItem("checkType"); QString search = url.queryItem("search"); if (!search.isEmpty() && m_literal == "yes") { search = QRegExp::escape(search); } if (!search.isEmpty()) { m_regExp = new QRegExp(search, Qt::CaseInsensitive); } const QString urlString = url.queryItem("url"); searchDirectory(KUrl(urlString)); cleanup(); finished(); }
void HTTPTracker::onAnnounceResult(const KUrl& url, const QByteArray& data, KJob* j) { timer.stop(); active_job = 0; if (j->error() && data.size() == 0) { QString err = error; error.clear(); if (err.isEmpty()) err = j->errorString(); Out(SYS_TRK | LOG_IMPORTANT) << "Error : " << err << endl; if (url.queryItem("event") != "stopped") { failures++; failed(err); } else { status = TRACKER_IDLE; stopDone(); } } else { if (url.queryItem("event") != "stopped") { try { if (updateData(data)) { failures = 0; peersReady(this); request_time = QDateTime::currentDateTime(); status = TRACKER_OK; if (url.queryItem("event") == "started") started = true; if (started) reannounce_timer.start(interval * 1000); requestOK(); } } catch (bt::Error & err) { failures++; failed(i18n("Invalid response from tracker")); } event = QString(); } else { status = TRACKER_IDLE; failures = 0; stopDone(); } } doAnnounceQueue(); }
Playdar::ProxyResolver::ProxyResolver( Collections::PlaydarCollection *collection, const KUrl &url, MetaProxy::TrackPtr track ) : m_collection( collection ) , m_proxyTrack( track ) , m_controller( new Playdar::Controller( true ) ) , m_query() { connect( m_controller, SIGNAL(playdarError(Playdar::Controller::ErrorState)), this, SLOT(slotPlaydarError(Playdar::Controller::ErrorState)) ); connect( m_controller, SIGNAL(queryReady(Playdar::Query*)), this, SLOT(collectQuery(Playdar::Query*)) ); m_controller->resolve( url.queryItem( "artist" ), url.queryItem( "album" ), url.queryItem( "title" ) ); }
static KUrl findUrlForAccount( const KMail::ImapAccountBase * a ) { assert( a ); const SieveConfig sieve = a->sieveConfig(); if ( !sieve.managesieveSupported() ) return KUrl(); if ( sieve.reuseConfig() ) { // assemble Sieve url from the settings of the account: KUrl u; u.setProtocol( "sieve" ); u.setHost( a->host() ); u.setUser( a->login() ); u.setPass( a->passwd() ); u.setPort( sieve.port() ); u.addQueryItem( "x-mech", a->auth() == "*" ? "PLAIN" : a->auth() ); //translate IMAP LOGIN to PLAIN if ( !a->useSSL() && !a->useTLS() ) u.addQueryItem( "x-allow-unencrypted", "true" ); u.setFileName( sieve.vacationFileName() ); return u; } else { KUrl u = sieve.alternateURL(); if ( u.protocol().toLower() == "sieve" && !a->useSSL() && !a->useTLS() && u.queryItem("x-allow-unencrypted").isEmpty() ) u.addQueryItem( "x-allow-unencrypted", "true" ); u.setFileName( sieve.vacationFileName() ); return u; } }
bool SocketConnectionBackend::connectToRemote(const KUrl &url) { Q_ASSERT(state == Idle); Q_ASSERT(!socket); Q_ASSERT(!localServer); // !tcpServer as well if (mode == LocalSocketMode) { KLocalSocket *sock = new KLocalSocket(this); QString path = url.path(); #if 0 // TODO: Activate once abstract socket support is implemented in Qt. KLocalSocket::LocalSocketType type = KLocalSocket::UnixSocket; if (url.queryItem(QLatin1String("abstract")) == QLatin1String("1")) type = KLocalSocket::AbstractUnixSocket; #endif sock->connectToPath(path); socket = sock; } else { socket = new QTcpSocket(this); socket->connectToHost(url.host(),url.port()); if (!socket->waitForConnected(1000)) { state = Idle; kDebug() << "could not connect to " << url; return false; } } connect(socket, SIGNAL(readyRead()), SLOT(socketReadyRead())); connect(socket, SIGNAL(disconnected()), SLOT(socketDisconnected())); state = Connected; return true; }
void TorrentPostHandler::post(HttpClientHandler* hdlr, const QHttpRequestHeader& hdr, const QByteArray& data) { const char* ptr = data.data(); int len = data.size(); int pos = QString(data).indexOf("\r\n\r\n"); if (pos == -1 || pos + 4 >= len) { HttpResponseHeader rhdr(500); server->setDefaultResponseHeaders(rhdr, "text/html", false); hdlr->send500(rhdr, i18n("Invalid data received")); return; } // save torrent to a temporary file QString save_file = kt::DataDir() + "webgui_load_torrent"; QFile tmp_file(save_file); if (!tmp_file.open(QIODevice::WriteOnly)) { HttpResponseHeader rhdr(500); server->setDefaultResponseHeaders(rhdr, "text/html", false); hdlr->send500(rhdr, i18n("Failed to open temporary file")); return; } QDataStream out(&tmp_file); out.writeRawData(ptr + (pos + 4), len - (pos + 4)); tmp_file.close(); Out(SYS_WEB | LOG_NOTICE) << "Loading file " << save_file << endl; core->loadSilently(KUrl(save_file), QString()); KUrl url; url.setEncodedPathAndQuery(hdr.path()); QString page = url.queryItem("page"); // there needs to be a page to send back if (page.isEmpty()) { server->redirectToLoginPage(hdlr); } else { // redirect to page mentioned in page parameter HttpResponseHeader rhdr(301); server->setDefaultResponseHeaders(rhdr, "text/html", true); rhdr.setValue("Location", "/" + page); hdlr->send(rhdr, QByteArray()); } }
bool AllNotesListJob::shouldStartNewJob(const KUrl &prev, const KUrl &next) { Q_UNUSED(next); Q_D(AllNotesListJob); const QString since = prev.queryItem("since"); if (since.isEmpty()) { kDebug() << "Aborting notes fetching, no date range found in URL!"; return false; } KDateTime sinceTime; sinceTime.setTime_t(since.toLongLong()); if (!sinceTime.isValid()) { kDebug() << "Aborting notes fetching, invalid date range found in URL!"; return false; } return (sinceTime >= d->lowerLimit); }
static void decode(const KUrl &url, Misc::TFont &font, bool &system) { font=FC::decode(url); system=url.queryItem("sys")=="true"; }