Compare commits
680 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
3538fdfaf7 | ||
![]() |
3468e7d404 | ||
![]() |
ec4afda184 | ||
![]() |
67b1835264 | ||
![]() |
aee64aa589 | ||
![]() |
687e6e237f | ||
![]() |
b48dd5e930 | ||
![]() |
5ee6833610 | ||
![]() |
c998ba3762 | ||
![]() |
2d4f7ab0e9 | ||
![]() |
676d03eb88 | ||
![]() |
6f7ecbfb7b | ||
![]() |
c4aa49eb32 | ||
![]() |
32aae44ffc | ||
![]() |
7883534c5e | ||
![]() |
b58c9fb718 | ||
![]() |
99d8f63f9e | ||
![]() |
635e8240d2 | ||
![]() |
117a670aa3 | ||
![]() |
f49c58a1fa | ||
![]() |
2492f1b797 | ||
![]() |
d6781f67b2 | ||
![]() |
2e0c22eb6d | ||
![]() |
f7bf4060ea | ||
![]() |
8c953bbf01 | ||
![]() |
4e91761fdf | ||
![]() |
53f8465e67 | ||
![]() |
e8bc2816ef | ||
![]() |
28ed7cc8a5 | ||
![]() |
089d9f2e3d | ||
![]() |
b4eda2ed54 | ||
![]() |
4d8d21a815 | ||
![]() |
f3290800d8 | ||
![]() |
22a858c076 | ||
![]() |
823419c032 | ||
![]() |
908d3f64f4 | ||
![]() |
4b599f391c | ||
![]() |
6d8239caab | ||
![]() |
dae37f273a | ||
![]() |
1615bff2d0 | ||
![]() |
b303befbb9 | ||
![]() |
e243c11cc0 | ||
![]() |
c860bca320 | ||
![]() |
a60c1fca36 | ||
![]() |
5ad2c7a371 | ||
![]() |
3df0218347 | ||
![]() |
601783aef6 | ||
![]() |
ac5af81344 | ||
![]() |
823563c84f | ||
![]() |
47410c5eb6 | ||
![]() |
af135f4ae9 | ||
![]() |
3eeced3a04 | ||
![]() |
8ea99b548d | ||
![]() |
ae73e8188d | ||
![]() |
9c5cda72da | ||
![]() |
fb1e24799d | ||
![]() |
5721948434 | ||
![]() |
d7b6f413be | ||
![]() |
959ec4667d | ||
![]() |
20433db169 | ||
![]() |
54465798e9 | ||
![]() |
313147d224 | ||
![]() |
84bd947eca | ||
![]() |
366abc4431 | ||
![]() |
2f7fa2f063 | ||
![]() |
205f6cac12 | ||
![]() |
f602b3db24 | ||
![]() |
0d72f1f228 | ||
![]() |
508125e68f | ||
![]() |
cfb714e13c | ||
![]() |
b9dcfd1b02 | ||
![]() |
a1b2dc67b8 | ||
![]() |
2207c5a961 | ||
![]() |
2caa09bb1e | ||
![]() |
68906f6e40 | ||
![]() |
2cf3cf15e3 | ||
![]() |
88202c1f7f | ||
![]() |
6293c787e7 | ||
![]() |
f67fda3bf4 | ||
![]() |
c81dd24fe7 | ||
![]() |
af94dd2757 | ||
![]() |
0a07738c5b | ||
![]() |
e05783a25a | ||
![]() |
27d4ab3967 | ||
![]() |
04b3efbbc2 | ||
![]() |
ccd5347be2 | ||
![]() |
e1c5f3ed6d | ||
![]() |
c1fb41204c | ||
![]() |
b50733054f | ||
![]() |
e324773c91 | ||
![]() |
6a4c34d5df | ||
![]() |
bc34b9f176 | ||
![]() |
96af05fbef | ||
![]() |
842d9e79ce | ||
![]() |
086d8b32e9 | ||
![]() |
a6390f2bc5 | ||
![]() |
1ab0827ae7 | ||
![]() |
db0f651f33 | ||
![]() |
7f163c3945 | ||
![]() |
cb53867b37 | ||
![]() |
b5b907c9ed | ||
![]() |
2f8ef4aec2 | ||
![]() |
e5929c850c | ||
![]() |
86771a87c6 | ||
![]() |
fca6ac0dbc | ||
![]() |
da61eb8988 | ||
![]() |
ef22d43f46 | ||
![]() |
f63f1361ce | ||
![]() |
547c9174b1 | ||
![]() |
cb292bbf06 | ||
![]() |
784c41b83a | ||
![]() |
42fbe9270a | ||
![]() |
8067f1948e | ||
![]() |
143cc6e8d0 | ||
![]() |
628ab0ca82 | ||
![]() |
cc13d7edf6 | ||
![]() |
6ea2c18384 | ||
![]() |
fb316d9068 | ||
![]() |
fda730dcad | ||
![]() |
8d921202fa | ||
![]() |
e6b135e151 | ||
![]() |
dbde3b469a | ||
![]() |
7841bcab06 | ||
![]() |
efe1346d41 | ||
![]() |
42beb6018e | ||
![]() |
2d0e82159d | ||
![]() |
08ad94a2f5 | ||
![]() |
0eebea0ef7 | ||
![]() |
e4888b83d8 | ||
![]() |
37f8066901 | ||
![]() |
92f976916f | ||
![]() |
530ad7ecf5 | ||
![]() |
c1bc750059 | ||
![]() |
364061fde0 | ||
![]() |
1b4826f966 | ||
![]() |
580eacdb18 | ||
![]() |
270b8c9041 | ||
![]() |
9f7590783d | ||
![]() |
63dceed010 | ||
![]() |
ee3e0dd0e1 | ||
![]() |
e19d59c4ab | ||
![]() |
d29132a540 | ||
![]() |
0037811fb5 | ||
![]() |
1f1b8d0074 | ||
![]() |
dae6aeb4b5 | ||
![]() |
9bfb249425 | ||
![]() |
0bbcecc1c3 | ||
![]() |
a871e35449 | ||
![]() |
9961031b0e | ||
![]() |
c2d3214c01 | ||
![]() |
13e14f3e62 | ||
![]() |
ffe435051b | ||
![]() |
5e00b2ec33 | ||
![]() |
a73fbccd22 | ||
![]() |
48cdc3bb5e | ||
![]() |
535f71c18c | ||
![]() |
9ceeb71448 | ||
![]() |
457449866e | ||
![]() |
427428d09b | ||
![]() |
82b203c9c3 | ||
![]() |
9677c2deee | ||
![]() |
9000745877 | ||
![]() |
2fb413123c | ||
![]() |
6316b82600 | ||
![]() |
2746d797ee | ||
![]() |
7e5a7ad153 | ||
![]() |
e947059da1 | ||
![]() |
65aaaa3d77 | ||
![]() |
c2b2c94e1b | ||
![]() |
e8465f23b9 | ||
![]() |
09d37ab232 | ||
![]() |
f413355610 | ||
![]() |
5a97cd7dd2 | ||
![]() |
7b354d1582 | ||
![]() |
b964a33ae2 | ||
![]() |
dfa513da24 | ||
![]() |
dcee9128f9 | ||
![]() |
30a8e1b4c5 | ||
![]() |
a5e2e6ef60 | ||
![]() |
772709d46c | ||
![]() |
71f60c612a | ||
![]() |
e6834990ec | ||
![]() |
17d7ed5a2b | ||
![]() |
10bf70c663 | ||
![]() |
8c14820a38 | ||
![]() |
63772f289d | ||
![]() |
8d5aec030c | ||
![]() |
280547ad01 | ||
![]() |
d01d57037e | ||
![]() |
48279699eb | ||
![]() |
b26e287a62 | ||
![]() |
66289cb3f3 | ||
![]() |
5bfe0179b2 | ||
![]() |
b9b5b3a442 | ||
![]() |
402dd9d917 | ||
![]() |
7d332aada4 | ||
![]() |
df8f634ede | ||
![]() |
fcd0167ee7 | ||
![]() |
8cd330e5fb | ||
![]() |
77d8ef50b3 | ||
![]() |
4d480e204a | ||
![]() |
a6486fc233 | ||
![]() |
655bc5c05e | ||
![]() |
3dfd0d22bb | ||
![]() |
c56c2b0dd9 | ||
![]() |
01a43e04e1 | ||
![]() |
2ad2e06754 | ||
![]() |
20d1813793 | ||
![]() |
534e718925 | ||
![]() |
9fc5b97de8 | ||
![]() |
684fadd2d2 | ||
![]() |
b66fd18380 | ||
![]() |
d1d8ef916e | ||
![]() |
c9a53fa2b2 | ||
![]() |
93d1976a14 | ||
![]() |
5b07e6424a | ||
![]() |
ecec3d2006 | ||
![]() |
f99bc5ba41 | ||
![]() |
9aae53bfb7 | ||
![]() |
59700dcd91 | ||
![]() |
13e1ab231f | ||
![]() |
8fd10dd2d1 | ||
![]() |
271036b527 | ||
![]() |
66ca1942b3 | ||
![]() |
87db689ea9 | ||
![]() |
525f78caca | ||
![]() |
0e38b1ada8 | ||
![]() |
50da308553 | ||
![]() |
c11de64a35 | ||
![]() |
d232acb85e | ||
![]() |
9cfbdd3545 | ||
![]() |
cdc6210160 | ||
![]() |
c866748de3 | ||
![]() |
af869583e3 | ||
![]() |
756cf7c0a6 | ||
![]() |
a839f7d56f | ||
![]() |
06bf11b64e | ||
![]() |
626a9cbc6a | ||
![]() |
ef9f5ad865 | ||
![]() |
b775064c60 | ||
![]() |
21f8fa966d | ||
![]() |
257295ed08 | ||
![]() |
57fc97dff7 | ||
![]() |
55ee2148e1 | ||
![]() |
65b008b75a | ||
![]() |
dc8d1698f0 | ||
![]() |
9071b1fe29 | ||
![]() |
3190cd0fd5 | ||
![]() |
0e5f843bac | ||
![]() |
5eb84f6236 | ||
![]() |
c94b8682c8 | ||
![]() |
4ba5e64ccb | ||
![]() |
799b7ca422 | ||
![]() |
9d188996ca | ||
![]() |
f808b61210 | ||
![]() |
e4a8ef36c0 | ||
![]() |
478e3ba74e | ||
![]() |
cbde01d520 | ||
![]() |
403621ab8a | ||
![]() |
71a42b089e | ||
![]() |
65ce4f54a1 | ||
![]() |
2d900d1734 | ||
![]() |
af90708fad | ||
![]() |
649f57b0bf | ||
![]() |
792d2a433f | ||
![]() |
b55d55c640 | ||
![]() |
021468d6f5 | ||
![]() |
6e5e326d64 | ||
![]() |
da212064f4 | ||
![]() |
f4a0dfb6de | ||
![]() |
d4e184fbca | ||
![]() |
e4cd2351cf | ||
![]() |
b1a9361221 | ||
![]() |
c137530f5d | ||
![]() |
aa1583497c | ||
![]() |
e564149ee0 | ||
![]() |
a2fbaba8e8 | ||
![]() |
15ff725ee5 | ||
![]() |
8db85b5abb | ||
![]() |
6ad732cd87 | ||
![]() |
7d1110e86a | ||
![]() |
b4fd588e9b | ||
![]() |
2120457518 | ||
![]() |
24c4a1e002 | ||
![]() |
7c5e557f7f | ||
![]() |
e3fc4a86a3 | ||
![]() |
0e3baba110 | ||
![]() |
c2e7282bd3 | ||
![]() |
119784ab5c | ||
![]() |
3e5e48c3a0 | ||
![]() |
7ab8138060 | ||
![]() |
60505e1638 | ||
![]() |
b52c67848c | ||
![]() |
a0a7055583 | ||
![]() |
83163c2b9b | ||
![]() |
fb499570aa | ||
![]() |
536d6a65db | ||
![]() |
82d0c934ff | ||
![]() |
75bb28f376 | ||
![]() |
21c7bf604a | ||
![]() |
a3de7fc47b | ||
![]() |
e3d9c68f5a | ||
![]() |
3b27a04590 | ||
![]() |
4b9ff6a6f8 | ||
![]() |
a2185bf957 | ||
![]() |
02f0dd8c59 | ||
![]() |
3848a0bcd6 | ||
![]() |
e2cc72589a | ||
![]() |
4216136d42 | ||
![]() |
e9f18fb93e | ||
![]() |
395ac68c32 | ||
![]() |
461fdc43e9 | ||
![]() |
f9888d7ffb | ||
![]() |
ec75dedc57 | ||
![]() |
a26db3a772 | ||
![]() |
ae559bc482 | ||
![]() |
b9c3c95129 | ||
![]() |
1fbe024e53 | ||
![]() |
8948cc56a9 | ||
![]() |
af2cfd5a2c | ||
![]() |
054ef1b66f | ||
![]() |
1f47546846 | ||
![]() |
4b3adbcb2f | ||
![]() |
8e8488a939 | ||
![]() |
8252a2884d | ||
![]() |
d766cdcf0c | ||
![]() |
4955d8c71d | ||
![]() |
566a83bb98 | ||
![]() |
785d00a1e0 | ||
![]() |
6e6e89463c | ||
![]() |
24ccd16311 | ||
![]() |
a67dd5dc6a | ||
![]() |
144bb40707 | ||
![]() |
ed82e34d10 | ||
![]() |
0b1c9751e5 | ||
![]() |
05f82c66b0 | ||
![]() |
32dd7293d0 | ||
![]() |
a923563357 | ||
![]() |
5e4022cc43 | ||
![]() |
5e35072a39 | ||
![]() |
bfb88e60e0 | ||
![]() |
35df096333 | ||
![]() |
c2328ae72c | ||
![]() |
02b12dc8e4 | ||
![]() |
9a5f0de726 | ||
![]() |
4504d45f0c | ||
![]() |
b53a30a267 | ||
![]() |
3ce6296a58 | ||
![]() |
1556dc46c1 | ||
![]() |
15bf794f9e | ||
![]() |
1c13158e79 | ||
![]() |
940863a1a4 | ||
![]() |
ccf6780e6d | ||
![]() |
abb644eeb8 | ||
![]() |
5bfa6ff736 | ||
![]() |
da51c070d0 | ||
![]() |
6d09f67adc | ||
![]() |
ea0c155c27 | ||
![]() |
60fb7bc3d5 | ||
![]() |
ba59cbd1b3 | ||
![]() |
a433eb564b | ||
![]() |
9215ae44ba | ||
![]() |
ad4aa891cf | ||
![]() |
1c03172211 | ||
![]() |
92263c6e04 | ||
![]() |
0b208008cf | ||
![]() |
7db24cc4a0 | ||
![]() |
5558136b51 | ||
![]() |
d49666835f | ||
![]() |
7f5612d0dc | ||
![]() |
7253a09531 | ||
![]() |
f56e53255e | ||
![]() |
27286a1b71 | ||
![]() |
a5d4fadca5 | ||
![]() |
1165d5ff9c | ||
![]() |
c65a4dbe12 | ||
![]() |
c335ae6eb4 | ||
![]() |
6ffb9dc9ef | ||
![]() |
08ce9b903b | ||
![]() |
156f6f6cce | ||
![]() |
3f681060b2 | ||
![]() |
6a4a9a09f5 | ||
![]() |
6dae7cd11d | ||
![]() |
85f522b055 | ||
![]() |
5eb63005ad | ||
![]() |
2fb3d52b44 | ||
![]() |
7c1fbdd44b | ||
![]() |
fdeacaa554 | ||
![]() |
d81b00616a | ||
![]() |
2af5e0c37b | ||
![]() |
7c657796aa | ||
![]() |
c8c62354f4 | ||
![]() |
62e9f712a0 | ||
![]() |
c60ae71bd9 | ||
![]() |
99b27fa084 | ||
![]() |
52ff0a6a1d | ||
![]() |
2a224785c3 | ||
![]() |
54ee2a1e97 | ||
![]() |
8eace1b1e9 | ||
![]() |
eb658ab421 | ||
![]() |
53f33b0fc1 | ||
![]() |
871966166b | ||
![]() |
69e71bbe87 | ||
![]() |
ac9274c540 | ||
![]() |
bcd9836088 | ||
![]() |
4fef4f872e | ||
![]() |
d578f585b3 | ||
![]() |
42b9e2a406 | ||
![]() |
de2f6eeabf | ||
![]() |
3fcaf3926a | ||
![]() |
b396818c52 | ||
![]() |
f89c9769be | ||
![]() |
dd9a6c1c7b | ||
![]() |
98b92ddc76 | ||
![]() |
8e9b144cff | ||
![]() |
9cc4021cb3 | ||
![]() |
c63c615dc3 | ||
![]() |
4055c205da | ||
![]() |
dc892cd95b | ||
![]() |
f609f1cc9c | ||
![]() |
ebad07fde5 | ||
![]() |
d44dc77511 | ||
![]() |
2a9e0d4c73 | ||
![]() |
6ecc500dde | ||
![]() |
f452f20189 | ||
![]() |
f25719fd9e | ||
![]() |
8f0c5e478e | ||
![]() |
bbcff986f9 | ||
![]() |
1bc3413660 | ||
![]() |
bd6f1ec538 | ||
![]() |
6c487e159b | ||
![]() |
57f9be98b8 | ||
![]() |
6a0bebad3b | ||
![]() |
4d7e170dcc | ||
![]() |
7dad79d5a5 | ||
![]() |
2a2298dcec | ||
![]() |
31118e222b | ||
![]() |
8a02403f83 | ||
![]() |
26933d9286 | ||
![]() |
a33c9eea0a | ||
![]() |
93eae3fdbf | ||
![]() |
becfabfc79 | ||
![]() |
946c8bd5bf | ||
![]() |
5f01a62292 | ||
![]() |
739708edb4 | ||
![]() |
f21cb39d38 | ||
![]() |
05a9e96bbb | ||
![]() |
b639c27883 | ||
![]() |
9e1bec1ea4 | ||
![]() |
3c4ae55407 | ||
![]() |
70ca19c6d9 | ||
![]() |
92c11b8320 | ||
![]() |
7f59ae0b6f | ||
![]() |
232819b6bd | ||
![]() |
29b83757e3 | ||
![]() |
efc4600918 | ||
![]() |
e92b87e4dd | ||
![]() |
5ef4e2f0dd | ||
![]() |
ae2264f344 | ||
![]() |
8c32b8ccb1 | ||
![]() |
80fb235b06 | ||
![]() |
f07e603826 | ||
![]() |
bcdf1cc781 | ||
![]() |
e9bbaf7075 | ||
![]() |
d71a8798dc | ||
![]() |
15a9eee66e | ||
![]() |
cacafcff58 | ||
![]() |
7193d6d28f | ||
![]() |
ceaeb02105 | ||
![]() |
4942d429f0 | ||
![]() |
67093c96bc | ||
![]() |
78daa5012d | ||
![]() |
748565b6dc | ||
![]() |
33581ce5b0 | ||
![]() |
7309e6a694 | ||
![]() |
61d1c02961 | ||
![]() |
87584668dd | ||
![]() |
8773022f10 | ||
![]() |
1a803fb182 | ||
![]() |
e2b23b6ebc | ||
![]() |
a5f845625f | ||
![]() |
f949291cdc | ||
![]() |
2ab1c3a63e | ||
![]() |
55805e251c | ||
![]() |
844d2ba1ad | ||
![]() |
4059815811 | ||
![]() |
caac781651 | ||
![]() |
ff1e19dbc7 | ||
![]() |
95adced183 | ||
![]() |
44dbdf2f10 | ||
![]() |
68cbd6e6be | ||
![]() |
2e8196b753 | ||
![]() |
cf9677ec38 | ||
![]() |
d7c25cb94b | ||
![]() |
c08b4f4fcd | ||
![]() |
dd8ecd1380 | ||
![]() |
e923be03cc | ||
![]() |
c040cf3a3a | ||
![]() |
5c0dadcb3a | ||
![]() |
6f7f50c82f | ||
![]() |
8c90b8ed02 | ||
![]() |
121c7bc686 | ||
![]() |
743de0fae7 | ||
![]() |
9b3b140fad | ||
![]() |
ed41d383a3 | ||
![]() |
4692cd60ee | ||
![]() |
14d3a9eb0a | ||
![]() |
20b4d93686 | ||
![]() |
80960665ec | ||
![]() |
97a5d58f13 | ||
![]() |
26258f2768 | ||
![]() |
be2514f3c0 | ||
![]() |
74535a54ee | ||
![]() |
fea5e454fc | ||
![]() |
a54c089e6d | ||
![]() |
dafe618494 | ||
![]() |
cab46874f7 | ||
![]() |
cce2cb01f9 | ||
![]() |
f31e0d1c13 | ||
![]() |
2c029f7532 | ||
![]() |
e6f8109749 | ||
![]() |
b4f4ed5fe0 | ||
![]() |
7fb6fd4fd9 | ||
![]() |
38384bd1df | ||
![]() |
3a5db7e813 | ||
![]() |
df068d6e4d | ||
![]() |
318cc86c6b | ||
![]() |
2c83038ea8 | ||
![]() |
29f111aec4 | ||
![]() |
6a24c55f06 | ||
![]() |
11ff114a61 | ||
![]() |
f7fb87f62b | ||
![]() |
3ba8dda800 | ||
![]() |
54c1acb669 | ||
![]() |
ad5a949d60 | ||
![]() |
6901b128d0 | ||
![]() |
aa002d1ee4 | ||
![]() |
a4edb62743 | ||
![]() |
eee8d1d8ff | ||
![]() |
2934bfb3e7 | ||
![]() |
105bd85441 | ||
![]() |
d49cb02d2f | ||
![]() |
bc4bbbb7fb | ||
![]() |
70a47c80b5 | ||
![]() |
ed8deaa1ba | ||
![]() |
9b7dfdc01d | ||
![]() |
f6e37d0b83 | ||
![]() |
4dc07fbc26 | ||
![]() |
4d2adf4325 | ||
![]() |
bed9b9d54b | ||
![]() |
35191c913d | ||
![]() |
4f93f1efc6 | ||
![]() |
0f5937b387 | ||
![]() |
4eda11f79e | ||
![]() |
7f7496d64e | ||
![]() |
57aa438e64 | ||
![]() |
bffe1e3796 | ||
![]() |
acc8a24c21 | ||
![]() |
74cdd16bc6 | ||
![]() |
eed9745c67 | ||
![]() |
5fbe1ce66e | ||
![]() |
492816ab35 | ||
![]() |
16f255745f | ||
![]() |
570553f7d6 | ||
![]() |
254b918a08 | ||
![]() |
f49a960f5e | ||
![]() |
b8507c71b6 | ||
![]() |
e4698309a4 | ||
![]() |
20c57bcac6 | ||
![]() |
36c5ec25ab | ||
![]() |
3d5c22b640 | ||
![]() |
4697e53d7c | ||
![]() |
f7d5bc0ab5 | ||
![]() |
d7945eed8c | ||
![]() |
1d060af852 | ||
![]() |
670141aef7 | ||
![]() |
93330fc56e | ||
![]() |
72df2c1545 | ||
![]() |
fc3a1e21d3 | ||
![]() |
c20688837f | ||
![]() |
1db57a746b | ||
![]() |
d9178dd053 | ||
![]() |
e163e6f8cf | ||
![]() |
4b11007393 | ||
![]() |
3929ff2662 | ||
![]() |
76b088b5ec | ||
![]() |
59388a8f80 | ||
![]() |
01dec12909 | ||
![]() |
dda27ef45f | ||
![]() |
968a7729c3 | ||
![]() |
afe64a1b8f | ||
![]() |
83ab3c8b07 | ||
![]() |
baf20927e4 | ||
![]() |
3a126f07c4 | ||
![]() |
c1e495b212 | ||
![]() |
9a50a378cb | ||
![]() |
4cf9dc6eb9 | ||
![]() |
86c5c61e84 | ||
![]() |
d12888f611 | ||
![]() |
1c8bce2935 | ||
![]() |
075092857b | ||
![]() |
dd09daf28f | ||
![]() |
798dc9bf4b | ||
![]() |
0a82f950c3 | ||
![]() |
dc46dd48b1 | ||
![]() |
280be17c3a | ||
![]() |
fb6c7d2b64 | ||
![]() |
7b80d3c07e | ||
![]() |
b2a27591e6 | ||
![]() |
fb63d22666 | ||
![]() |
dcb171a655 | ||
![]() |
b2bc982c1c | ||
![]() |
255a0f0ffa | ||
![]() |
80ea816bc7 | ||
![]() |
b1371aae2b | ||
![]() |
c66984cd3b | ||
![]() |
27a455ad00 | ||
![]() |
69e7c7def3 | ||
![]() |
21882c81d8 | ||
![]() |
47f53ab47f | ||
![]() |
30ac099653 | ||
![]() |
1a85927e44 | ||
![]() |
b1d55fdf00 | ||
![]() |
1c62504b22 | ||
![]() |
fe504ed660 | ||
![]() |
9507369293 | ||
![]() |
84571f05fc | ||
![]() |
a6ba9040d9 | ||
![]() |
29e61feede | ||
![]() |
d055cf789f | ||
![]() |
15412c2508 | ||
![]() |
c216727735 | ||
![]() |
a38b13608e | ||
![]() |
0b302915d6 | ||
![]() |
009cc28415 | ||
![]() |
7007f2e650 | ||
![]() |
05b1895205 | ||
![]() |
955aa2c9ec | ||
![]() |
7b8f6ccd7f | ||
![]() |
a6b5401c0b | ||
![]() |
6d53e486c5 | ||
![]() |
aa35280ca9 | ||
![]() |
b5d846442d | ||
![]() |
b040187c3f | ||
![]() |
804dc12a47 | ||
![]() |
5095c543d0 | ||
![]() |
3ae850e69b | ||
![]() |
4cd01433b7 | ||
![]() |
06c47ec10a | ||
![]() |
e90bf47d8a | ||
![]() |
52c0179e8e | ||
![]() |
2209ab226c | ||
![]() |
ed0dbf4f18 | ||
![]() |
81b2eed342 | ||
![]() |
5a555427ee | ||
![]() |
9c98465b21 | ||
![]() |
8c053797ce | ||
![]() |
210085b854 | ||
![]() |
e72298ad42 | ||
![]() |
3b447b697c | ||
![]() |
a3c685388e | ||
![]() |
2363793d29 | ||
![]() |
969c365a64 | ||
![]() |
1d1259e8eb | ||
![]() |
55ce1394c6 | ||
![]() |
8499d06a14 | ||
![]() |
1739ac3935 | ||
![]() |
1a802f3e32 | ||
![]() |
51d2c2148a | ||
![]() |
25d0ec6ddb | ||
![]() |
b9d12aec9b | ||
![]() |
44f241a4eb | ||
![]() |
27e314088e | ||
![]() |
be2a041a71 | ||
![]() |
38d5394a48 | ||
![]() |
2b32fb358c | ||
![]() |
7ce1c4acfb | ||
![]() |
571c52a0f2 | ||
![]() |
47a2ffa313 | ||
![]() |
1026d0a290 |
6
.github/ISSUE_TEMPLATE.md
vendored
@@ -1,9 +1,9 @@
|
||||
**Please use the search bar** at the top of the page and make sure you are not creating an already submitted issue. Duplicating issues makes it more difficult for everyone to follow. Your issue may have already been solved in the past as well.
|
||||
|
||||
Provide a description of the feature request or bug, the more details the better.
|
||||
If you are experiencing an issue with a tracker, a **full log must be included**. Instructions for obtaining logs are here: https://github.com/Jackett/Jackett#troubleshooting
|
||||
If you are experiencing an issue with a tracker, a **full enhanced log must be included**. Instructions for obtaining logs are here: https://github.com/Jackett/Jackett#troubleshooting
|
||||
|
||||
Jackett version:
|
||||
Mono version (if not using Windows):
|
||||
**Jackett version**:
|
||||
**Mono version** (if not using Windows):
|
||||
|
||||
-------------------------------
|
||||
|
7
.github/duplicate_issue.md
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
Duplicate of #{{ chosenIssue.number }}
|
||||
|
||||
Hi @{{ payload.sender.login }},
|
||||
|
||||
This issue looks similar to #{{ chosenIssue.number }}.
|
||||
|
||||
To prevent issue tracker clutter, this issue will now be closed. If you feel this issue isn't a duplicate of #{{ chosenIssue.number }}, then feel free to post a comment on this issue stating why it's not a duplicate. Your comment will automatically re-open this issue.
|
9
.github/no_information_provided.md
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
Hi @{{ payload.sender.login }},
|
||||
|
||||
You've created an issue, but haven't provided any details to allow the community to assist you. To prevent issue tracker clutter, this issue will now be closed. Please provide the information needed below and your comment will automatically re-open this issue.
|
||||
|
||||
Provide a description of the feature request or bug, the more details the better.
|
||||
If you are experiencing an issue with a tracker, a **full enhanced log must be included**. Instructions for obtaining logs are here: https://github.com/Jackett/Jackett#troubleshooting
|
||||
|
||||
**Jackett version**:
|
||||
**Mono version** (if not using Windows):
|
3
.github/no_response.md
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
Hi @{{ payload.data.user.login }},
|
||||
|
||||
No response has been received for {{ days }} days. To prevent issue tracker clutter, this issue will now be closed. To re-open the issue, please provide the information requested and the issue will automatically re-open.
|
7
.github/pull_request_readme.md
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
Hi @{{ payload.pull_request.user.login }},
|
||||
|
||||
Thanks for your contribution to Jackett!
|
||||
|
||||
If you are adding a new indexer, please ensure that you've added it to the readme as well
|
||||
|
||||
A human will be along soon to review
|
10
.gitignore
vendored
@@ -194,6 +194,10 @@ FakesAssemblies/
|
||||
|
||||
# Visual Studio 6 workspace options file
|
||||
*.opt
|
||||
/Build.mono
|
||||
/Build.windows
|
||||
/Output
|
||||
/tools
|
||||
/BuildOutput
|
||||
/Artifacts
|
||||
/TestResults
|
||||
*.DS_Store
|
||||
.idea/
|
||||
launchSettings.json
|
||||
|
37
Build.bat
@@ -1,37 +0,0 @@
|
||||
|
||||
rmdir /s /q build.windows
|
||||
rmdir /s /q build.mono
|
||||
rmdir /s /q Output
|
||||
cd src
|
||||
Msbuild Jackett.sln /t:Clean,Build /p:Configuration=Release /verbosity:minimal
|
||||
cd ..
|
||||
|
||||
xcopy src\Jackett.Console\bin\Release build.windows\ /e /y
|
||||
copy /Y src\Jackett.Service\bin\Release\JackettService.exe build.windows\JackettService.exe
|
||||
copy /Y src\Jackett.Service\bin\Release\JackettService.exe.config build.windows\JackettService.exe.config
|
||||
copy /Y src\Jackett.Tray\bin\Release\JackettTray.exe build.windows\JackettTray.exe
|
||||
copy /Y src\Jackett.Tray\bin\Release\JackettTray.exe.config build.windows\JackettTray.exe.config
|
||||
copy /Y src\Jackett.Updater\bin\Release\JackettUpdater.exe build.windows\JackettUpdater.exe
|
||||
copy /Y src\Jackett.Updater\bin\Release\JackettUpdater.exe.config build.windows\JackettUpdater.exe.config
|
||||
copy /Y LICENSE build.windows\LICENSE
|
||||
copy /Y README.md build.windows\README.md
|
||||
|
||||
|
||||
cd src
|
||||
Msbuild Jackett.sln /t:Clean
|
||||
call "C:\Program Files (x86)\Mono\bin\xbuild.bat" Jackett.sln /t:Build /p:Configuration=Release /verbosity:minimal
|
||||
cd ..
|
||||
|
||||
xcopy src\Jackett.Console\bin\Release build.mono\ /e /y
|
||||
copy /Y src\Jackett.Service\bin\Release\JackettService.exe build.mono\JackettService.exe
|
||||
copy /Y src\Jackett.Service\bin\Release\JackettService.exe.config build.mono\JackettService.exe.config
|
||||
copy /Y src\Jackett.Tray\bin\Release\JackettTray.exe build.mono\JackettTray.exe
|
||||
copy /Y src\Jackett.Tray\bin\Release\JackettTray.exe.config build.mono\JackettTray.exe.config
|
||||
copy /Y src\Jackett.Updater\bin\Release\JackettUpdater.exe build.mono\JackettUpdater.exe
|
||||
copy /Y src\Jackett.Updater\bin\Release\JackettUpdater.exe.config build.mono\JackettUpdater.exe.config
|
||||
copy /Y LICENSE build.mono\LICENSE
|
||||
copy /Y README.md build.mono\README.md
|
||||
copy /Y Upstart.config build.mono\Upstart.config
|
||||
|
||||
iscc Installer.iss
|
||||
|
@@ -2,7 +2,7 @@
|
||||
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
|
||||
|
||||
#define MyAppName "Jackett"
|
||||
#define MyAppVersion GetFileVersion("build.windows/Jackett.dll")
|
||||
#define MyAppVersion GetFileVersion("BuildOutput\FullFramework\Windows\Jackett\Jackett.Common.dll")
|
||||
#define MyAppPublisher "Jackett Inc."
|
||||
#define MyAppURL "https://github.com/Jackett/Jackett"
|
||||
#define MyAppExeName "JackettTray.exe"
|
||||
@@ -22,7 +22,7 @@ AppUpdatesURL={#MyAppURL}
|
||||
DefaultDirName={pf}\{#MyAppName}
|
||||
DefaultGroupName={#MyAppName}
|
||||
DisableProgramGroupPage=yes
|
||||
OutputBaseFilename=setup
|
||||
OutputBaseFilename=Jackett.Installer.Windows
|
||||
SetupIconFile=src\Jackett.Console\jackett.ico
|
||||
UninstallDisplayIcon={commonappdata}\Jackett\JackettConsole.exe
|
||||
Compression=lzma
|
||||
@@ -37,9 +37,9 @@ Name: "windowsService"; Description: "Install as a Windows Service"
|
||||
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
|
||||
|
||||
[Files]
|
||||
Source: "build.windows\JackettTray.exe"; DestDir: "{commonappdata}\Jackett"; Flags: ignoreversion
|
||||
Source: "build.windows\JackettUpdater.exe"; DestDir: "{commonappdata}\Jackett"; Flags: ignoreversion
|
||||
Source: "build.windows\*"; DestDir: "{commonappdata}\Jackett"; Flags: ignoreversion recursesubdirs createallsubdirs
|
||||
Source: "BuildOutput\FullFramework\Windows\Jackett\JackettTray.exe"; DestDir: "{commonappdata}\Jackett"; Flags: ignoreversion
|
||||
Source: "BuildOutput\FullFramework\Windows\Jackett\JackettUpdater.exe"; DestDir: "{commonappdata}\Jackett"; Flags: ignoreversion
|
||||
Source: "BuildOutput\FullFramework\Windows\Jackett\*"; DestDir: "{commonappdata}\Jackett"; Flags: ignoreversion recursesubdirs createallsubdirs
|
||||
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
|
||||
|
||||
[Icons]
|
||||
|
129
README.md
@@ -2,8 +2,7 @@
|
||||
|
||||
[](https://github.com/Jackett/Jackett/issues)
|
||||
[](https://github.com/Jackett/Jackett/pulls)
|
||||
[](https://www.bountysource.com/teams/jackett)
|
||||
[](https://ci.appveyor.com/project/camjac251/jackett)
|
||||
[](https://ci.appveyor.com/project/Jackett/jackett)
|
||||
[](https://github.com/Jackett/Jackett/releases/latest)
|
||||
[](https://hub.docker.com/r/linuxserver/jackett/)
|
||||
[](https://discord.gg/J865QuA)
|
||||
@@ -17,8 +16,8 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
|
||||
|
||||
#### Supported Systems
|
||||
* Windows using .NET 4.5.2 [Download here](https://www.microsoft.com/net/framework/versions/net452).
|
||||
* Linux and macOS using Mono 4.6.0 and above. [Download here](http://www.mono-project.com/download/). Earlier versions of mono may work but some trackers may fail to negotiate SSL correctly, and others may cause Jackett to crash when used.
|
||||
* Windows using .NET 4.6.1 or above [Download here](https://www.microsoft.com/net/framework/versions/net461).
|
||||
* Linux and macOS using Mono 5.8 or above. [Download here](http://www.mono-project.com/download/). Earlier versions of mono may work, but some trackers may fail to negotiate SSL correctly, and others may cause Jackett to crash when used.
|
||||
|
||||
### Supported Public Trackers
|
||||
* 1337x
|
||||
@@ -29,35 +28,43 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* BTDB
|
||||
* BT-Scene
|
||||
* cpasbien
|
||||
* ETTV
|
||||
* ExtraTorrent.ag
|
||||
* EZTV
|
||||
* Frozen Layer
|
||||
* GkTorrent
|
||||
* Horrible Subs
|
||||
* Idope
|
||||
* Il Corsaro Nero <!-- maintained by bonny1992 -->
|
||||
* Il Corsaro Blu
|
||||
* Isohunt2
|
||||
* KickAssTorrent
|
||||
* KickAssTorrent (thekat.se clone)
|
||||
* LimeTorrents
|
||||
* MagnetDL
|
||||
* NextTorrent
|
||||
* Newpct (aka: tvsinpagar, descargas2020, torrentlocura, torrentrapid, etc)
|
||||
* Nyaa.si
|
||||
* Nyaa-Pantsu
|
||||
* Nyoo
|
||||
* RARBG
|
||||
* RuTor
|
||||
* ShowRSS
|
||||
* Sky torrents
|
||||
* sukebei.Nyaa.si
|
||||
* sukebei-Pantsu
|
||||
* The Pirate Bay
|
||||
* TNTVillage <!-- maintained by bonny1992 -->
|
||||
* Tokyo Toshokan
|
||||
* Torlock
|
||||
* Torrent Downloads
|
||||
* Torrent9
|
||||
* TorrentProject
|
||||
* TorrentKim
|
||||
* Torrentz2
|
||||
* World Wide Torrents
|
||||
* YIFY (YTS)
|
||||
* YTS.ag
|
||||
* Zooqle
|
||||
|
||||
|
||||
### Supported Semi-Private Trackers
|
||||
* 7tor
|
||||
* CzTorrent
|
||||
@@ -69,10 +76,12 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* Metal Tracker
|
||||
* MVGroup Forum
|
||||
* MVGroup Main
|
||||
* Newstudio
|
||||
* NetHD
|
||||
* NoName Club
|
||||
* RuTracker
|
||||
* SkTorrent
|
||||
* TorrentBytes
|
||||
* Union Fansub
|
||||
* Xtreme Zone
|
||||
* YggTorrent
|
||||
* Ztracker
|
||||
@@ -83,7 +92,6 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* Abnormal
|
||||
* Acid-Lounge
|
||||
* AlphaRatio
|
||||
* Andraste
|
||||
* AnimeBytes
|
||||
* AnimeTorrents
|
||||
* AOX
|
||||
@@ -103,78 +111,82 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* BIGTorrent
|
||||
* Bit-City Reloaded
|
||||
* BIT-HDTV
|
||||
* BitHQ
|
||||
* Bithorlo
|
||||
* BitHUmen
|
||||
* BitMe
|
||||
* BitMeTV
|
||||
* BitSoup [![(invite needed)][inviteneeded]](#)
|
||||
* Bitspyder
|
||||
* BitTorrentFiles [![(invite needed)][inviteneeded]](#)
|
||||
* BJ-Share
|
||||
* Blu-bits
|
||||
* BlueBird
|
||||
* Blutopia
|
||||
* Brasil Tracker
|
||||
* BroadcastTheNet
|
||||
* BrokenStones
|
||||
* BTNext
|
||||
* BTWorld
|
||||
* Carpathians
|
||||
* CCFBits
|
||||
* CGPeers
|
||||
* CHDBits
|
||||
* Cinematik
|
||||
* Cinemageddon
|
||||
* CinemaZ
|
||||
* Classix
|
||||
* CZTeam
|
||||
* DanishBits
|
||||
* DataScene
|
||||
* Demonoid
|
||||
* Diablo Torrent
|
||||
* DigitalHive
|
||||
* Downloadville
|
||||
* Dragonworld Reloaded
|
||||
* Dream Team
|
||||
* EliteHD [![(invite needed)][inviteneeded]](#)
|
||||
* Elit Tracker
|
||||
* Elite-Tracker
|
||||
* Empornium
|
||||
* EoT-Forum
|
||||
* eStone
|
||||
* Ethor.net (Thor's Land)
|
||||
* FANO.IN
|
||||
* FileList
|
||||
* Femdomcult
|
||||
* Freedom-HD
|
||||
* FullMixMusic
|
||||
* FunFile
|
||||
* FunkyTorrents
|
||||
* Fuzer
|
||||
* GayTorrent.ru
|
||||
* GFTracker
|
||||
* GazelleGames
|
||||
* Gfxnews
|
||||
* GFXPeers
|
||||
* Ghost City
|
||||
* GigaTorrents
|
||||
* GimmePeers <!-- maintained by jamesb2147 -->
|
||||
* Girotottent
|
||||
* GODS [![(invite needed)][inviteneeded]](#)
|
||||
* Gormogon
|
||||
* Greek Team
|
||||
* HacheDe
|
||||
* Hardbay
|
||||
* HD-Forever
|
||||
* HD-Only
|
||||
* HD-Space
|
||||
* HD-Spain
|
||||
* HD-Torrents
|
||||
* HD-Bits.com
|
||||
* HD4Free
|
||||
* HDBits
|
||||
* HDChina
|
||||
* HDCity
|
||||
* HDHome
|
||||
* HDME
|
||||
* HDSky
|
||||
* HDTorrents.it
|
||||
* Hebits
|
||||
* Hon3y HD
|
||||
* Hounddawgs
|
||||
* House-of-Torrents
|
||||
* Hyperay
|
||||
* ICE Torrent
|
||||
* I Love Classics
|
||||
* Immortalseed
|
||||
* Infinity-T
|
||||
* inPeril
|
||||
* Insane Tracker
|
||||
* IPTorrents
|
||||
@@ -195,11 +207,11 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* NCore
|
||||
* Nebulance
|
||||
* New Real World
|
||||
* Norbits [![(invite needed)][inviteneeded]](#) <!-- added by DiseaseNO but no longer maintained? -->
|
||||
* Norbits <!-- added by DiseaseNO but no longer maintained? -->
|
||||
* notwhat.cd
|
||||
* Ourbits
|
||||
* Passione Torrent <!-- maintained by bonny1992 -->
|
||||
* PassThePopcorn [![(invite needed)][inviteneeded]](#)
|
||||
* PassThePopcorn
|
||||
* PirateTheNet
|
||||
* PiXELHD
|
||||
* PolishSource
|
||||
@@ -208,11 +220,14 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* PrivateHD
|
||||
* Psytorrents
|
||||
* PTFiles
|
||||
* PuntoTorrent
|
||||
* Racing4Everyone (R4E)
|
||||
* Redacted (PassTheHeadphones)
|
||||
* RevolutionTT
|
||||
* Rockhard Lossless
|
||||
* RGU
|
||||
* RoDVD
|
||||
* SceneFZ
|
||||
* SceneReactor
|
||||
* SceneTime
|
||||
* SDBits
|
||||
* Secret Cinema
|
||||
@@ -226,8 +241,9 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* SportsCult
|
||||
* SportHD
|
||||
* Superbits
|
||||
* Synthesiz3r
|
||||
* Tasmanit
|
||||
* TBPlus
|
||||
* TenYardTracker
|
||||
* The Empire
|
||||
* The Geeks
|
||||
* The Horror Charnel
|
||||
@@ -238,42 +254,52 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* The Show
|
||||
* The Vault
|
||||
* The-Torrents
|
||||
* TehConnection
|
||||
* TenYardTracker
|
||||
* Torrent Network
|
||||
* Torrent Sector Crew
|
||||
* Torrent.LT
|
||||
* TorrentBD
|
||||
* TorrentBytes
|
||||
* TorrentCCF [![(invite needed)][inviteneeded]](#)
|
||||
* TorrentDay
|
||||
* Torrentech
|
||||
* TorrentHeaven
|
||||
* TorrentHR
|
||||
* Torrenting
|
||||
* Torrentland
|
||||
* TorrentLeech
|
||||
* Torrents.Md
|
||||
* TorrentVault
|
||||
* TorrentSeeds
|
||||
* Torrent-Syndikat
|
||||
* TOrrent-tuRK (TORK)
|
||||
* TorViet
|
||||
* ToTheGlory
|
||||
* TranceTraffic
|
||||
* Trezzor
|
||||
* TV Chaos UK
|
||||
* TV-Vault
|
||||
* u-Torrent
|
||||
* u-torrents (SceneFZ)
|
||||
* UHDBits
|
||||
* Ultimate Gamer Club
|
||||
* ULTRAHDCLUB
|
||||
* Waffles
|
||||
* World-In-HD
|
||||
* WorldOfP2P
|
||||
* x264
|
||||
* xBytesV2
|
||||
* XSpeeds
|
||||
* Xthor
|
||||
* Your Exotic Torrents
|
||||
* Zamunda.net
|
||||
* Zelka.org
|
||||
|
||||
Trackers marked with [![(invite needed)][inviteneeded]](#) have no active maintainer and are missing features or are broken. If you have an invite for them please send it to kaso1717 -at- gmail.com to get them fixed/improved.
|
||||
|
||||
### Aggregate indexers
|
||||
|
||||
A special "all" indexer is available at `/api/v2.0/indexers/all/results/torznab/api`.
|
||||
It will query all configured indexers and return the combined results.
|
||||
|
||||
To get all Jackett indexers including their capabilities you can use `t=indexers` on the all indexer. To get only configured/unconfigured indexers you can also add `configured=true/false` as query parameter.
|
||||
|
||||
## Installation on Windows
|
||||
|
||||
We recommend you install Jackett as a Windows service using the supplied installer. You may also download the zipped version if you would like to configure everything manually.
|
||||
@@ -292,7 +318,7 @@ When installed as a service the tray icon acts as a way to open/start/stop Jacke
|
||||
Jackett can also be run from the command line if you would like to see log messages (Ensure the server isn't already running from the tray/service). This can be done by using "JackettConsole.exe" (for Command Prompt), found in the Jackett data folder: "%ProgramData%\Jackett".
|
||||
|
||||
## Installation on Linux
|
||||
1. Install [Mono 4.6](http://www.mono-project.com/download/#download-lin) or better (using the latest stable release for your distribution is recommended)
|
||||
1. Install [Mono 5.8](http://www.mono-project.com/download/#download-lin) or better (using the latest stable release is recommended)
|
||||
* Follow the instructions on the mono website and install the `mono-devel` and the `ca-certificates-mono` packages.
|
||||
* On Red Hat/CentOS/openSUSE/Fedora the `mono-locale-extras` package is also required.
|
||||
2. Install libcurl:
|
||||
@@ -305,6 +331,8 @@ Detailed instructions for [Ubuntu 14.x](http://www.htpcguides.com/install-jacket
|
||||
|
||||
If you want to run it with a user without a /home directory you need to add `Environment=XDG_CONFIG_HOME=/path/to/folder` to your systemd file, this folder will be used to store your config files.
|
||||
|
||||
Mono must be compiled with the Roslyn compiler (default), using MCS will cause "An error has occurred." errors (See https://github.com/Jackett/Jackett/issues/2704).
|
||||
|
||||
## Installation on macOS
|
||||
|
||||
### Prerequisites
|
||||
@@ -315,7 +343,7 @@ Install [Mono 4.6](http://www.mono-project.com/download/#download-mac) or better
|
||||
1. Download and extract the latest `Jackett.Binaries.Mono.tar.gz` release from the [releases page](https://github.com/Jackett/Jackett/releases).
|
||||
2. Open the extracted folder and double-click on `install_service_macos`.
|
||||
3. If the installation was a success, you can close the Terminal window.
|
||||
|
||||
|
||||
The service will start on each logon. You can always stop it by running `launchctl unload ~/Library/LaunchAgents/org.user.Jackett.plist` from Terminal. You can start it again it using `launchctl load ~/Library/LaunchAgents/org.user.Jackett.plist`.
|
||||
Logs are stored as usual under `~/.config/Jackett/log.txt`.
|
||||
|
||||
@@ -328,6 +356,19 @@ Detailed instructions are available at [LinuxServer.io Jackett Docker](https://h
|
||||
## Installation on Synology
|
||||
Jackett is available as beta package from [SynoCommunity](https://synocommunity.com/)
|
||||
|
||||
## Running Jackett behind a reverse proxy
|
||||
When running jackett behind a reverse proxy make sure that the original hostname of the request is passed to Jackett. If HTTPS is used also set the X-Forwarded-Proto header to "https". Don't forget to adjust the "Base Path Override" Jackett option accordingly.
|
||||
|
||||
Example config for apache:
|
||||
```
|
||||
<Location /jackett>
|
||||
ProxyPreserveHost On
|
||||
RequestHeader set X-Forwarded-Proto expr=%{REQUEST_SCHEME}
|
||||
ProxyPass http://127.0.0.1:9117
|
||||
ProxyPassReverse http://127.0.0.1:9117
|
||||
</Location>
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
* __Command line switches__
|
||||
@@ -341,18 +382,42 @@ Jackett is available as beta package from [SynoCommunity](https://synocommunity.
|
||||
- On Linux (as user root): `wget -O - https://curl.haxx.se/ca/cacert.pem | cert-sync /dev/stdin`
|
||||
- On macOS: `curl -sS https://curl.haxx.se/ca/cacert.pem | cert-sync --user /dev/stdin`
|
||||
|
||||
* __Enable logging__
|
||||
* __Enable enhanced logging__
|
||||
|
||||
You can get additional logging with the command line switches `-t -l` or by enabling `Enhanced logging` via the web interface.
|
||||
You can get *enhanced* logging with the command line switches `-t -l` or by enabling `Enhanced logging` via the web interface (followed by clicking on the `Apply Server Settings` button).
|
||||
Please post logs if you are unable to resolve your issue with these switches ensuring to remove your username/password/cookies.
|
||||
The logfiles (log.txt/updater.txt) are stored in `%ProgramData%\Jackett` on Windows and `~/.config/Jackett/` on Linux/macOS.
|
||||
|
||||
## Configuring OMDb
|
||||
This feature is used as a fallback to get the movie/series title if only the IMDB ID is provided in the request.
|
||||
To use it, please just request a free API key on [OMDb](http://www.omdbapi.com/apikey.aspx) (1,000 daily requests limit) and paste the key in Jackett
|
||||
|
||||
## Creating an issue
|
||||
Please supply as much information about the problem you are experiencing as possible. Your issue has a much greater chance of being resolved if logs are supplied so that we can see what is going on. Creating an issue with '### isn't working' doesn't help anyone to fix the problem.
|
||||
|
||||
## Contributing
|
||||
All contributions are welcome just send a pull request. Jackett's framework allows our team (and any other volunteering dev) to implement new trackers in an hour or two. If you'd like support for a new tracker but are not a developer then feel free to leave a request on the [issues page](https://github.com/Jackett/Jackett/issues). It is recommended to use Visual Studio 2017 when making code changes in this project. You can download the community version for free [here](https://www.visualstudio.com/downloads/).
|
||||
|
||||
|
||||
## Building from source
|
||||
|
||||
### Windows
|
||||
* Open the Jackett solution in Visual Studio 2017 (version 15.7 or above)
|
||||
* Right click on the Jackett solution and click 'Rebuild Solution' to restore nuget packages
|
||||
* Select Jackett.Console as startup project
|
||||
* Build/Start the project
|
||||
|
||||
### Linux
|
||||
|
||||
```bash
|
||||
sudo apt install mono-complete nuget msbuild # install build tools (debian/ubuntu)
|
||||
git clone https://github.com/Jackett/Jackett.git
|
||||
cd Jackett/src
|
||||
nuget restore Jackett.sln # prepare dependencies
|
||||
msbuild Jackett.Console/Jackett.Console.csproj /t:Build /p:Configuration=Debug # compile
|
||||
mono Jackett.Console/bin/Debug/JackettConsole.exe # run jackett
|
||||
```
|
||||
|
||||
## Screenshots
|
||||
|
||||

|
||||
|
69
appveyor.yml
@@ -1,72 +1,33 @@
|
||||
version: 0.8.{build}
|
||||
pull_requests:
|
||||
do_not_increment_build_number: true
|
||||
skip_tags: true
|
||||
image: Visual Studio 2017
|
||||
configuration: Release
|
||||
shallow_clone: true
|
||||
assembly_info:
|
||||
patch: true
|
||||
file: '**\AssemblyInfo.*'
|
||||
assembly_version: '{version}'
|
||||
assembly_file_version: '{version}'
|
||||
assembly_informational_version: '{version}'
|
||||
install:
|
||||
- cmd: choco install InnoSetup
|
||||
before_build:
|
||||
- cmd: nuget restore src\Jackett.sln
|
||||
build:
|
||||
verbosity: minimal
|
||||
after_build:
|
||||
- cmd: >-
|
||||
xcopy src\Jackett.Console\bin\Release base\ /e /y
|
||||
|
||||
copy /Y src\Jackett.Service\bin\Release\JackettService.exe* %APPVEYOR_BUILD_FOLDER%\base\
|
||||
|
||||
copy /Y src\Jackett.Tray\bin\Release\JackettTray.exe* %APPVEYOR_BUILD_FOLDER%\base\
|
||||
|
||||
copy /Y src\Jackett.Updater\bin\Release\JackettUpdater.exe* %APPVEYOR_BUILD_FOLDER%\base\
|
||||
|
||||
copy /Y Upstart.config base\Upstart.config
|
||||
|
||||
copy /Y LICENSE base\LICENSE
|
||||
|
||||
copy /Y README.md base\README.md
|
||||
|
||||
|
||||
xcopy base build.windows\ /e /y
|
||||
|
||||
xcopy base BaseBuild\Jackett\ /e /y
|
||||
|
||||
|
||||
"C:\Program Files (x86)\Inno Setup 5\ISCC.exe" Installer.iss
|
||||
|
||||
RENAME Output\setup.exe Jackett.Installer.Windows.exe
|
||||
|
||||
MOVE Output\Jackett.Installer.Windows.exe %APPVEYOR_BUILD_FOLDER%
|
||||
|
||||
|
||||
cd BaseBuild
|
||||
|
||||
7z a -tzip -r "%APPVEYOR_BUILD_FOLDER%\Jackett.Binaries.Windows.zip" "Jackett\"
|
||||
|
||||
7z a -ttar "%APPVEYOR_BUILD_FOLDER%\Jackett.Binaries.Mono.tar" "Jackett\"
|
||||
|
||||
cd %APPVEYOR_BUILD_FOLDER%
|
||||
|
||||
7z a -tgzip "Jackett.Binaries.Mono.tar.gz" "Jackett.Binaries.Mono.tar"
|
||||
|
||||
|
||||
appveyor PushArtifact Jackett.Installer.Windows.exe
|
||||
|
||||
appveyor PushArtifact Jackett.Binaries.Windows.zip
|
||||
|
||||
appveyor PushArtifact Jackett.Binaries.Mono.tar.gz
|
||||
dotnet_csproj:
|
||||
patch: true
|
||||
file: '**\*.csproj'
|
||||
version: '{version}'
|
||||
package_version: '{version}'
|
||||
assembly_version: '{version}'
|
||||
file_version: '{version}'
|
||||
informational_version: '{version}'
|
||||
build_script:
|
||||
- ps: .\build.ps1
|
||||
test: off
|
||||
before_deploy:
|
||||
- ps: ${env:release_description} = ( Get-Content -LiteralPath BuildOutput/ReleaseNotes.txt -Encoding UTF8 ) -join "`n";
|
||||
deploy:
|
||||
- provider: GitHub
|
||||
tag: v$(appveyor_build_version)
|
||||
description: $(release_description)
|
||||
auth_token:
|
||||
secure: hOg+16YTIbq4kO9u4D1YVOTbWDqgCX6mAQYMbnmBBSw2CiUsZh7OKbupoUb3FtWa
|
||||
artifact: /^(?:(?![Ee]xperimental).)*$/
|
||||
draft: true
|
||||
on:
|
||||
branch: master
|
||||
|
285
build.cake
Normal file
@@ -0,0 +1,285 @@
|
||||
#tool nuget:?package=NUnit.ConsoleRunner
|
||||
#addin nuget:?package=Cake.Git
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// ARGUMENTS
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
var target = Argument("target", "Default");
|
||||
var configuration = Argument("configuration", "Release");
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// PREPARATION
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Define directories.
|
||||
var workingDir = MakeAbsolute(Directory("./"));
|
||||
var artifactsDirName = "Artifacts";
|
||||
var testResultsDirName = "TestResults";
|
||||
|
||||
var windowsBuildFullFramework = "./BuildOutput/FullFramework/Windows";
|
||||
var monoBuildFullFramework = "./BuildOutput/FullFramework/Mono";
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// TASKS
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
Task("Info")
|
||||
.Does(() =>
|
||||
{
|
||||
Information(@"Jackett Cake build script starting...");
|
||||
Information(@"Requires InnoSetup and C:\cygwin to be present for packaging (Pre-installed on AppVeyor)");
|
||||
Information(@"Working directory is: " + workingDir);
|
||||
});
|
||||
|
||||
Task("Clean")
|
||||
.IsDependentOn("Info")
|
||||
.Does(() =>
|
||||
{
|
||||
CleanDirectories("./src/**/obj" + configuration);
|
||||
CleanDirectories("./src/**/bin" + configuration);
|
||||
CleanDirectories("./BuildOutput");
|
||||
CleanDirectories("./" + artifactsDirName);
|
||||
CleanDirectories("./" + testResultsDirName);
|
||||
|
||||
Information("Clean completed");
|
||||
});
|
||||
|
||||
Task("Restore-NuGet-Packages")
|
||||
.IsDependentOn("Clean")
|
||||
.Does(() =>
|
||||
{
|
||||
NuGetRestore("./src/Jackett.sln");
|
||||
});
|
||||
|
||||
Task("Build")
|
||||
.IsDependentOn("Restore-NuGet-Packages")
|
||||
.Does(() =>
|
||||
{
|
||||
MSBuild("./src/Jackett.sln", settings => settings.SetConfiguration(configuration));
|
||||
});
|
||||
|
||||
Task("Run-Unit-Tests")
|
||||
.IsDependentOn("Build")
|
||||
.Does(() =>
|
||||
{
|
||||
CreateDirectory("./" + testResultsDirName);
|
||||
var resultsFile = $"./{testResultsDirName}/JackettTestResult.xml";
|
||||
|
||||
NUnit3("./src/**/bin/" + configuration + "/**/*.Test.dll", new NUnit3Settings
|
||||
{
|
||||
Results = new[] { new NUnit3Result { FileName = resultsFile } }
|
||||
});
|
||||
|
||||
if(AppVeyor.IsRunningOnAppVeyor)
|
||||
{
|
||||
AppVeyor.UploadTestResults(resultsFile, AppVeyorTestResultsType.NUnit3);
|
||||
}
|
||||
});
|
||||
|
||||
Task("Copy-Files-Full-Framework")
|
||||
.IsDependentOn("Run-Unit-Tests")
|
||||
.Does(() =>
|
||||
{
|
||||
var windowsOutput = windowsBuildFullFramework + "/Jackett";
|
||||
|
||||
CopyDirectory("./src/Jackett.Console/bin/" + configuration, windowsOutput);
|
||||
CopyFiles("./src/Jackett.Service/bin/" + configuration + "/JackettService.*", windowsOutput);
|
||||
CopyFiles("./src/Jackett.Tray/bin/" + configuration + "/JackettTray.*", windowsOutput);
|
||||
CopyFiles("./src/Jackett.Updater/bin/" + configuration + "/JackettUpdater.*", windowsOutput);
|
||||
CopyFiles("./Upstart.config", windowsOutput);
|
||||
CopyFiles("./LICENSE", windowsOutput);
|
||||
CopyFiles("./README.md", windowsOutput);
|
||||
|
||||
var monoOutput = monoBuildFullFramework + "/Jackett";
|
||||
|
||||
CopyDirectory(windowsBuildFullFramework, monoBuildFullFramework);
|
||||
DeleteFiles(monoOutput + "/JackettService.*");
|
||||
DeleteFiles(monoOutput + "/JackettTray.*");
|
||||
|
||||
Information("Full framework file copy completed");
|
||||
});
|
||||
|
||||
Task("Check-Packaging-Platform")
|
||||
.IsDependentOn("Copy-Files-Full-Framework")
|
||||
.Does(() =>
|
||||
{
|
||||
if (IsRunningOnWindows())
|
||||
{
|
||||
CreateDirectory("./" + artifactsDirName);
|
||||
Information("Platform is Windows");
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Exception("Packaging is currently only implemented for a Windows environment");
|
||||
}
|
||||
});
|
||||
|
||||
Task("Package-Windows-Installer-Full-Framework")
|
||||
.IsDependentOn("Check-Packaging-Platform")
|
||||
.Does(() =>
|
||||
{
|
||||
InnoSetup("./Installer.iss", new InnoSetupSettings {
|
||||
OutputDirectory = workingDir + "/" + artifactsDirName
|
||||
});
|
||||
});
|
||||
|
||||
Task("Package-Files-Full-Framework-Windows")
|
||||
.IsDependentOn("Check-Packaging-Platform")
|
||||
.Does(() =>
|
||||
{
|
||||
Zip(windowsBuildFullFramework, $"./{artifactsDirName}/Jackett.Binaries.Windows.zip");
|
||||
Information(@"Full Framework Windows Binaries Zipping Completed");
|
||||
});
|
||||
|
||||
Task("Package-Files-Full-Framework-Mono")
|
||||
.IsDependentOn("Check-Packaging-Platform")
|
||||
.Does(() =>
|
||||
{
|
||||
var cygMonoBuildPath = RelativeWinPathToCygPath(monoBuildFullFramework);
|
||||
var tarFileName = "Jackett.Binaries.Mono.tar";
|
||||
var tarArguments = @"-cvf " + cygMonoBuildPath + "/" + tarFileName + " -C " + cygMonoBuildPath + " Jackett --mode ='755'";
|
||||
var gzipArguments = @"-k " + cygMonoBuildPath + "/" + tarFileName;
|
||||
|
||||
RunCygwinCommand("Tar", tarArguments);
|
||||
RunCygwinCommand("Gzip", gzipArguments);
|
||||
|
||||
MoveFile($"{monoBuildFullFramework}/{tarFileName}.gz", $"./{artifactsDirName}/{tarFileName}.gz");
|
||||
});
|
||||
|
||||
Task("Package-Full-Framework")
|
||||
.IsDependentOn("Package-Windows-Installer-Full-Framework")
|
||||
.IsDependentOn("Package-Files-Full-Framework-Windows")
|
||||
.IsDependentOn("Package-Files-Full-Framework-Mono")
|
||||
.Does(() =>
|
||||
{
|
||||
Information("Full Framwork Packaging Completed");
|
||||
});
|
||||
|
||||
Task("Appveyor-Push-Artifacts")
|
||||
.IsDependentOn("Package-Full-Framework")
|
||||
.Does(() =>
|
||||
{
|
||||
if (AppVeyor.IsRunningOnAppVeyor)
|
||||
{
|
||||
foreach (var file in GetFiles(workingDir + $"/{artifactsDirName}/*"))
|
||||
{
|
||||
AppVeyor.UploadArtifact(file.FullPath);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Information(@"Skipping as not running in AppVeyor Environment");
|
||||
}
|
||||
});
|
||||
|
||||
Task("Release-Notes")
|
||||
.IsDependentOn("Appveyor-Push-Artifacts")
|
||||
.Does(() =>
|
||||
{
|
||||
string latestTag = GitDescribe(".", false, GitDescribeStrategy.Tags, 0);
|
||||
Information($"Latest tag is: {latestTag}" + Environment.NewLine);
|
||||
|
||||
List<GitCommit> relevantCommits = new List<GitCommit>();
|
||||
|
||||
var commitCollection = GitLog("./", 50);
|
||||
|
||||
foreach(GitCommit commit in commitCollection)
|
||||
{
|
||||
var commitTag = GitDescribe(".", commit.Sha, false, GitDescribeStrategy.Tags, 0);
|
||||
|
||||
if (commitTag == latestTag)
|
||||
{
|
||||
relevantCommits.Add(commit);
|
||||
}
|
||||
else
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
relevantCommits = relevantCommits.AsEnumerable().Reverse().Skip(1).ToList();
|
||||
|
||||
if (relevantCommits.Count() > 0)
|
||||
{
|
||||
List<string> notesList = new List<string>();
|
||||
|
||||
foreach(GitCommit commit in relevantCommits)
|
||||
{
|
||||
notesList.Add($"{commit.MessageShort} (Thank you @{commit.Author.Name})");
|
||||
}
|
||||
|
||||
string buildNote = String.Join(Environment.NewLine, notesList);
|
||||
Information(buildNote);
|
||||
|
||||
System.IO.File.WriteAllLines(workingDir + "\\BuildOutput\\ReleaseNotes.txt", notesList.ToArray());
|
||||
}
|
||||
else
|
||||
{
|
||||
Information($"No commit messages found to create release notes");
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
private void RunCygwinCommand(string utility, string utilityArguments)
|
||||
{
|
||||
var cygwinDir = @"C:\cygwin\bin\";
|
||||
var utilityProcess = cygwinDir + utility + ".exe";
|
||||
|
||||
Information("CygWin Utility: " + utility);
|
||||
Information("CygWin Directory: " + cygwinDir);
|
||||
Information("Utility Location: " + utilityProcess);
|
||||
Information("Utility Arguments: " + utilityArguments);
|
||||
|
||||
IEnumerable<string> redirectedStandardOutput;
|
||||
IEnumerable<string> redirectedErrorOutput;
|
||||
var exitCodeWithArgument =
|
||||
StartProcess(
|
||||
utilityProcess,
|
||||
new ProcessSettings {
|
||||
Arguments = utilityArguments,
|
||||
WorkingDirectory = cygwinDir,
|
||||
RedirectStandardOutput = true
|
||||
},
|
||||
out redirectedStandardOutput,
|
||||
out redirectedErrorOutput
|
||||
);
|
||||
|
||||
Information(utility + " output:" + Environment.NewLine + string.Join(Environment.NewLine, redirectedStandardOutput.ToArray()));
|
||||
|
||||
// Throw exception if anything was written to the standard error.
|
||||
if (redirectedErrorOutput != null && redirectedErrorOutput.Any())
|
||||
{
|
||||
throw new Exception(
|
||||
string.Format(
|
||||
utility + " Errors ocurred: {0}",
|
||||
string.Join(", ", redirectedErrorOutput)));
|
||||
}
|
||||
|
||||
Information(utility + " Exit code: {0}", exitCodeWithArgument);
|
||||
}
|
||||
|
||||
private string RelativeWinPathToCygPath(string relativePath)
|
||||
{
|
||||
var cygdriveBase = "/cygdrive/" + workingDir.ToString().Replace(":", "").Replace("\\", "/");
|
||||
var cygPath = cygdriveBase + relativePath.Replace(".", "");
|
||||
return cygPath;
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// TASK TARGETS
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
Task("Default")
|
||||
.IsDependentOn("Release-Notes")
|
||||
.Does(() =>
|
||||
{
|
||||
Information("Default Task Completed");
|
||||
});
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// EXECUTION
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
RunTarget(target);
|
235
build.ps1
Normal file
@@ -0,0 +1,235 @@
|
||||
##########################################################################
|
||||
# This is the Cake bootstrapper script for PowerShell.
|
||||
# This file was downloaded from https://github.com/cake-build/resources
|
||||
# Feel free to change this file to fit your needs.
|
||||
##########################################################################
|
||||
|
||||
<#
|
||||
|
||||
.SYNOPSIS
|
||||
This is a Powershell script to bootstrap a Cake build.
|
||||
|
||||
.DESCRIPTION
|
||||
This Powershell script will download NuGet if missing, restore NuGet tools (including Cake)
|
||||
and execute your Cake build script with the parameters you provide.
|
||||
|
||||
.PARAMETER Script
|
||||
The build script to execute.
|
||||
.PARAMETER Target
|
||||
The build script target to run.
|
||||
.PARAMETER Configuration
|
||||
The build configuration to use.
|
||||
.PARAMETER Verbosity
|
||||
Specifies the amount of information to be displayed.
|
||||
.PARAMETER ShowDescription
|
||||
Shows description about tasks.
|
||||
.PARAMETER DryRun
|
||||
Performs a dry run.
|
||||
.PARAMETER Experimental
|
||||
Uses the nightly builds of the Roslyn script engine.
|
||||
.PARAMETER Mono
|
||||
Uses the Mono Compiler rather than the Roslyn script engine.
|
||||
.PARAMETER SkipToolPackageRestore
|
||||
Skips restoring of packages.
|
||||
.PARAMETER ScriptArgs
|
||||
Remaining arguments are added here.
|
||||
|
||||
.LINK
|
||||
https://cakebuild.net
|
||||
|
||||
#>
|
||||
|
||||
[CmdletBinding()]
|
||||
Param(
|
||||
[string]$Script = "build.cake",
|
||||
[string]$Target,
|
||||
[string]$Configuration,
|
||||
[ValidateSet("Quiet", "Minimal", "Normal", "Verbose", "Diagnostic")]
|
||||
[string]$Verbosity,
|
||||
[switch]$ShowDescription,
|
||||
[Alias("WhatIf", "Noop")]
|
||||
[switch]$DryRun,
|
||||
[switch]$Experimental,
|
||||
[switch]$Mono,
|
||||
[switch]$SkipToolPackageRestore,
|
||||
[Parameter(Position=0,Mandatory=$false,ValueFromRemainingArguments=$true)]
|
||||
[string[]]$ScriptArgs
|
||||
)
|
||||
|
||||
[Reflection.Assembly]::LoadWithPartialName("System.Security") | Out-Null
|
||||
function MD5HashFile([string] $filePath)
|
||||
{
|
||||
if ([string]::IsNullOrEmpty($filePath) -or !(Test-Path $filePath -PathType Leaf))
|
||||
{
|
||||
return $null
|
||||
}
|
||||
|
||||
[System.IO.Stream] $file = $null;
|
||||
[System.Security.Cryptography.MD5] $md5 = $null;
|
||||
try
|
||||
{
|
||||
$md5 = [System.Security.Cryptography.MD5]::Create()
|
||||
$file = [System.IO.File]::OpenRead($filePath)
|
||||
return [System.BitConverter]::ToString($md5.ComputeHash($file))
|
||||
}
|
||||
finally
|
||||
{
|
||||
if ($file -ne $null)
|
||||
{
|
||||
$file.Dispose()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function GetProxyEnabledWebClient
|
||||
{
|
||||
$wc = New-Object System.Net.WebClient
|
||||
$proxy = [System.Net.WebRequest]::GetSystemWebProxy()
|
||||
$proxy.Credentials = [System.Net.CredentialCache]::DefaultCredentials
|
||||
$wc.Proxy = $proxy
|
||||
return $wc
|
||||
}
|
||||
|
||||
Write-Host "Preparing to run build script..."
|
||||
|
||||
if(!$PSScriptRoot){
|
||||
$PSScriptRoot = Split-Path $MyInvocation.MyCommand.Path -Parent
|
||||
}
|
||||
|
||||
$TOOLS_DIR = Join-Path $PSScriptRoot "tools"
|
||||
$ADDINS_DIR = Join-Path $TOOLS_DIR "Addins"
|
||||
$MODULES_DIR = Join-Path $TOOLS_DIR "Modules"
|
||||
$NUGET_EXE = Join-Path $TOOLS_DIR "nuget.exe"
|
||||
$CAKE_EXE = Join-Path $TOOLS_DIR "Cake/Cake.exe"
|
||||
$NUGET_URL = "https://dist.nuget.org/win-x86-commandline/latest/nuget.exe"
|
||||
$PACKAGES_CONFIG = Join-Path $TOOLS_DIR "packages.config"
|
||||
$PACKAGES_CONFIG_MD5 = Join-Path $TOOLS_DIR "packages.config.md5sum"
|
||||
$ADDINS_PACKAGES_CONFIG = Join-Path $ADDINS_DIR "packages.config"
|
||||
$MODULES_PACKAGES_CONFIG = Join-Path $MODULES_DIR "packages.config"
|
||||
|
||||
# Make sure tools folder exists
|
||||
if ((Test-Path $PSScriptRoot) -and !(Test-Path $TOOLS_DIR)) {
|
||||
Write-Verbose -Message "Creating tools directory..."
|
||||
New-Item -Path $TOOLS_DIR -Type directory | out-null
|
||||
}
|
||||
|
||||
# Make sure that packages.config exist.
|
||||
if (!(Test-Path $PACKAGES_CONFIG)) {
|
||||
Write-Verbose -Message "Downloading packages.config..."
|
||||
try {
|
||||
$wc = GetProxyEnabledWebClient
|
||||
$wc.DownloadFile("https://cakebuild.net/download/bootstrapper/packages", $PACKAGES_CONFIG) } catch {
|
||||
Throw "Could not download packages.config."
|
||||
}
|
||||
}
|
||||
|
||||
# Try find NuGet.exe in path if not exists
|
||||
if (!(Test-Path $NUGET_EXE)) {
|
||||
Write-Verbose -Message "Trying to find nuget.exe in PATH..."
|
||||
$existingPaths = $Env:Path -Split ';' | Where-Object { (![string]::IsNullOrEmpty($_)) -and (Test-Path $_ -PathType Container) }
|
||||
$NUGET_EXE_IN_PATH = Get-ChildItem -Path $existingPaths -Filter "nuget.exe" | Select -First 1
|
||||
if ($NUGET_EXE_IN_PATH -ne $null -and (Test-Path $NUGET_EXE_IN_PATH.FullName)) {
|
||||
Write-Verbose -Message "Found in PATH at $($NUGET_EXE_IN_PATH.FullName)."
|
||||
$NUGET_EXE = $NUGET_EXE_IN_PATH.FullName
|
||||
}
|
||||
}
|
||||
|
||||
# Try download NuGet.exe if not exists
|
||||
if (!(Test-Path $NUGET_EXE)) {
|
||||
Write-Verbose -Message "Downloading NuGet.exe..."
|
||||
try {
|
||||
$wc = GetProxyEnabledWebClient
|
||||
$wc.DownloadFile($NUGET_URL, $NUGET_EXE)
|
||||
} catch {
|
||||
Throw "Could not download NuGet.exe."
|
||||
}
|
||||
}
|
||||
|
||||
# Save nuget.exe path to environment to be available to child processed
|
||||
$ENV:NUGET_EXE = $NUGET_EXE
|
||||
|
||||
# Restore tools from NuGet?
|
||||
if(-Not $SkipToolPackageRestore.IsPresent) {
|
||||
Push-Location
|
||||
Set-Location $TOOLS_DIR
|
||||
|
||||
# Check for changes in packages.config and remove installed tools if true.
|
||||
[string] $md5Hash = MD5HashFile($PACKAGES_CONFIG)
|
||||
if((!(Test-Path $PACKAGES_CONFIG_MD5)) -Or
|
||||
($md5Hash -ne (Get-Content $PACKAGES_CONFIG_MD5 ))) {
|
||||
Write-Verbose -Message "Missing or changed package.config hash..."
|
||||
Get-ChildItem -Exclude packages.config,nuget.exe,Cake.Bakery |
|
||||
Remove-Item -Recurse
|
||||
}
|
||||
|
||||
Write-Verbose -Message "Restoring tools from NuGet..."
|
||||
$NuGetOutput = Invoke-Expression "&`"$NUGET_EXE`" install -ExcludeVersion -OutputDirectory `"$TOOLS_DIR`""
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Throw "An error occurred while restoring NuGet tools."
|
||||
}
|
||||
else
|
||||
{
|
||||
$md5Hash | Out-File $PACKAGES_CONFIG_MD5 -Encoding "ASCII"
|
||||
}
|
||||
Write-Verbose -Message ($NuGetOutput | out-string)
|
||||
|
||||
Pop-Location
|
||||
}
|
||||
|
||||
# Restore addins from NuGet
|
||||
if (Test-Path $ADDINS_PACKAGES_CONFIG) {
|
||||
Push-Location
|
||||
Set-Location $ADDINS_DIR
|
||||
|
||||
Write-Verbose -Message "Restoring addins from NuGet..."
|
||||
$NuGetOutput = Invoke-Expression "&`"$NUGET_EXE`" install -ExcludeVersion -OutputDirectory `"$ADDINS_DIR`""
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Throw "An error occurred while restoring NuGet addins."
|
||||
}
|
||||
|
||||
Write-Verbose -Message ($NuGetOutput | out-string)
|
||||
|
||||
Pop-Location
|
||||
}
|
||||
|
||||
# Restore modules from NuGet
|
||||
if (Test-Path $MODULES_PACKAGES_CONFIG) {
|
||||
Push-Location
|
||||
Set-Location $MODULES_DIR
|
||||
|
||||
Write-Verbose -Message "Restoring modules from NuGet..."
|
||||
$NuGetOutput = Invoke-Expression "&`"$NUGET_EXE`" install -ExcludeVersion -OutputDirectory `"$MODULES_DIR`""
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Throw "An error occurred while restoring NuGet modules."
|
||||
}
|
||||
|
||||
Write-Verbose -Message ($NuGetOutput | out-string)
|
||||
|
||||
Pop-Location
|
||||
}
|
||||
|
||||
# Make sure that Cake has been installed.
|
||||
if (!(Test-Path $CAKE_EXE)) {
|
||||
Throw "Could not find Cake.exe at $CAKE_EXE"
|
||||
}
|
||||
|
||||
|
||||
|
||||
# Build Cake arguments
|
||||
$cakeArguments = @("$Script");
|
||||
if ($Target) { $cakeArguments += "-target=$Target" }
|
||||
if ($Configuration) { $cakeArguments += "-configuration=$Configuration" }
|
||||
if ($Verbosity) { $cakeArguments += "-verbosity=$Verbosity" }
|
||||
if ($ShowDescription) { $cakeArguments += "-showdescription" }
|
||||
if ($DryRun) { $cakeArguments += "-dryrun" }
|
||||
if ($Experimental) { $cakeArguments += "-experimental" }
|
||||
if ($Mono) { $cakeArguments += "-mono" }
|
||||
$cakeArguments += $ScriptArgs
|
||||
|
||||
# Start Cake
|
||||
Write-Host "Running build script..."
|
||||
&$CAKE_EXE $cakeArguments
|
||||
exit $LASTEXITCODE
|
@@ -1,7 +1,8 @@
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Callbacks
|
||||
{
|
||||
/// <summary>
|
||||
/// Called when cURL has debug information for the client.
|
||||
|
@@ -1,6 +1,7 @@
|
||||
using System;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Callbacks
|
||||
{
|
||||
/// <summary>
|
||||
/// Called when <c>cURL</c> wants to lock a shared resource.
|
||||
|
@@ -19,6 +19,7 @@
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
|
@@ -19,6 +19,8 @@
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Callbacks;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
|
@@ -19,6 +19,7 @@
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
|
@@ -20,6 +20,7 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
@@ -295,7 +296,9 @@ namespace CurlSharp
|
||||
_multiInfo = null;
|
||||
throw new NotImplementedException("CurlMulti.InfoRead()");
|
||||
#endif
|
||||
#pragma warning disable CS0162 // Unreachable code detected when not compiling with the shim
|
||||
return _multiInfo;
|
||||
#pragma warning restore CS0162 // Unreachable code detected when not compiling with the shim
|
||||
}
|
||||
}
|
||||
}
|
@@ -17,6 +17,8 @@
|
||||
*
|
||||
**************************************************************************/
|
||||
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
/// <summary>
|
||||
|
@@ -19,6 +19,8 @@
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Callbacks;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
|
@@ -20,6 +20,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
|
@@ -18,6 +18,7 @@
|
||||
**************************************************************************/
|
||||
|
||||
using System;
|
||||
using CurlSharp.Callbacks;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
|
@@ -18,7 +18,7 @@
|
||||
**************************************************************************/
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains values used to specify the order in which cached connections
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Status code returned from <see cref="CurlEasy" /> functions.
|
||||
|
@@ -17,7 +17,7 @@
|
||||
* $Id: Enums.cs,v 1.1 2005/02/17 22:47:25 jeffreyphillips Exp $
|
||||
**************************************************************************/
|
||||
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// One of these is returned by <see cref="CurlHttpMultiPartForm.AddSection" />.
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// These are options available to build a multi-part form section
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// This enumeration contains values used to specify the FTP Ssl
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// This enumeration contains values used to specify the FTP Ssl level
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// This enumeration contains values used to specify the HTTP authentication
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains values used to specify the HTTP version level when using
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// This enumeration is used to extract information associated with an
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// A member of this enumeration is passed as the first parameter to the
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains values used to initialize libcurl internally. One of
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Your handler for the <see cref="CurlEasy.CurlIoctlCallback" />
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Your handler for the <see cref="CurlEasy.CurlIoctlCallback" /> delegate
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// This enumeration contains values used to specify the IP resolution
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Values containing the type of shared access requested when libcurl
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Members of this enumeration should be passed to
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// The status code associated with an <see cref="CurlEasy" /> object in a
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains return codes for many of the functions in the
|
||||
|
@@ -8,7 +8,7 @@
|
||||
//
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
public enum CurlMultiOption
|
||||
{
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains values used to specify the preference of libcurl between
|
||||
|
@@ -8,7 +8,7 @@
|
||||
//
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
public enum CurlOptType
|
||||
{
|
||||
|
@@ -17,7 +17,9 @@
|
||||
*
|
||||
**************************************************************************/
|
||||
|
||||
namespace CurlSharp
|
||||
using CurlSharp.Callbacks;
|
||||
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// One of these is passed as the first parameter to
|
||||
|
@@ -8,7 +8,7 @@
|
||||
//
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/* bitmask bits for CURLMOPT_PIPELINING */
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// This enumeration contains values used to specify the proxy type when
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains return codes from many of the functions in the
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// A member of this enumeration is passed to the function
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains values used to specify the Ssl version level when using
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains values used to specify the time condition when using
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// A member of this enumeration is passed to the function
|
||||
|
@@ -1,4 +1,4 @@
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// A bitmask of libcurl features OR'd together as the value of the
|
||||
|
@@ -24,6 +24,7 @@ using System;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
using CurlSharp.Enums;
|
||||
|
||||
namespace CurlSharp
|
||||
{
|
||||
|
@@ -1,10 +1,4 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CurlSharp
|
||||
namespace CurlSharp
|
||||
{
|
||||
public class SSLFix
|
||||
{
|
||||
|
@@ -5,14 +5,11 @@
|
||||
// sergey.stoyan@gmail.com
|
||||
// 27 February 2007
|
||||
//********************************************************************************************
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.IO;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading;
|
||||
using System.Collections;
|
||||
namespace Cliver
|
||||
|
||||
namespace DateTimeRoutines
|
||||
{
|
||||
/// <summary>
|
||||
/// Miscellaneous and parsing methods for DateTime
|
||||
|
@@ -1,7 +1,7 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>netstandard1.5;net452</TargetFrameworks>
|
||||
<TargetFrameworks>netstandard2.0;net452</TargetFrameworks>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
||||
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 8.8 KiB |
Before Width: | Height: | Size: 9.6 KiB After Width: | Height: | Size: 9.6 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 8.2 KiB After Width: | Height: | Size: 8.2 KiB |
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
@@ -1,275 +1,275 @@
|
||||
body {
|
||||
background-image: url("binding_dark.png");
|
||||
background-repeat: repeat;
|
||||
}
|
||||
|
||||
#page {
|
||||
border-radius: 6px;
|
||||
background-color: white;
|
||||
max-width: 900px;
|
||||
margin: 0 auto;
|
||||
margin-top: 30px;
|
||||
padding: 20px;
|
||||
margin-bottom: 100px;
|
||||
}
|
||||
|
||||
.container-fluid {
|
||||
}
|
||||
|
||||
#templates {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#indexers {
|
||||
text-align: center;
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.indexer-table {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.test-success {
|
||||
color: #449d44;
|
||||
}
|
||||
|
||||
.test-error {
|
||||
color: #c9302c;
|
||||
}
|
||||
|
||||
.test-inprogress {
|
||||
color: #286090;
|
||||
}
|
||||
|
||||
.indexer-buttons {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.indexer-buttons > .btn {
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
.indexer-button-test {
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.setup-item-inputstring {
|
||||
max-width: 255px;
|
||||
}
|
||||
|
||||
.setup-item-inputbool input {
|
||||
max-width: 100px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
.setup-item-inputselect {
|
||||
max-width: 255px;
|
||||
}
|
||||
|
||||
[data-type=hiddendata]{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.spinner {
|
||||
-webkit-animation: spin 2s infinite linear;
|
||||
-moz-animation: spin 2s infinite linear;
|
||||
-o-animation: spin 2s infinite linear;
|
||||
animation: spin 2s infinite linear;
|
||||
}
|
||||
|
||||
@-moz-keyframes spin {
|
||||
from {
|
||||
-moz-transform: rotate(0deg);
|
||||
}
|
||||
|
||||
to {
|
||||
-moz-transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes spin {
|
||||
from {
|
||||
-webkit-transform: rotate(0deg);
|
||||
}
|
||||
|
||||
to {
|
||||
-webkit-transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes spin {
|
||||
from {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
to {
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
#setup-indexer-go {
|
||||
width: 70px;
|
||||
}
|
||||
|
||||
hr {
|
||||
border-top-color: #cdcdcd;
|
||||
}
|
||||
|
||||
.input-area {
|
||||
margin: 4px 0px;
|
||||
}
|
||||
|
||||
.input-area > * {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.input-area > p {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.input-header {
|
||||
font-size: 18px;
|
||||
width: 160px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.input-right {
|
||||
width: 300px;
|
||||
display: inline-block;
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#sonarr-warning {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#logo {
|
||||
max-width: 50px;
|
||||
}
|
||||
|
||||
#header-title {
|
||||
font-size: 34px;
|
||||
vertical-align: middle;
|
||||
padding-left: 15px;
|
||||
}
|
||||
|
||||
#footer {
|
||||
color: #444444;
|
||||
margin: 0 auto;
|
||||
margin-top: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#jackett-allowext, #jackett-allowupdate, #jackett-logging, #jackett-prerelease {
|
||||
width: 25px;
|
||||
}
|
||||
|
||||
.modal-fillwidth {
|
||||
width: 1200px;
|
||||
min-width:80%;
|
||||
}
|
||||
|
||||
.indexer-caps {
|
||||
padding: 0px 15px 15px 15px;
|
||||
border-top: 1px solid #e5e5e5;
|
||||
}
|
||||
|
||||
.indexer-caps table {
|
||||
border-bottom: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.jackettlogWarn {
|
||||
background-color: #FFFF8E !important;
|
||||
}
|
||||
|
||||
.jackettlogError {
|
||||
background-color: #FF6060 !important;
|
||||
}
|
||||
|
||||
.jackettdownloaded {
|
||||
color: blueviolet;
|
||||
}
|
||||
|
||||
.jacketdownloadlocal {
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.downloadcolumn {
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
pre {
|
||||
display: block;
|
||||
padding: 3px;
|
||||
margin: 0 0 0px;
|
||||
font-size: 13px;
|
||||
line-height: 1.42857143;
|
||||
color: #333;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
background-color: transparent;
|
||||
border: 0px;
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
.modal-open .modal {
|
||||
overflow-x: auto; /* Model can be bigger than the screen on mobiles */
|
||||
}
|
||||
|
||||
.dataTables_filter input {
|
||||
width: 400px
|
||||
}
|
||||
|
||||
#unconfigured-indexers-template {
|
||||
display: none;
|
||||
}
|
||||
.jackett-apikey{
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.jackett-apikey .input-header{
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
.setup-item-displayinfo:empty {
|
||||
display: none;
|
||||
}
|
||||
|
||||
table td.fit{
|
||||
white-space: nowrap;
|
||||
width: 1%;
|
||||
}
|
||||
|
||||
.label-imdb {
|
||||
background-color: #d0ab44;
|
||||
}
|
||||
|
||||
.tooltip-inner {
|
||||
max-width: 500px !important;
|
||||
}
|
||||
|
||||
.tooltip-inner img {
|
||||
max-width: 250px;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.type-public {
|
||||
color: #449d44
|
||||
}
|
||||
|
||||
.type-private {
|
||||
color: #c9302c
|
||||
}
|
||||
|
||||
.type-semi-private {
|
||||
color: #ec971f
|
||||
}
|
||||
|
||||
.dataTables_deadfilter {
|
||||
float: right;
|
||||
text-align: right;
|
||||
margin-right: 1em;
|
||||
}
|
||||
input#searchquery{
|
||||
width:400px;
|
||||
}
|
||||
body {
|
||||
background-image: url("binding_dark.png");
|
||||
background-repeat: repeat;
|
||||
}
|
||||
|
||||
#page {
|
||||
border-radius: 6px;
|
||||
background-color: white;
|
||||
max-width: 900px;
|
||||
margin: 0 auto;
|
||||
margin-top: 30px;
|
||||
padding: 20px;
|
||||
margin-bottom: 100px;
|
||||
}
|
||||
|
||||
.container-fluid {
|
||||
}
|
||||
|
||||
#templates {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#indexers {
|
||||
text-align: center;
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.indexer-table {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.test-success {
|
||||
color: #449d44;
|
||||
}
|
||||
|
||||
.test-error {
|
||||
color: #c9302c;
|
||||
}
|
||||
|
||||
.test-inprogress {
|
||||
color: #286090;
|
||||
}
|
||||
|
||||
.indexer-buttons {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.indexer-buttons > .btn {
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
.indexer-button-test {
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.setup-item-inputstring {
|
||||
max-width: 255px;
|
||||
}
|
||||
|
||||
.setup-item-inputbool input {
|
||||
max-width: 100px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
.setup-item-inputselect {
|
||||
max-width: 255px;
|
||||
}
|
||||
|
||||
[data-type=hiddendata]{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.spinner {
|
||||
-webkit-animation: spin 2s infinite linear;
|
||||
-moz-animation: spin 2s infinite linear;
|
||||
-o-animation: spin 2s infinite linear;
|
||||
animation: spin 2s infinite linear;
|
||||
}
|
||||
|
||||
@-moz-keyframes spin {
|
||||
from {
|
||||
-moz-transform: rotate(0deg);
|
||||
}
|
||||
|
||||
to {
|
||||
-moz-transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes spin {
|
||||
from {
|
||||
-webkit-transform: rotate(0deg);
|
||||
}
|
||||
|
||||
to {
|
||||
-webkit-transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes spin {
|
||||
from {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
to {
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
#setup-indexer-go {
|
||||
width: 70px;
|
||||
}
|
||||
|
||||
hr {
|
||||
border-top-color: #cdcdcd;
|
||||
}
|
||||
|
||||
.input-area {
|
||||
margin: 4px 0px;
|
||||
}
|
||||
|
||||
.input-area > * {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.input-area > p {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.input-header {
|
||||
font-size: 18px;
|
||||
width: 160px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.input-right {
|
||||
width: 300px;
|
||||
display: inline-block;
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
#sonarr-warning {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#logo {
|
||||
max-width: 50px;
|
||||
}
|
||||
|
||||
#header-title {
|
||||
font-size: 34px;
|
||||
vertical-align: middle;
|
||||
padding-left: 15px;
|
||||
}
|
||||
|
||||
#footer {
|
||||
color: #444444;
|
||||
margin: 0 auto;
|
||||
margin-top: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#jackett-allowext, #jackett-allowupdate, #jackett-logging, #jackett-prerelease {
|
||||
width: 25px;
|
||||
}
|
||||
|
||||
.modal-fillwidth {
|
||||
width: 1200px;
|
||||
min-width:80%;
|
||||
}
|
||||
|
||||
.indexer-caps {
|
||||
padding: 0px 15px 15px 15px;
|
||||
border-top: 1px solid #e5e5e5;
|
||||
}
|
||||
|
||||
.indexer-caps table {
|
||||
border-bottom: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.jackettlogWarn {
|
||||
background-color: #FFFF8E !important;
|
||||
}
|
||||
|
||||
.jackettlogError {
|
||||
background-color: #FF6060 !important;
|
||||
}
|
||||
|
||||
.jackettdownloaded {
|
||||
color: blueviolet;
|
||||
}
|
||||
|
||||
.jacketdownloadlocal {
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.downloadcolumn {
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
pre {
|
||||
display: block;
|
||||
padding: 3px;
|
||||
margin: 0 0 0px;
|
||||
font-size: 13px;
|
||||
line-height: 1.42857143;
|
||||
color: #333;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
background-color: transparent;
|
||||
border: 0px;
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
.modal-open .modal {
|
||||
overflow-x: auto; /* Model can be bigger than the screen on mobiles */
|
||||
}
|
||||
|
||||
.dataTables_filter input {
|
||||
width: 400px
|
||||
}
|
||||
|
||||
#unconfigured-indexers-template {
|
||||
display: none;
|
||||
}
|
||||
.jackett-apikey{
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.jackett-apikey .input-header{
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
.setup-item-displayinfo:empty {
|
||||
display: none;
|
||||
}
|
||||
|
||||
table td.fit{
|
||||
white-space: nowrap;
|
||||
width: 1%;
|
||||
}
|
||||
|
||||
.label-imdb {
|
||||
background-color: #d0ab44;
|
||||
}
|
||||
|
||||
.tooltip-inner {
|
||||
max-width: 500px !important;
|
||||
}
|
||||
|
||||
.tooltip-inner img {
|
||||
max-width: 250px;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.type-public {
|
||||
color: #449d44
|
||||
}
|
||||
|
||||
.type-private {
|
||||
color: #c9302c
|
||||
}
|
||||
|
||||
.type-semi-private {
|
||||
color: #ec971f
|
||||
}
|
||||
|
||||
.dataTables_deadfilter {
|
||||
float: right;
|
||||
text-align: right;
|
||||
margin-right: 1em;
|
||||
}
|
||||
input#searchquery{
|
||||
width:400px;
|
||||
}
|
@@ -67,6 +67,7 @@ function loadJackettSettings() {
|
||||
$("#app-version").html(data.app_version);
|
||||
$("#jackett-port").val(data.port);
|
||||
|
||||
$("#jackett-proxy-type").val(data.proxy_type);
|
||||
$("#jackett-proxy-url").val(data.proxy_url);
|
||||
$("#jackett-proxy-port").val(data.proxy_port);
|
||||
$("#jackett-proxy-username").val(data.proxy_username);
|
||||
@@ -109,6 +110,7 @@ function reloadIndexers() {
|
||||
unconfiguredIndexers = [];
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
var item = data[i];
|
||||
item.rss_host = resolveUrl(basePath + "/api/v2.0/indexers/" + item.id + "/results/torznab/api?apikey=" + api.key + "&t=search&cat=&q=");
|
||||
item.torznab_host = resolveUrl(basePath + "/api/v2.0/indexers/" + item.id + "/results/torznab/");
|
||||
item.potato_host = resolveUrl(basePath + "/api/v2.0/indexers/" + item.id + "/results/potato/");
|
||||
|
||||
@@ -219,7 +221,7 @@ function displayUnconfiguredIndexersList() {
|
||||
}
|
||||
}).fail(function (data) {
|
||||
if(data.responseJSON.error !== undefined) {
|
||||
doNotify("An error occured while configuring this indexer<br /><b>" + data.responseJSON.error + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + indexerId + "] " + data.responseJSON.error + " (Config)\" target=\"_blank\">Click here to open an issue on Github for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
doNotify("An error occured while configuring this indexer<br /><b>" + data.responseJSON.error + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + indexerId + "] " + data.responseJSON.error + " (Config)\" target=\"_blank\">Click here to open an issue on GitHub for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
} else {
|
||||
doNotify("An error occured while configuring this indexer, is Jackett server running ?", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
@@ -442,7 +444,7 @@ function testIndexer(id, notifyResult) {
|
||||
}).fail(function (data) {
|
||||
updateTestState(id, "error", data.error, indexers);
|
||||
if(data.responseJSON.error !== undefined && notifyResult) {
|
||||
doNotify("An error occured while testing this indexer<br /><b>" + data.responseJSON.error + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + id + "] " + data.responseJSON.error + " (Test)\" target=\"_blank\">Click here to open an issue on Github for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
doNotify("An error occured while testing this indexer<br /><b>" + data.responseJSON.error + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + id + "] " + data.responseJSON.error + " (Test)\" target=\"_blank\">Click here to open an issue on GitHub for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
} else {
|
||||
doNotify("An error occured while testing indexers, please take a look at indexers with failed test for more informations.", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
@@ -495,10 +497,14 @@ function populateConfigItems(configForm, config) {
|
||||
hasReacaptcha = true;
|
||||
captchaItem = config[i];
|
||||
}
|
||||
else if (config[i].id === 'cookieheader' && hasReacaptcha) { // inject cookie into captcha item
|
||||
captchaItem.cookieheader = config[i].value;
|
||||
console.log(captchaItem);
|
||||
}
|
||||
}
|
||||
|
||||
var setupItemTemplate = Handlebars.compile($("#setup-item").html());
|
||||
if (hasReacaptcha && !window.jackettIsLocal) {
|
||||
if (hasReacaptcha && !window.jackettIsLocal && false) { // disable this for now, use inline cookie (below)
|
||||
var setupValueTemplate = Handlebars.compile($("#setup-item-nonlocalrecaptcha").html());
|
||||
captchaItem.value_element = setupValueTemplate(captchaItem);
|
||||
var template = setupItemTemplate(captchaItem);
|
||||
@@ -507,11 +513,22 @@ function populateConfigItems(configForm, config) {
|
||||
|
||||
for (var i = 0; i < config.length; i++) {
|
||||
var item = config[i];
|
||||
var setupValueTemplate = Handlebars.compile($("#setup-item-" + item.type).html());
|
||||
item.value_element = setupValueTemplate(item);
|
||||
var template = setupItemTemplate(item);
|
||||
$formItemContainer.append(template);
|
||||
if ((item.id === 'username' || item.id === 'password') && hasReacaptcha) {
|
||||
continue; // skip username/password if there's a recaptcha
|
||||
}
|
||||
if (item.type != 'recaptcha') {
|
||||
var setupValueTemplate = Handlebars.compile($("#setup-item-" + item.type).html());
|
||||
item.value_element = setupValueTemplate(item);
|
||||
var template = setupItemTemplate(item);
|
||||
$formItemContainer.append(template);
|
||||
}
|
||||
if (item.type === 'recaptcha') {
|
||||
// inject cookie dialog until recaptcha can be solved again
|
||||
var setupValueTemplate = Handlebars.compile($("#setup-item-nonlocalrecaptcha").html());
|
||||
captchaItem.value_element = setupValueTemplate(captchaItem);
|
||||
var template = setupItemTemplate(captchaItem);
|
||||
$formItemContainer.append(template);
|
||||
/*
|
||||
var jackettrecaptcha = $('.jackettrecaptcha');
|
||||
jackettrecaptcha.data("version", item.version);
|
||||
switch (item.version) {
|
||||
@@ -541,6 +558,7 @@ function populateConfigItems(configForm, config) {
|
||||
});
|
||||
break;
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -632,7 +650,7 @@ function populateSetupForm(indexerId, name, config, caps, link, alternativesitel
|
||||
}
|
||||
}).fail(function (data) {
|
||||
if(data.responseJSON.error !== undefined) {
|
||||
doNotify("An error occured while updating this indexer<br /><b>" + data.responseJSON.error + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + indexerId + "] " + data.responseJSON.error + " (Config)\" target=\"_blank\">Click here to open an issue on Github for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
doNotify("An error occured while updating this indexer<br /><b>" + data.responseJSON.error + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + indexerId + "] " + data.responseJSON.error + " (Config)\" target=\"_blank\">Click here to open an issue on GitHub for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
} else {
|
||||
doNotify("An error occured while updating this indexer, request to Jackett server failed, is server running ?", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
@@ -1134,6 +1152,7 @@ function bindUIButtons() {
|
||||
var jackett_omdb_key = $("#jackett-omdbkey").val();
|
||||
|
||||
var jackett_proxy_url = $("#jackett-proxy-url").val();
|
||||
var jackett_proxy_type = $("#jackett-proxy-type").val();
|
||||
var jackett_proxy_port = $("#jackett-proxy-port").val();
|
||||
var jackett_proxy_username = $("#jackett-proxy-username").val();
|
||||
var jackett_proxy_password = $("#jackett-proxy-password").val();
|
||||
@@ -1147,6 +1166,7 @@ function bindUIButtons() {
|
||||
logging: jackett_logging,
|
||||
basepathoverride: jackett_basepathoverride,
|
||||
omdbkey: jackett_omdb_key,
|
||||
proxy_type: jackett_proxy_type,
|
||||
proxy_url: jackett_proxy_url,
|
||||
proxy_port: jackett_proxy_port,
|
||||
proxy_username: jackett_proxy_username,
|
Before Width: | Height: | Size: 361 KiB After Width: | Height: | Size: 361 KiB |
Before Width: | Height: | Size: 306 KiB After Width: | Height: | Size: 306 KiB |
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 106 KiB |
Before Width: | Height: | Size: 160 B After Width: | Height: | Size: 160 B |
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
Before Width: | Height: | Size: 201 B After Width: | Height: | Size: 201 B |
Before Width: | Height: | Size: 158 B After Width: | Height: | Size: 158 B |
Before Width: | Height: | Size: 146 B After Width: | Height: | Size: 146 B |
@@ -7,6 +7,7 @@
|
||||
<meta name="mobile-web-app-capable" content="yes" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<meta charset="utf-8" />
|
||||
<meta name="referrer" content="no-referrer" /> <!-- Don't send referrer when loading third party ressources (E.g. Empornium banner images won't load) -->
|
||||
<link rel="apple-touch-icon" href="../apple-touch-icon.png" />
|
||||
<link rel="apple-touch-icon" sizes="57x57" href="../apple-touch-icon-57x57.png" />
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../apple-touch-icon-72x72.png" />
|
||||
@@ -29,14 +30,14 @@
|
||||
<script type="text/javascript" src="../bootstrap/bootstrap.min.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-notify.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-multiselect.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="https://www.google.com/recaptcha/api.js?render=explicit" async defer></script>
|
||||
<!--<script type="text/javascript" src="https://www.google.com/recaptcha/api.js?render=explicit" async defer></script>-->
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="../bootstrap/bootstrap.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../animate.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../custom.css?changed=2017083001" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=2017083001" media="only screen and (max-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../css/jquery.dataTables.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap-multiselect.css?changed=2017083001"/>
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap-multiselect.css?changed=2017083001" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/font-awesome.min.css?changed=2017083001">
|
||||
<title>Jackett</title>
|
||||
</head>
|
||||
@@ -74,24 +75,30 @@
|
||||
<li>Go to <b>Settings > Indexers > Add > Torznab > Custom</b>.</li>
|
||||
<li>Click on the indexers corresponding <button type="button" class="btn btn-xs btn-info">Copy Torznab Feed</button> button and paste it into the Sonarr/Radarr <b>URL</b> field.</li>
|
||||
<li>For the <b>API key</b> use <b class="api-key-text"></b>.</li>
|
||||
<li>Configure the correct category IDs via the <b>(Anime) Categories</b> options. See the Jackett indexer configuration for a list of supported categories.</li>
|
||||
</ol>
|
||||
<h4>Adding a Jackett indexer in CouchPotato</h4>
|
||||
<ol>
|
||||
<li>Go to <b>Settings > Searchers</b>.</li>
|
||||
<li>Enable <b>TorrentPotato</b>.
|
||||
<li>Click on the indexers corresponding <button type="button" class="btn btn-xs btn-info">Copy Potato Feed</button> button and past it into the CouchPotato <b>host</b> field.</li>
|
||||
<li>Click on the indexers corresponding <button type="button" class="btn btn-xs btn-info">Copy Potato Feed</button> button and paste it into the CouchPotato <b>host</b> field.</li>
|
||||
<li>For the <b>Passkey</b> use <b class="api-key-text"></b>. Leave the <b>username</b> field blank.</li>
|
||||
</ol>
|
||||
|
||||
<h4>Adding a Jackett indexer to RSS clients (RSS feed)</h4>
|
||||
<ol>
|
||||
<li>Click on the indexers corresponding <button type="button" class="btn btn-xs btn-info">Copy RSS Feed</button> button and paste it into the URL field of the RSS client.</li>
|
||||
<li>You can adjust the <b>q</b> (search string) and <b>cat</b> (categories) arguments accordingly.
|
||||
E.g. <b>...&cat=2030,2040&q=big+buck+bunny</b> will search for "big buck bunny" in the Movies/SD (2030) and Movies/HD (2040) categories (See the indexer configuration for available categories).</li>
|
||||
</ol>
|
||||
</div>
|
||||
<hr />
|
||||
<h3>Jackett Configuration</h3>
|
||||
<div class="text-center">
|
||||
<div class="btn-group">
|
||||
<div class="btn-toolbar">
|
||||
<button id="change-jackett-port" class="btn btn-primary btn-sm">
|
||||
<i class="fa fa-wrench"></i> Apply server settings <span class="glyphicon glyphicon-ok-wrench" aria-hidden="true"></span>
|
||||
</button>
|
||||
<button id="view-jackett-logs" class="btn btn-danger btn-sm">
|
||||
<button id="view-jackett-logs" class="btn btn-success btn-sm">
|
||||
<i class="fa fa-rss"></i> View logs <span class="glyphicon glyphicon-ok-wrench" aria-hidden="true"></span>
|
||||
</button>
|
||||
<button id="trigger-updater" class="btn btn-warning btn-sm">
|
||||
@@ -123,6 +130,14 @@
|
||||
<input id="jackett-savedir" class="form-control input-right" type="text" value="" placeholder="c:\torrents\">
|
||||
</div>
|
||||
|
||||
<div class="input-area">
|
||||
<span class="input-header">Proxy type: </span>
|
||||
<select id="jackett-proxy-type" class="form-control input-right">
|
||||
<option value="0">http</option>
|
||||
<option value="1">socks4</option>
|
||||
<option value="2">socks5</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="input-area">
|
||||
<span class="input-header">Proxy url: </span>
|
||||
<input id="jackett-proxy-url" class="form-control input-right" type="text" value="" placeholder="Blank to disable">
|
||||
@@ -164,7 +179,7 @@
|
||||
</div>
|
||||
<hr />
|
||||
<div id="footer">
|
||||
Jackett Version <span id="app-version"></span>
|
||||
<a href="https://github.com/Jackett/Jackett" target="_blank" title="Jackett on GitHub">Jackett</a> Version <span id="app-version"></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -174,7 +189,7 @@
|
||||
<div class="setup-item-recaptcha">
|
||||
<p>This site requires you to solve a ReCaptcha. It's no longer possible to solve the captcha in Jackett. Please enter the cookie for the site manually. <a href="https://github.com/Jackett/Jackett/wiki/Finding-cookies" target="_blank">See here</a> on how get the cookies.</p>
|
||||
<div class="setup-item-label">Full cookie header</div>
|
||||
<input class="form-control" type="text" value="" />
|
||||
<input class="form-control" type="text" value="{{cookieheader}}" />
|
||||
</div>
|
||||
</script>
|
||||
<script id="setup-item" type="text/x-handlebars-template">
|
||||
@@ -257,6 +272,7 @@
|
||||
<td><a target="_blank" href="{{site_link}}" title="{{description}}">{{name}}</a> <span title="{{type}}" class="label label-{{type_label}}" style="text-transform: capitalize;">{{type}}</span></td>
|
||||
<td class="fit">
|
||||
<div class="indexer-buttons">
|
||||
<a href="{{rss_host}}" title="{{rss_host}}" role="button" class="indexer-button-copy btn btn-xs btn-info">Copy RSS Feed</i></a>
|
||||
<a href="{{torznab_host}}" title="{{torznab_host}}" role="button" class="indexer-button-copy btn btn-xs btn-info">Copy Torznab Feed</a>
|
||||
<a href="{{potato_host}}" title="{{potato_host}}" role="button" class="indexer-button-copy btn btn-xs btn-info{{#unless potatoenabled}} disabled{{/unless}}">Copy Potato Feed</a>
|
||||
|
||||
@@ -458,14 +474,14 @@
|
||||
|
||||
<script id="jackett-search-results" type="text/x-handlebars-template">
|
||||
<hr />
|
||||
<p>Your search was done using:
|
||||
{{#each Indexers}}{{Name}}
|
||||
{{#if Error}}
|
||||
<p>Your search was done using:
|
||||
{{#each Indexers}}{{Name}}
|
||||
{{#if Error}}
|
||||
(<span title="{{Error}}"><b>Error</b></span>)
|
||||
{{else}}
|
||||
({{Results}})
|
||||
{{/if}}
|
||||
, {{/each}}
|
||||
{{else}}
|
||||
({{Results}})
|
||||
{{/if}}
|
||||
, {{/each}}
|
||||
</p>
|
||||
<table id="jackett-search-results-datatable" class="dataTable compact cell-border hover stripe">
|
||||
<thead>
|
||||
@@ -643,6 +659,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=2017103101"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=2017110603"></script>
|
||||
</body>
|
||||
</html>
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |