Skip to content

Commit 705b57f

Browse files
Merge pull request #795 from g-maxime/fixer
Force ParseSpeed to 1 when fixer
2 parents 1e6e4e9 + 8d420d5 commit 705b57f

File tree

4 files changed

+56
-7
lines changed

4 files changed

+56
-7
lines changed

Source/CLI/CLI.cpp

+19-1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
#include "Common/Reports.h"
1818
#include <Common/MediaConchLib.h>
1919
#include <ZenLib/ZtringList.h>
20+
#include <ZenLib/Ztring.h>
2021
#include <ZenLib/File.h>
2122
#include <ZenLib/Dir.h>
2223

@@ -126,7 +127,7 @@ void __stdcall Event_CallBackFunction(unsigned char* Data_Content, size_t Data_S
126127
force_analyze(false), mil_analyze(true),
127128
watch_folder_recursive(true), create_policy_mode(false), file_information(false),
128129
plugins_list_mode(false), list_watch_folders_mode(false), no_needs_files_mode(false),
129-
list_mode(false)
130+
list_mode(false), fixer(false)
130131
{
131132
format = MediaConchLib::format_Max;
132133
}
@@ -931,6 +932,23 @@ void __stdcall Event_CallBackFunction(unsigned char* Data_Content, size_t Data_S
931932
return CLI_RETURN_FINISH;
932933
}
933934

935+
ZenLib::Ztring str = ZenLib::Ztring().From_UTF8(key.c_str());
936+
if (str.Compare(__T("File_TryToFix")))
937+
{
938+
fixer = true;
939+
options.push_back(std::make_pair(key, value));
940+
options.push_back(std::make_pair("file_parsespeed", "1"));
941+
}
942+
else if (fixer && (str.Compare(__T("File_ParseSpeed")) || str.Compare(__T("ParseSpeed"))))
943+
{
944+
ZenLib::Ztring str = ZenLib::Ztring().From_UTF8(value.c_str());
945+
if (str != __T("1"))
946+
{
947+
STRINGOUT(ZenLib::Ztring().From_UTF8("ParseSpeed option must be set to 1 with File_TryToFix option."));
948+
return CLI_RETURN_ERROR;
949+
}
950+
}
951+
934952
options.push_back(std::make_pair(key, value));
935953
return CLI_RETURN_NONE;
936954
}

Source/CLI/CLI.h

+1
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ namespace MediaConch
111111
bool list_watch_folders_mode;
112112
bool no_needs_files_mode;
113113
bool list_mode;
114+
bool fixer;
114115
};
115116

116117
}

Source/GUI/Qt/mainwindow.cpp

+10-6
Original file line numberDiff line numberDiff line change
@@ -241,11 +241,14 @@ int MainWindow::add_file_to_list(const QString& file, const QString& path,
241241
uisettings.change_last_display(displays_list[display_i].toUtf8().data());
242242
uisettings.change_last_verbosity(verbosity_i);
243243

244-
int parsespeed_idx = options.lastIndexOf("file_parsespeed");
245-
if (parsespeed_idx != -1 && parsespeed_idx < options.size())
246-
uisettings.change_last_parsespeed(options[parsespeed_idx + 1].toStdString());
247-
else
248-
uisettings.change_last_parsespeed("");
244+
if (!fixer)
245+
{
246+
int parsespeed_idx = options.lastIndexOf("file_parsespeed");
247+
if (!fixer && parsespeed_idx != -1 && parsespeed_idx < options.size())
248+
uisettings.change_last_parsespeed(options[parsespeed_idx + 1].toStdString());
249+
else
250+
uisettings.change_last_parsespeed("");
251+
}
249252

250253
std::string full_path = filepath;
251254
#ifdef WINDOWS
@@ -1414,12 +1417,13 @@ int MainWindow::analyze(const std::vector<std::string>& files, bool with_fixer,
14141417
if (with_fixer)
14151418
{
14161419
options.push_back(std::make_pair("File_TryToFix", "1"));
1420+
options.push_back(std::make_pair("file_parsespeed", "1"));
14171421
force = true;
14181422
}
14191423

14201424
for (size_t i = 0; i + 1 < opt.size();)
14211425
{
1422-
if (opt[i] != "File_TryToFix")
1426+
if (opt[i] != "File_TryToFix" && opt[i] != "file_parsespeed")
14231427
options.push_back(std::make_pair(opt[i], opt[i + 1]));
14241428
i += 2;
14251429
}

Source/Resource/html/js/checker/base.js

+26
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,32 @@ var checker = (function() {
88
bindings();
99

1010
//
11+
var checkerUpload_parsespeed_val_save = $('#checkerUpload_parsespeed_selector').val()
12+
$('#checkerUpload_fixer').on('click', function(e) {
13+
if ($('#checkerUpload_fixer').is(':checked')) {
14+
$('#checkerUpload_parsespeed_selector').prop( "disabled", true);
15+
checkerUpload_parsespeed_val_save = $('#checkerUpload_parsespeed_selector').val()
16+
$('#checkerUpload_parsespeed_selector').val('1');
17+
}
18+
else {
19+
$('#checkerUpload_parsespeed_selector').prop( "disabled", false);
20+
$('#checkerUpload_parsespeed_selector').val(checkerUpload_parsespeed_val_save);
21+
}
22+
})
23+
24+
var checkerRepository_parsespeed_val_save = $('#checkerRepository_parsespeed_selector').val()
25+
$('#checkerRepository_fixer').on('click', function(e) {
26+
if ($('#checkerRepository_fixer').is(':checked')) {
27+
$('#checkerRepository_parsespeed_selector').prop( "disabled", true);
28+
checkerRepository_parsespeed_val_save = $('#checkerRepository_parsespeed_selector').val()
29+
$('#checkerRepository_parsespeed_selector').val('1');
30+
}
31+
else {
32+
$('#checkerRepository_parsespeed_selector').prop( "disabled", false);
33+
$('#checkerRepository_parsespeed_selector').val(checkerRepository_parsespeed_val_save);
34+
}
35+
})
36+
1137
webpage.set_parse_speed($('.parsespeedList').val());
1238
$('.parsespeedList').change(function(){
1339
webpage.set_parse_speed($(this).val());

0 commit comments

Comments
 (0)