Compare commits
1 Commits
release-2.
...
release-2.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b024820a30 |
2
AUTHORS
@@ -76,7 +76,7 @@ Translations authors:
|
|||||||
- Croatian: Oliver Mucafir (oliver.untwist@gmail.com)
|
- Croatian: Oliver Mucafir (oliver.untwist@gmail.com)
|
||||||
- Czech: Jirka Vilim (web@tets.cz)
|
- Czech: Jirka Vilim (web@tets.cz)
|
||||||
- Danish: Mathias Nielsen (comoneo@gmail.com)
|
- Danish: Mathias Nielsen (comoneo@gmail.com)
|
||||||
- Dutch: Pieter Heyvaert (pieter_heyvaert@hotmail.com)
|
- Dutch: Joost Schipper (heavyjoost@users.sourceforge.net)
|
||||||
- English: Christophe Dumez (chris@qbittorrent.org)
|
- English: Christophe Dumez (chris@qbittorrent.org)
|
||||||
- Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net)
|
- Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net)
|
||||||
- French: Christophe Dumez (chris@qbittorrent.org)
|
- French: Christophe Dumez (chris@qbittorrent.org)
|
||||||
|
|||||||
40
Changelog
@@ -1,34 +1,4 @@
|
|||||||
* Thu Jan 6 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.5.4
|
* Unreleased - Christophe Dumez <chris@qbittorrent.org> - v2.5.0
|
||||||
- BUGFIX: Added --enable-debug parameter to the configure script
|
|
||||||
- BUGFIX: Prioritize first and last pieces when sequential download is enabled
|
|
||||||
- BUGFIX: Some encoding fixes (Windows)
|
|
||||||
- BUGFIX: Display default password on stdout when using nox
|
|
||||||
- BUGFIX: Fix issues when search engines results contain a '|'
|
|
||||||
- BUGFIX: Avoid possible crash on exit when the IP filter is enabled (closes #695945)
|
|
||||||
|
|
||||||
* Sat Jan 1 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.5.3
|
|
||||||
- BUGFIX: Fix priority up/down for multiple torrents at the same time (closes #692184)
|
|
||||||
- BUGFIX: Make sure the number of torrents is properly set on startup (closes #694135)
|
|
||||||
- BUGFIX: Fix scan directories saving (closes #694768)
|
|
||||||
- BUGFIX: Remove empty folders on torrent soft deletion (closes #695174)
|
|
||||||
- BUGFIX: Make sure the main window has focus on startup
|
|
||||||
- BUGFIX: Fix ampersand display in search tabs (closes #695715)
|
|
||||||
|
|
||||||
* Sun Dec 19 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.5.2
|
|
||||||
- BUGFIX: Fix alternative speed icon staying pressed when disabled
|
|
||||||
- BUGFIX: Fix slot warning on startup
|
|
||||||
- BUGFIX: Fix alignment issues in program preferences
|
|
||||||
- BUGFIX: Make sure we don't move completed torrent to the temp directory
|
|
||||||
for checking (closes #602938)
|
|
||||||
- BUGFIX: Fix some 'File Not found' warning in the Web UI
|
|
||||||
- BUGFIX: Fix dangerous usage of vector iterator
|
|
||||||
- BUGFIX: No longer expand the first folder in the torrent content list
|
|
||||||
- BUGFIX: Fixes possible crash in the RSS Downloader dialog (closes #691426)
|
|
||||||
|
|
||||||
* Sun Dec 5 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.5.1
|
|
||||||
- BUGFIX: Fix possible crash when right-clicking on a torrent
|
|
||||||
|
|
||||||
* Sun Dec 5 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.5.0
|
|
||||||
- FEATURE: qBittorrent can now act as a tracker
|
- FEATURE: qBittorrent can now act as a tracker
|
||||||
- FEATURE: New and improved RSS feed automated downloader
|
- FEATURE: New and improved RSS feed automated downloader
|
||||||
- FEATURE: Added feature to shutdown qbittorrent on torrents completion
|
- FEATURE: Added feature to shutdown qbittorrent on torrents completion
|
||||||
@@ -44,18 +14,10 @@
|
|||||||
- FEATURE: Optimized and improved the peer country resolution code
|
- FEATURE: Optimized and improved the peer country resolution code
|
||||||
- FEATURE: Download first/last pieces first when sequential download is
|
- FEATURE: Download first/last pieces first when sequential download is
|
||||||
enabled (Thanks Ahmad)
|
enabled (Thanks Ahmad)
|
||||||
- FEATURE: Download first/last pieces first now applies to all media files
|
|
||||||
in the torrent (Thanks Ahmad)
|
|
||||||
- BUGFIX: Fix SOCKS5 proxy authentication in search engine(closes #680072)
|
- BUGFIX: Fix SOCKS5 proxy authentication in search engine(closes #680072)
|
||||||
- BUGFIX: Fix two advanced settings (ignore limits on LAN and protocol
|
|
||||||
overhead inclusion in rate limiter)
|
|
||||||
- BUGFIX: Fix strict super seeding (was not working)
|
|
||||||
- BUGFIX: Improve magnet save path handling (closes #683395)
|
|
||||||
- BUGFIX: Disable overwrite confirmation in torrent addition dialog (closes # 685269)
|
|
||||||
- COSMETIC: Replaced message box by on-screen notification for download errors
|
- COSMETIC: Replaced message box by on-screen notification for download errors
|
||||||
- COSMETIC: Improved the torrent creation tool appearance
|
- COSMETIC: Improved the torrent creation tool appearance
|
||||||
- COSMETIC: Use country flags by Mark James (Thanks to Dmytro Pukha)
|
- COSMETIC: Use country flags by Mark James (Thanks to Dmytro Pukha)
|
||||||
- COSMETIC: Use bigger alternative speed icon
|
|
||||||
- OTHERS: Dropped support for Qt <= 4.4
|
- OTHERS: Dropped support for Qt <= 4.4
|
||||||
|
|
||||||
* Tue Aug 24 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.0
|
* Tue Aug 24 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.0
|
||||||
|
|||||||
37
configure
vendored
@@ -18,11 +18,9 @@ Main options:
|
|||||||
--help This help text.
|
--help This help text.
|
||||||
|
|
||||||
Dependency options:
|
Dependency options:
|
||||||
--enable-debug Enable debug mode
|
|
||||||
--disable-gui Disable qBittorrent
|
--disable-gui Disable qBittorrent
|
||||||
Graphical user interface for
|
Graphical user interface for
|
||||||
headless running
|
headless running
|
||||||
--enable-debug Enable debug mode
|
|
||||||
--with-libboost-inc=[path] Path to libboost include
|
--with-libboost-inc=[path] Path to libboost include
|
||||||
files
|
files
|
||||||
--with-libboost-lib=[path] Path to libboost library
|
--with-libboost-lib=[path] Path to libboost library
|
||||||
@@ -34,6 +32,7 @@ Dependency options:
|
|||||||
executable (please follow
|
executable (please follow
|
||||||
instructions in
|
instructions in
|
||||||
src/geoip/README)
|
src/geoip/README)
|
||||||
|
--disable-qtsingleapplication Disable use of libboost
|
||||||
--with-qtsingleapplication=[system|shipped] Use the shipped
|
--with-qtsingleapplication=[system|shipped] Use the shipped
|
||||||
qtsingleapplication library
|
qtsingleapplication library
|
||||||
or the system one
|
or the system one
|
||||||
@@ -153,21 +152,11 @@ while [ $# -gt 0 ]; do
|
|||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
|
||||||
--enable-debug)
|
|
||||||
QC_ENABLE_DEBUG="Y"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
|
|
||||||
--disable-gui)
|
--disable-gui)
|
||||||
QC_DISABLE_GUI="Y"
|
QC_DISABLE_GUI="Y"
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
|
||||||
--enable-debug)
|
|
||||||
QC_ENABLE_DEBUG="Y"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
|
|
||||||
--with-libboost-inc=*)
|
--with-libboost-inc=*)
|
||||||
QC_WITH_LIBBOOST_INC=$optarg
|
QC_WITH_LIBBOOST_INC=$optarg
|
||||||
shift
|
shift
|
||||||
@@ -193,6 +182,11 @@ while [ $# -gt 0 ]; do
|
|||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
--disable-qtsingleapplication)
|
||||||
|
QC_DISABLE_qtsingleapplication="Y"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
|
||||||
--with-qtsingleapplication=*)
|
--with-qtsingleapplication=*)
|
||||||
QC_WITH_QTSINGLEAPPLICATION=$optarg
|
QC_WITH_QTSINGLEAPPLICATION=$optarg
|
||||||
shift
|
shift
|
||||||
@@ -219,14 +213,13 @@ echo PREFIX=$PREFIX
|
|||||||
echo BINDIR=$BINDIR
|
echo BINDIR=$BINDIR
|
||||||
echo DATADIR=$DATADIR
|
echo DATADIR=$DATADIR
|
||||||
echo EX_QTDIR=$EX_QTDIR
|
echo EX_QTDIR=$EX_QTDIR
|
||||||
echo QC_ENABLE_DEBUG=$QC_ENABLE_DEBUG
|
|
||||||
echo QC_DISABLE_GUI=$QC_DISABLE_GUI
|
echo QC_DISABLE_GUI=$QC_DISABLE_GUI
|
||||||
echo QC_ENABLE_DEBUG=$QC_ENABLE_DEBUG
|
|
||||||
echo QC_WITH_LIBBOOST_INC=$QC_WITH_LIBBOOST_INC
|
echo QC_WITH_LIBBOOST_INC=$QC_WITH_LIBBOOST_INC
|
||||||
echo QC_WITH_LIBBOOST_LIB=$QC_WITH_LIBBOOST_LIB
|
echo QC_WITH_LIBBOOST_LIB=$QC_WITH_LIBBOOST_LIB
|
||||||
echo QC_DISABLE_libnotify=$QC_DISABLE_libnotify
|
echo QC_DISABLE_libnotify=$QC_DISABLE_libnotify
|
||||||
echo QC_DISABLE_geoip_database=$QC_DISABLE_geoip_database
|
echo QC_DISABLE_geoip_database=$QC_DISABLE_geoip_database
|
||||||
echo QC_WITH_GEOIP_DATABASE_EMBEDDED=$QC_WITH_GEOIP_DATABASE_EMBEDDED
|
echo QC_WITH_GEOIP_DATABASE_EMBEDDED=$QC_WITH_GEOIP_DATABASE_EMBEDDED
|
||||||
|
echo QC_DISABLE_qtsingleapplication=$QC_DISABLE_qtsingleapplication
|
||||||
echo QC_WITH_QTSINGLEAPPLICATION=$QC_WITH_QTSINGLEAPPLICATION
|
echo QC_WITH_QTSINGLEAPPLICATION=$QC_WITH_QTSINGLEAPPLICATION
|
||||||
echo
|
echo
|
||||||
fi
|
fi
|
||||||
@@ -333,9 +326,7 @@ cat >$1/modules.cpp <<EOT
|
|||||||
/*
|
/*
|
||||||
-----BEGIN QCMOD-----
|
-----BEGIN QCMOD-----
|
||||||
name: Qt >= 4.5
|
name: Qt >= 4.5
|
||||||
arg: enable-debug, Enable debug mode
|
|
||||||
arg: disable-gui, Disable qBittorrent Graphical user interface for headless running
|
arg: disable-gui, Disable qBittorrent Graphical user interface for headless running
|
||||||
arg: enable-debug, Enable debug mode
|
|
||||||
-----END QCMOD-----
|
-----END QCMOD-----
|
||||||
*/
|
*/
|
||||||
class qc_qt4 : public ConfObj
|
class qc_qt4 : public ConfObj
|
||||||
@@ -346,14 +337,9 @@ public:
|
|||||||
QString shortname() const { return "Qt 4.5"; }
|
QString shortname() const { return "Qt 4.5"; }
|
||||||
bool exec()
|
bool exec()
|
||||||
{
|
{
|
||||||
// NOX mode
|
|
||||||
if(!conf->getenv("QC_DISABLE_GUI").isEmpty()) {
|
if(!conf->getenv("QC_DISABLE_GUI").isEmpty()) {
|
||||||
conf->addExtra("CONFIG += nox");
|
conf->addExtra("CONFIG += nox");
|
||||||
}
|
}
|
||||||
// Debug mode
|
|
||||||
if(!conf->getenv("QC_ENABLE_DEBUG").isEmpty()) {
|
|
||||||
conf->addExtra("CONFIG += debug");
|
|
||||||
}
|
|
||||||
return(QT_VERSION >= 0x040500);
|
return(QT_VERSION >= 0x040500);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -623,7 +609,7 @@ public:
|
|||||||
#line 1 "qtsingleapplication.qcm"
|
#line 1 "qtsingleapplication.qcm"
|
||||||
/*
|
/*
|
||||||
-----BEGIN QCMOD-----
|
-----BEGIN QCMOD-----
|
||||||
name: qtsingleapplication
|
name: libboost
|
||||||
arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one
|
arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one
|
||||||
-----END QCMOD-----
|
-----END QCMOD-----
|
||||||
*/
|
*/
|
||||||
@@ -669,7 +655,7 @@ cat >$1/modules_new.cpp <<EOT
|
|||||||
o->required = false;
|
o->required = false;
|
||||||
o->disabled = false;
|
o->disabled = false;
|
||||||
o = new qc_qtsingleapplication(conf);
|
o = new qc_qtsingleapplication(conf);
|
||||||
o->required = true;
|
o->required = false;
|
||||||
o->disabled = false;
|
o->disabled = false;
|
||||||
|
|
||||||
EOT
|
EOT
|
||||||
@@ -1616,14 +1602,13 @@ export PREFIX
|
|||||||
export BINDIR
|
export BINDIR
|
||||||
export DATADIR
|
export DATADIR
|
||||||
export EX_QTDIR
|
export EX_QTDIR
|
||||||
export QC_ENABLE_DEBUG
|
|
||||||
export QC_DISABLE_GUI
|
export QC_DISABLE_GUI
|
||||||
export QC_ENABLE_DEBUG
|
|
||||||
export QC_WITH_LIBBOOST_INC
|
export QC_WITH_LIBBOOST_INC
|
||||||
export QC_WITH_LIBBOOST_LIB
|
export QC_WITH_LIBBOOST_LIB
|
||||||
export QC_DISABLE_libnotify
|
export QC_DISABLE_libnotify
|
||||||
export QC_DISABLE_geoip_database
|
export QC_DISABLE_geoip_database
|
||||||
export QC_WITH_GEOIP_DATABASE_EMBEDDED
|
export QC_WITH_GEOIP_DATABASE_EMBEDDED
|
||||||
|
export QC_DISABLE_qtsingleapplication
|
||||||
export QC_WITH_QTSINGLEAPPLICATION
|
export QC_WITH_QTSINGLEAPPLICATION
|
||||||
export QC_VERBOSE
|
export QC_VERBOSE
|
||||||
rm -rf .qconftemp
|
rm -rf .qconftemp
|
||||||
|
|||||||
136
install.os2
@@ -1,136 +0,0 @@
|
|||||||
QBittorrent installation
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
0. CONTENTS OF THIS FILE
|
|
||||||
========================
|
|
||||||
|
|
||||||
1. INTRODUCTION
|
|
||||||
|
|
||||||
2. REQUIREMENTS
|
|
||||||
|
|
||||||
3. INSTALLATION
|
|
||||||
|
|
||||||
4. CONTACT
|
|
||||||
|
|
||||||
5. CREDITS
|
|
||||||
|
|
||||||
6. SUPPORT AND DONATIONS
|
|
||||||
|
|
||||||
7. HISTORY
|
|
||||||
|
|
||||||
|
|
||||||
1. INTRODUCTION
|
|
||||||
===============
|
|
||||||
|
|
||||||
Welcome to QBittorrent port for OS/2 and eComStation.
|
|
||||||
|
|
||||||
|
|
||||||
2. REQUIREMENTS
|
|
||||||
===============
|
|
||||||
|
|
||||||
* klibc 0.6.3 or later
|
|
||||||
|
|
||||||
ftp://ftp.netlabs.org/pub/gcc/libc-0_6_3-csd3.wpi
|
|
||||||
|
|
||||||
* openssl 1.0
|
|
||||||
|
|
||||||
ftp://ftp.netlabs.org/pub/unixos2/ssl10.zip
|
|
||||||
|
|
||||||
* Qt4 dll
|
|
||||||
|
|
||||||
see http://svn.netlabs.org/qt4 for more information whats needed and where to get the latest
|
|
||||||
|
|
||||||
|
|
||||||
3. INSTALLATION
|
|
||||||
===============
|
|
||||||
|
|
||||||
To install QBittorrent, do the following:
|
|
||||||
|
|
||||||
klibc
|
|
||||||
-----
|
|
||||||
|
|
||||||
1. Download klibc 0.6.3 csd3 or later.
|
|
||||||
2. Install the package by double-clicking on the WPI file.
|
|
||||||
|
|
||||||
|
|
||||||
openssl 1.0
|
|
||||||
-----------
|
|
||||||
|
|
||||||
1. Download the zip file
|
|
||||||
2. Install the files to your libpath eg. x:\ecs\dll
|
|
||||||
|
|
||||||
Qt4 dll
|
|
||||||
-------
|
|
||||||
|
|
||||||
1. Download the package
|
|
||||||
2. Install the package by double-clicking on the wpi file.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
QBittorrent
|
|
||||||
-----------
|
|
||||||
|
|
||||||
1. Create a directory for QBittorrent.
|
|
||||||
2. Extract the QBittorrent package to the new directory.
|
|
||||||
3. Create a WPS object for QBittorrent.exe.
|
|
||||||
4. Start QBittorrent
|
|
||||||
5. Happy torrenting
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
4. CONTACT
|
|
||||||
==========
|
|
||||||
|
|
||||||
Please send bugreports to:
|
|
||||||
|
|
||||||
ecs@aroa.ch
|
|
||||||
|
|
||||||
Only bug reports with a reproducable bug are accepted. :-)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
5. CREDITS
|
|
||||||
==========
|
|
||||||
|
|
||||||
The port was done by:
|
|
||||||
|
|
||||||
Silvan Scherrer aka _diver
|
|
||||||
|
|
||||||
Thanks go to:
|
|
||||||
|
|
||||||
* Dmitry A. Kuminov
|
|
||||||
|
|
||||||
They either helped me when I had some nasty questions or did some testing for
|
|
||||||
me.
|
|
||||||
|
|
||||||
|
|
||||||
6. SUPPORT AND DONATIONS
|
|
||||||
========================
|
|
||||||
|
|
||||||
QBittorrent port is based on volunteer work. If you would like to support further
|
|
||||||
development, you can do so in one of the following ways:
|
|
||||||
|
|
||||||
|
|
||||||
* Donate to the Qt4 project: see qt.netlabs.org for more information
|
|
||||||
|
|
||||||
* Contribute to the project: Besides actual development, this also includes
|
|
||||||
maintaining the documentation and the project web site as well as help
|
|
||||||
for users.
|
|
||||||
|
|
||||||
|
|
||||||
7. HISTORY
|
|
||||||
==========
|
|
||||||
|
|
||||||
2010-12-23
|
|
||||||
|
|
||||||
* updated to 2.5.2 code level of QBittorrent
|
|
||||||
|
|
||||||
2010-11-22
|
|
||||||
|
|
||||||
* updated to 2.4.11 code level of QBittorrent
|
|
||||||
|
|
||||||
2010-xx-xx
|
|
||||||
|
|
||||||
* initial port
|
|
||||||
|
|
||||||
@@ -1,10 +1,3 @@
|
|||||||
INCLUDEPATH += $$PWD
|
|
||||||
|
|
||||||
exists(conf.pri) {
|
|
||||||
# to the conf.pri goes all system dependent stuff
|
|
||||||
include(conf.pri)
|
|
||||||
}
|
|
||||||
|
|
||||||
LIBS += -ltorrent-rasterbar \
|
LIBS += -ltorrent-rasterbar \
|
||||||
-lboost_thread \
|
-lboost_thread \
|
||||||
-lboost_system \
|
-lboost_system \
|
||||||
|
|||||||
@@ -20,6 +20,5 @@
|
|||||||
<dep type='geoip-database'>
|
<dep type='geoip-database'>
|
||||||
</dep>
|
</dep>
|
||||||
<dep type='qtsingleapplication'>
|
<dep type='qtsingleapplication'>
|
||||||
<required/>
|
|
||||||
</dep>
|
</dep>
|
||||||
</qconf>
|
</qconf>
|
||||||
|
|||||||
@@ -1,9 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
-----BEGIN QCMOD-----
|
-----BEGIN QCMOD-----
|
||||||
name: Qt >= 4.5
|
name: Qt >= 4.5
|
||||||
arg: enable-debug, Enable debug mode
|
|
||||||
arg: disable-gui, Disable qBittorrent Graphical user interface for headless running
|
arg: disable-gui, Disable qBittorrent Graphical user interface for headless running
|
||||||
arg: enable-debug, Enable debug mode
|
|
||||||
-----END QCMOD-----
|
-----END QCMOD-----
|
||||||
*/
|
*/
|
||||||
class qc_qt4 : public ConfObj
|
class qc_qt4 : public ConfObj
|
||||||
@@ -14,14 +12,9 @@ public:
|
|||||||
QString shortname() const { return "Qt 4.5"; }
|
QString shortname() const { return "Qt 4.5"; }
|
||||||
bool exec()
|
bool exec()
|
||||||
{
|
{
|
||||||
// NOX mode
|
|
||||||
if(!conf->getenv("QC_DISABLE_GUI").isEmpty()) {
|
if(!conf->getenv("QC_DISABLE_GUI").isEmpty()) {
|
||||||
conf->addExtra("CONFIG += nox");
|
conf->addExtra("CONFIG += nox");
|
||||||
}
|
}
|
||||||
// Debug mode
|
|
||||||
if(!conf->getenv("QC_ENABLE_DEBUG").isEmpty()) {
|
|
||||||
conf->addExtra("CONFIG += debug");
|
|
||||||
}
|
|
||||||
return(QT_VERSION >= 0x040500);
|
return(QT_VERSION >= 0x040500);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
-----BEGIN QCMOD-----
|
-----BEGIN QCMOD-----
|
||||||
name: qtsingleapplication
|
name: libboost
|
||||||
arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one
|
arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one
|
||||||
-----END QCMOD-----
|
-----END QCMOD-----
|
||||||
*/
|
*/
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 423 B After Width: | Height: | Size: 439 B |
|
Before Width: | Height: | Size: 423 B After Width: | Height: | Size: 439 B |
@@ -1,6 +1,6 @@
|
|||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
Categories=Qt;Network;P2P;
|
Categories=Qt;Network;P2P;
|
||||||
Comment=V2.5.4
|
Comment=V2.5.0
|
||||||
Exec=qbittorrent %f
|
Exec=qbittorrent %f
|
||||||
GenericName=Bittorrent client
|
GenericName=Bittorrent client
|
||||||
GenericName[ar]=العميل Bittorrent
|
GenericName[ar]=العميل Bittorrent
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
@@ -47,7 +47,7 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleGetInfoString</key>
|
<key>CFBundleGetInfoString</key>
|
||||||
<string>2.5.4</string>
|
<string>2.5.0</string>
|
||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>????</string>
|
<string>????</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ class about : public QDialog, private Ui::AboutDlg{
|
|||||||
<li><u>Croatian:</u> Oliver Mucafir (oliver.untwist@gmail.com)</li>\
|
<li><u>Croatian:</u> Oliver Mucafir (oliver.untwist@gmail.com)</li>\
|
||||||
<li><u>Czech:</u> Jirka Vilim (web@tets.cz)</li>\
|
<li><u>Czech:</u> Jirka Vilim (web@tets.cz)</li>\
|
||||||
<li><u>Danish:</u> Mathias Nielsen (comoneo@gmail.com)</li>\
|
<li><u>Danish:</u> Mathias Nielsen (comoneo@gmail.com)</li>\
|
||||||
<li><u>Dutch:</u> Pieter Heyvaert (pieter_heyvaert@hotmail.com)</li>\
|
<li><u>Dutch:</u> Joost Schipper (heavyjoost@users.sourceforge.net) and Peter Koeleman (peter@peerweb.nl)</li>\
|
||||||
<li><u>Finnish:</u> Niklas Laxström (nikerabbit@users.sourceforge.net) and Pekka Niemi (pekka.niemi@iki.fi)</li>\
|
<li><u>Finnish:</u> Niklas Laxström (nikerabbit@users.sourceforge.net) and Pekka Niemi (pekka.niemi@iki.fi)</li>\
|
||||||
<li><u>German:</u> Niels Hoffmann (zentralmaschine@users.sourceforge.net)</li>\
|
<li><u>German:</u> Niels Hoffmann (zentralmaschine@users.sourceforge.net)</li>\
|
||||||
<li><u>Greek:</u> Tsvetan Bankov (emerge_life@users.sourceforge.net)</li>\
|
<li><u>Greek:</u> Tsvetan Bankov (emerge_life@users.sourceforge.net)</li>\
|
||||||
|
|||||||
@@ -1,55 +1,57 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<ui version="4.0" >
|
||||||
<ui version="4.0">
|
<author></author>
|
||||||
|
<comment></comment>
|
||||||
|
<exportmacro></exportmacro>
|
||||||
<class>downloadFromURL</class>
|
<class>downloadFromURL</class>
|
||||||
<widget class="QDialog" name="downloadFromURL">
|
<widget class="QDialog" name="downloadFromURL" >
|
||||||
<property name="geometry">
|
<property name="geometry" >
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>482</width>
|
<width>360</width>
|
||||||
<height>220</height>
|
<height>220</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle" >
|
||||||
<string>Download from urls</string>
|
<string>Download from urls</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout">
|
<layout class="QVBoxLayout" >
|
||||||
<property name="spacing">
|
<property name="margin" >
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>9</number>
|
<number>9</number>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="spacing" >
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout">
|
<layout class="QHBoxLayout" >
|
||||||
<property name="spacing">
|
<property name="margin" >
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="spacing" >
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLabel" name="icon_lbl">
|
<widget class="QLabel" name="icon_lbl" >
|
||||||
<property name="minimumSize">
|
<property name="minimumSize" >
|
||||||
<size>
|
<size>
|
||||||
<width>32</width>
|
<width>32</width>
|
||||||
<height>32</height>
|
<height>32</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="maximumSize">
|
<property name="maximumSize" >
|
||||||
<size>
|
<size>
|
||||||
<width>32</width>
|
<width>32</width>
|
||||||
<height>32</height>
|
<height>32</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text" >
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLabel" name="downloadURL_lbl">
|
<widget class="QLabel" name="downloadURL_lbl" >
|
||||||
<property name="font">
|
<property name="font" >
|
||||||
<font>
|
<font>
|
||||||
<family>Sans Serif</family>
|
<family>Sans Serif</family>
|
||||||
<pointsize>12</pointsize>
|
<pointsize>12</pointsize>
|
||||||
@@ -60,7 +62,7 @@
|
|||||||
<strikeout>false</strikeout>
|
<strikeout>false</strikeout>
|
||||||
</font>
|
</font>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text" >
|
||||||
<string>Download Torrents from URLs</string>
|
<string>Download Torrents from URLs</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
@@ -68,21 +70,21 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QTextEdit" name="textUrls">
|
<widget class="QTextEdit" name="textUrls" >
|
||||||
<property name="acceptRichText">
|
<property name="acceptRichText" >
|
||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLabel" name="label_infos">
|
<widget class="QLabel" name="label_infos" >
|
||||||
<property name="maximumSize">
|
<property name="maximumSize" >
|
||||||
<size>
|
<size>
|
||||||
<width>16777215</width>
|
<width>16777215</width>
|
||||||
<height>17</height>
|
<height>17</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="font">
|
<property name="font" >
|
||||||
<font>
|
<font>
|
||||||
<family>Sans Serif</family>
|
<family>Sans Serif</family>
|
||||||
<pointsize>9</pointsize>
|
<pointsize>9</pointsize>
|
||||||
@@ -93,25 +95,25 @@
|
|||||||
<strikeout>false</strikeout>
|
<strikeout>false</strikeout>
|
||||||
</font>
|
</font>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text" >
|
||||||
<string>Only one URL per line</string>
|
<string>Only one URL per line</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout">
|
<layout class="QHBoxLayout" >
|
||||||
<property name="spacing">
|
<property name="margin" >
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="spacing" >
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<spacer>
|
<spacer>
|
||||||
<property name="orientation">
|
<property name="orientation" >
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizeHint" stdset="0">
|
<property name="sizeHint" >
|
||||||
<size>
|
<size>
|
||||||
<width>40</width>
|
<width>40</width>
|
||||||
<height>20</height>
|
<height>20</height>
|
||||||
@@ -120,25 +122,25 @@
|
|||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QPushButton" name="downloadButton">
|
<widget class="QPushButton" name="downloadButton" >
|
||||||
<property name="text">
|
<property name="text" >
|
||||||
<string>Download</string>
|
<string>Download</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QPushButton" name="cancelButton">
|
<widget class="QPushButton" name="cancelButton" >
|
||||||
<property name="text">
|
<property name="text" >
|
||||||
<string>Cancel</string>
|
<string>Cancel</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer>
|
<spacer>
|
||||||
<property name="orientation">
|
<property name="orientation" >
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizeHint" stdset="0">
|
<property name="sizeHint" >
|
||||||
<size>
|
<size>
|
||||||
<width>40</width>
|
<width>40</width>
|
||||||
<height>20</height>
|
<height>20</height>
|
||||||
@@ -150,6 +152,7 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
<pixmapfunction></pixmapfunction>
|
||||||
<resources/>
|
<resources/>
|
||||||
<connections/>
|
<connections/>
|
||||||
</ui>
|
</ui>
|
||||||
|
|||||||
@@ -45,9 +45,9 @@
|
|||||||
/** Download Thread **/
|
/** Download Thread **/
|
||||||
|
|
||||||
downloadThread::downloadThread(QObject* parent) : QObject(parent) {
|
downloadThread::downloadThread(QObject* parent) : QObject(parent) {
|
||||||
connect(&m_networkManager, SIGNAL(finished (QNetworkReply*)), this, SLOT(processDlFinished(QNetworkReply*)));
|
connect(&networkManager, SIGNAL(finished (QNetworkReply*)), this, SLOT(processDlFinished(QNetworkReply*)));
|
||||||
#ifndef QT_NO_OPENSSL
|
#ifndef QT_NO_OPENSSL
|
||||||
connect(&m_networkManager, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)), this, SLOT(ignoreSslErrors(QNetworkReply*,QList<QSslError>)));
|
connect(&networkManager, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)), this, SLOT(ignoreSslErrors(QNetworkReply*,QList<QSslError>)));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -63,13 +63,13 @@ void downloadThread::processDlFinished(QNetworkReply* reply) {
|
|||||||
if(redirection.isValid()) {
|
if(redirection.isValid()) {
|
||||||
// We should redirect
|
// We should redirect
|
||||||
qDebug("Redirecting from %s to %s", qPrintable(url), qPrintable(redirection.toUrl().toString()));
|
qDebug("Redirecting from %s to %s", qPrintable(url), qPrintable(redirection.toUrl().toString()));
|
||||||
m_redirectMapping.insert(redirection.toUrl().toString(), url);
|
redirect_mapping.insert(redirection.toUrl().toString(), url);
|
||||||
downloadUrl(redirection.toUrl().toString());
|
downloadUrl(redirection.toUrl().toString());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Checking if it was redirecting, restoring initial URL
|
// Checking if it was redirecting, restoring initial URL
|
||||||
if(m_redirectMapping.contains(url)) {
|
if(redirect_mapping.contains(url)) {
|
||||||
url = m_redirectMapping.take(url);
|
url = redirect_mapping.take(url);
|
||||||
}
|
}
|
||||||
// Success
|
// Success
|
||||||
QString filePath;
|
QString filePath;
|
||||||
@@ -104,7 +104,7 @@ void downloadThread::processDlFinished(QNetworkReply* reply) {
|
|||||||
#ifndef DISABLE_GUI
|
#ifndef DISABLE_GUI
|
||||||
void downloadThread::loadCookies(const QString &host_name, QString url) {
|
void downloadThread::loadCookies(const QString &host_name, QString url) {
|
||||||
const QList<QByteArray> raw_cookies = RssSettings().getHostNameCookies(host_name);
|
const QList<QByteArray> raw_cookies = RssSettings().getHostNameCookies(host_name);
|
||||||
QNetworkCookieJar *cookie_jar = m_networkManager.cookieJar();
|
QNetworkCookieJar *cookie_jar = networkManager.cookieJar();
|
||||||
QList<QNetworkCookie> cookies;
|
QList<QNetworkCookie> cookies;
|
||||||
qDebug("Loading cookies for host name: %s", qPrintable(host_name));
|
qDebug("Loading cookies for host name: %s", qPrintable(host_name));
|
||||||
foreach(const QByteArray& raw_cookie, raw_cookies) {
|
foreach(const QByteArray& raw_cookie, raw_cookies) {
|
||||||
@@ -115,7 +115,7 @@ void downloadThread::loadCookies(const QString &host_name, QString url) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
cookie_jar->setCookiesFromUrl(cookies, url);
|
cookie_jar->setCookiesFromUrl(cookies, url);
|
||||||
m_networkManager.setCookieJar(cookie_jar);
|
networkManager.setCookieJar(cookie_jar);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -148,12 +148,12 @@ QNetworkReply* downloadThread::downloadUrl(QString url){
|
|||||||
// Web server banning
|
// Web server banning
|
||||||
request.setRawHeader("User-Agent", "Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5");
|
request.setRawHeader("User-Agent", "Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5");
|
||||||
qDebug("Downloading %s...", request.url().toEncoded().data());
|
qDebug("Downloading %s...", request.url().toEncoded().data());
|
||||||
qDebug("%d cookies for this URL", m_networkManager.cookieJar()->cookiesForUrl(url).size());
|
qDebug("%d cookies for this URL", networkManager.cookieJar()->cookiesForUrl(url).size());
|
||||||
for(int i=0; i<m_networkManager.cookieJar()->cookiesForUrl(url).size(); ++i) {
|
for(int i=0; i<networkManager.cookieJar()->cookiesForUrl(url).size(); ++i) {
|
||||||
qDebug("%s=%s", m_networkManager.cookieJar()->cookiesForUrl(url).at(i).name().data(), m_networkManager.cookieJar()->cookiesForUrl(url).at(i).value().data());
|
qDebug("%s=%s", networkManager.cookieJar()->cookiesForUrl(url).at(i).name().data(), networkManager.cookieJar()->cookiesForUrl(url).at(i).value().data());
|
||||||
qDebug("Domain: %s, Path: %s", qPrintable(m_networkManager.cookieJar()->cookiesForUrl(url).at(i).domain()), qPrintable(m_networkManager.cookieJar()->cookiesForUrl(url).at(i).path()));
|
qDebug("Domain: %s, Path: %s", qPrintable(networkManager.cookieJar()->cookiesForUrl(url).at(i).domain()), qPrintable(networkManager.cookieJar()->cookiesForUrl(url).at(i).path()));
|
||||||
}
|
}
|
||||||
return m_networkManager.get(request);
|
return networkManager.get(request);
|
||||||
}
|
}
|
||||||
|
|
||||||
void downloadThread::checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal) {
|
void downloadThread::checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal) {
|
||||||
@@ -200,7 +200,7 @@ void downloadThread::applyProxySettings() {
|
|||||||
} else {
|
} else {
|
||||||
proxy.setType(QNetworkProxy::NoProxy);
|
proxy.setType(QNetworkProxy::NoProxy);
|
||||||
}
|
}
|
||||||
m_networkManager.setProxy(proxy);
|
networkManager.setProxy(proxy);
|
||||||
}
|
}
|
||||||
|
|
||||||
QString downloadThread::errorCodeToString(QNetworkReply::NetworkError status) {
|
QString downloadThread::errorCodeToString(QNetworkReply::NetworkError status) {
|
||||||
|
|||||||
@@ -41,33 +41,33 @@ class QNetworkAccessManager;
|
|||||||
class downloadThread : public QObject {
|
class downloadThread : public QObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
private:
|
||||||
downloadThread(QObject* parent = 0);
|
QNetworkAccessManager networkManager;
|
||||||
QNetworkReply* downloadUrl(QString url);
|
QHash<QString, QString> redirect_mapping;
|
||||||
void downloadTorrentUrl(QString url);
|
|
||||||
//void setProxy(QString IP, int port, QString username, QString password);
|
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void downloadFinished(QString url, QString file_path);
|
void downloadFinished(QString url, QString file_path);
|
||||||
void downloadFailure(QString url, QString reason);
|
void downloadFailure(QString url, QString reason);
|
||||||
|
|
||||||
private slots:
|
public:
|
||||||
void processDlFinished(QNetworkReply* reply);
|
downloadThread(QObject* parent);
|
||||||
void checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal);
|
QNetworkReply* downloadUrl(QString url);
|
||||||
#ifndef QT_NO_OPENSSL
|
void downloadTorrentUrl(QString url);
|
||||||
void ignoreSslErrors(QNetworkReply*,QList<QSslError>);
|
//void setProxy(QString IP, int port, QString username, QString password);
|
||||||
#endif
|
|
||||||
|
|
||||||
private:
|
protected:
|
||||||
QString errorCodeToString(QNetworkReply::NetworkError status);
|
QString errorCodeToString(QNetworkReply::NetworkError status);
|
||||||
void applyProxySettings();
|
void applyProxySettings();
|
||||||
#ifndef DISABLE_GUI
|
#ifndef DISABLE_GUI
|
||||||
void loadCookies(const QString &host_name, QString url);
|
void loadCookies(const QString &host_name, QString url);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
private:
|
protected slots:
|
||||||
QNetworkAccessManager m_networkManager;
|
void processDlFinished(QNetworkReply* reply);
|
||||||
QHash<QString, QString> m_redirectMapping;
|
void checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal);
|
||||||
|
#ifndef QT_NO_OPENSSL
|
||||||
|
void ignoreSslErrors(QNetworkReply*,QList<QSslError>);
|
||||||
|
#endif
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -88,7 +88,6 @@ protected:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(abort) return;
|
|
||||||
s->set_ip_filter(filter);
|
s->set_ip_filter(filter);
|
||||||
qDebug("IP Filter thread: finished parsing, filter applied");
|
qDebug("IP Filter thread: finished parsing, filter applied");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -118,7 +118,9 @@ void GeoIPManager::loadDatabase(session *s) {
|
|||||||
#endif
|
#endif
|
||||||
if(QFile::exists(geoipDBpath(false))) {
|
if(QFile::exists(geoipDBpath(false))) {
|
||||||
qDebug("Loading GeoIP database from %s...", qPrintable(geoipDBpath(false)));
|
qDebug("Loading GeoIP database from %s...", qPrintable(geoipDBpath(false)));
|
||||||
s->load_country_db(geoipDBpath(false).toLocal8Bit().constData());
|
if(!s->load_country_db(geoipDBpath(false).toLocal8Bit().constData())) {
|
||||||
|
std::cerr << "Failed to load Geoip Database at " << qPrintable(geoipDBpath(false)) << std::endl;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
qDebug("ERROR: Impossible to find local Geoip Database");
|
qDebug("ERROR: Impossible to find local Geoip Database");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,22 +40,22 @@ class HeadlessLoader: public QObject {
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
HeadlessLoader(const QStringList &torrentCmdLine) {
|
HeadlessLoader(QStringList torrentCmdLine) {
|
||||||
Preferences pref;
|
Preferences pref;
|
||||||
// Enable Web UI
|
// Enable Web UI
|
||||||
pref.setWebUiEnabled(true);
|
pref.setWebUiEnabled(true);
|
||||||
// Instanciate Bittorrent Object
|
// Instanciate Bittorrent Object
|
||||||
connect(QBtSession::instance(), SIGNAL(newConsoleMessage(QString)), this, SLOT(displayConsoleMessage(QString)));
|
BTSession = QBtSession::instance();
|
||||||
|
connect(BTSession, SIGNAL(newConsoleMessage(QString)), this, SLOT(displayConsoleMessage(QString)));
|
||||||
// Resume unfinished torrents
|
// Resume unfinished torrents
|
||||||
QBtSession::instance()->startUpTorrents();
|
BTSession->startUpTorrents();
|
||||||
// Process command line parameters
|
// Process command line parameters
|
||||||
processParams(torrentCmdLine);
|
processParams(torrentCmdLine);
|
||||||
// Display some information to the user
|
// Display some information to the user
|
||||||
std::cout << std::endl << "******** " << qPrintable(tr("Information")) << " ********" << std::endl;
|
std::cout << std::endl << "******** " << qPrintable(tr("Information")) << " ********" << std::endl;
|
||||||
std::cout << qPrintable(tr("To control qBittorrent, access the Web UI at http://localhost:%1").arg(QString::number(pref.getWebUiPort()))) << std::endl;
|
std::cout << qPrintable(tr("To control qBittorrent, access the Web UI at http://localhost:%1").arg(QString::number(pref.getWebUiPort()))) << std::endl;
|
||||||
std::cout << qPrintable(tr("The Web UI administrator user name is: %1").arg(pref.getWebUiUsername())) << std::endl;
|
std::cout << qPrintable(tr("The Web UI administrator user name is: %1").arg(pref.getWebUiUsername())) << std::endl;
|
||||||
qDebug() << "Password:" << pref.getWebUiPassword();
|
if(pref.getWebUiPassword() == "f6fdffe48c908deb0f4c3bd36c032e72") {
|
||||||
if(pref.getWebUiPassword() == "32fe0bd2bb001911bb8bcfe23fc92b63") {
|
|
||||||
std::cout << qPrintable(tr("The Web UI administrator password is still the default one: %1").arg("adminadmin")) << std::endl;
|
std::cout << qPrintable(tr("The Web UI administrator password is still the default one: %1").arg("adminadmin")) << std::endl;
|
||||||
std::cout << qPrintable(tr("This is a security risk, please consider changing your password from program preferences.")) << std::endl;
|
std::cout << qPrintable(tr("This is a security risk, please consider changing your password from program preferences.")) << std::endl;
|
||||||
}
|
}
|
||||||
@@ -72,7 +72,7 @@ public slots:
|
|||||||
qApp->quit();
|
qApp->quit();
|
||||||
}
|
}
|
||||||
|
|
||||||
void displayConsoleMessage(const QString &msg) {
|
void displayConsoleMessage(QString msg) {
|
||||||
std::cout << qPrintable(msg) << std::endl;
|
std::cout << qPrintable(msg) << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -88,21 +88,24 @@ public slots:
|
|||||||
foreach(QString param, params) {
|
foreach(QString param, params) {
|
||||||
param = param.trimmed();
|
param = param.trimmed();
|
||||||
if(param.startsWith(QString::fromUtf8("http://"), Qt::CaseInsensitive) || param.startsWith(QString::fromUtf8("ftp://"), Qt::CaseInsensitive) || param.startsWith(QString::fromUtf8("https://"), Qt::CaseInsensitive)) {
|
if(param.startsWith(QString::fromUtf8("http://"), Qt::CaseInsensitive) || param.startsWith(QString::fromUtf8("ftp://"), Qt::CaseInsensitive) || param.startsWith(QString::fromUtf8("https://"), Qt::CaseInsensitive)) {
|
||||||
QBtSession::instance()->downloadFromUrl(param);
|
BTSession->downloadFromUrl(param);
|
||||||
}else{
|
}else{
|
||||||
if(param.startsWith("bc://bt/", Qt::CaseInsensitive)) {
|
if(param.startsWith("bc://bt/", Qt::CaseInsensitive)) {
|
||||||
qDebug("Converting bc link to magnet link");
|
qDebug("Converting bc link to magnet link");
|
||||||
param = misc::bcLinkToMagnet(param);
|
param = misc::bcLinkToMagnet(param);
|
||||||
}
|
}
|
||||||
if(param.startsWith("magnet:", Qt::CaseInsensitive)) {
|
if(param.startsWith("magnet:", Qt::CaseInsensitive)) {
|
||||||
QBtSession::instance()->addMagnetUri(param);
|
BTSession->addMagnetUri(param);
|
||||||
} else {
|
} else {
|
||||||
QBtSession::instance()->addTorrent(param);
|
BTSession->addTorrent(param);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
QBtSession *BTSession;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||