File indexing completed on 2024-05-12 05:00:04

0001 // /* This file is part of the KDE project
0002 //     SPDX-FileCopyrightText: 2023 Stefano Crocco <stefano.crocco@alice.it>
0003 // 
0004 //     SPDX-License-Identifier: LGPL-2.0-or-later
0005 // */
0006 
0007 #include "cookiejar.h"
0008 
0009 #include <KConfigGroup>
0010 
0011 using namespace KonqInterfaces;
0012 
0013 CookieJar::CookieJar(QObject* parent) : QObject(parent)
0014 {
0015 }
0016 
0017 CookieJar::~CookieJar()
0018 {
0019 }
0020 
0021 CookieJar::CookieAdvice CookieJar::intToAdvice(int num, CookieAdvice defaultVal)
0022 {
0023     if (num < 0 || num > static_cast<int>(CookieAdvice::Ask)) { //Ask is the last value
0024         return defaultVal;
0025     }
0026     return static_cast<CookieAdvice>(num);
0027 }
0028 
0029 CookieJar::CookieAdvice CookieJar::readAdviceConfigEntry(const KConfigGroup& grp, const char* key, CookieAdvice defaultVal)
0030 {
0031     int val = grp.readEntry(key, -1);
0032     return intToAdvice(val, defaultVal);
0033 }
0034 
0035 void CookieJar::writeAdviceConfigEntry(KConfigGroup& grp, const char* key, CookieAdvice advice)
0036 {
0037     grp.writeEntry(key, static_cast<int>(advice));
0038 }
0039 
0040 void CookieJar::removeCookies(const QVector<QNetworkCookie>& cookies)
0041 {
0042     for (const QNetworkCookie &c : cookies) {
0043         removeCookie(c);
0044     }
0045 }
0046