| 873 | |
| 874 | |
| 875 | void Settings::saveHTTPHeader(QString host, QString header) |
| 876 | { |
| 877 | QSettings settings(SETTINGSFILE, QSettings::IniFormat); |
| 878 | |
| 879 | QDEBUG() << "saving" << host << ":" << header; |
| 880 | |
| 881 | |
| 882 | // Search for a duplicate and remove it. |
| 883 | auto keyvalue = Settings::header2keyvalue(header); |
| 884 | QStringList hostHeaders = Settings::getHTTPHeaders(host); |
| 885 | for(int i=0; i<hostHeaders.size(); i++) { |
| 886 | auto keyvaluecheck = Settings::header2keyvalue(hostHeaders[i]); |
| 887 | if(keyvalue.first == keyvaluecheck.first) { |
| 888 | hostHeaders.removeAt(i); |
| 889 | break; |
| 890 | } |
| 891 | } |
| 892 | hostHeaders.append(header); |
| 893 | hostHeaders.removeDuplicates(); |
| 894 | |
| 895 | settings.setValue(Settings::HTTPHEADERINDEX + host, hostHeaders); |
| 896 | |
| 897 | |
| 898 | QStringList allHosts = settings.value(Settings::ALLHTTPSHOSTS, QStringList()).toStringList(); |
| 899 | allHosts.append(host); |
| 900 | allHosts.removeDuplicates(); |
| 901 | settings.setValue(Settings::ALLHTTPSHOSTS, allHosts); |
| 902 | |
| 903 | loadCredentialTable(); |
| 904 | |
| 905 | } |
| 906 | |
| 907 | |
| 908 | |