Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 12 additions & 5 deletions Source/CLI/CLI.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ void __stdcall Event_CallBackFunction(unsigned char* Data_Content, size_t Data_S

//--------------------------------------------------------------------------
CLI::CLI() : watch_folder_user(NULL), use_as_user(-1), use_daemon(false), asynchronous(false),
force_analyze(false), mil_analyze(true),
force_analyze(false), full_report(false), include_hidden_files(false), mil_analyze(true),
watch_folder_recursive(true), create_policy_mode(false), file_information(false),
plugins_list_mode(false), list_watch_folders_mode(false), no_needs_files_mode(false),
list_mode(false), fixer(false)
Expand Down Expand Up @@ -797,6 +797,12 @@ void __stdcall Event_CallBackFunction(unsigned char* Data_Content, size_t Data_S
full_report = full;
}

//--------------------------------------------------------------------------
void CLI::set_include_hidden(bool hidden)
{
include_hidden_files = hidden;
}

//--------------------------------------------------------------------------
int CLI::add_plugin_to_use(const std::string& plugin)
{
Expand Down Expand Up @@ -1067,10 +1073,11 @@ void __stdcall Event_CallBackFunction(unsigned char* Data_Content, size_t Data_S
return;
}

ZenLib::ZtringList list = ZenLib::Dir::GetAllFileNames(dirname,
(ZenLib::Dir::dirlist_t)(ZenLib::Dir::Include_Files |
ZenLib::Dir::Include_Hidden |
ZenLib::Dir::Parse_SubDirs));
int flags = ZenLib::Dir::Include_Files | ZenLib::Dir::Parse_SubDirs;
if (include_hidden_files)
flags |= ZenLib::Dir::Include_Hidden;

ZenLib::ZtringList list = ZenLib::Dir::GetAllFileNames(dirname, (ZenLib::Dir::dirlist_t)flags);

for (size_t i =0; i < list.size(); ++i)
files.push_back(ZenLib::Ztring(list[i]).To_UTF8()); //Append the filename to the list of filenames to parse
Expand Down
2 changes: 2 additions & 0 deletions Source/CLI/CLI.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ namespace MediaConch
int set_policy_reference_file(const std::string& file);
void set_policy_verbosity(const std::string& verbosity);
void set_full_report(bool full);
void set_include_hidden(bool hidden);
int add_plugin_to_use(const std::string& plugin);
int set_user_to_use(const std::string& user);
int set_compression_mode(const std::string& mode_str);
Expand Down Expand Up @@ -103,6 +104,7 @@ namespace MediaConch
bool asynchronous;
bool force_analyze;
bool full_report;
bool include_hidden_files;
bool mil_analyze;
bool watch_folder_recursive;
bool create_policy_mode;
Expand Down
9 changes: 9 additions & 0 deletions Source/CLI/CommandLine_Parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -270,6 +270,7 @@ int Parse(MediaConch::CLI* cli, std::string& argument)
OPTION("--compression", Compression)
OPTION("--force", Force)
OPTION("--full", Full)
OPTION("--includehidden", IncludeHidden)
OPTION("--nomilanalyze", NoMilAnalyze)
OPTION("--async", Asynchronous)
OPTION("--pluginslist", PluginsList)
Expand Down Expand Up @@ -530,6 +531,14 @@ CL_OPTION(Full)
return CLI_RETURN_NONE;
}

//---------------------------------------------------------------------------
CL_OPTION(IncludeHidden)
{
(void)argument;
cli->set_include_hidden(true);
return CLI_RETURN_NONE;
}

//---------------------------------------------------------------------------
CL_OPTION(NoMilAnalyze)
{
Expand Down
1 change: 1 addition & 0 deletions Source/CLI/CommandLine_Parser.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ CL_OPTION(PolicyVerbosity);
CL_OPTION(Compression);
CL_OPTION(Force);
CL_OPTION(Full);
CL_OPTION(IncludeHidden);
CL_OPTION(NoMilAnalyze);
CL_OPTION(Asynchronous);
CL_OPTION(UsePlugin);
Expand Down
2 changes: 2 additions & 0 deletions Source/CLI/Help.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,8 @@ int Help()
TEXTOUT("File:");
TEXTOUT(" --FileInformation, -fi");
TEXTOUT(" Print files information and quit");
TEXTOUT(" --IncludeHidden");
TEXTOUT(" Include Hidden files when analysing a folder");

return CLI_RETURN_FINISH;
}
Expand Down
14 changes: 9 additions & 5 deletions Source/GUI/Qt/WebCommonPage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,7 @@ namespace MediaConch
}

QString WebCommonPage::on_file_repository_selected(const QString& policy, const QString& display,
const QString& verbosity, bool fixer,
const QString& verbosity, bool fixer, bool hidden,
const QStringList& options)
{
QStringList dirname = file_selector.value("checkerRepository_directory", QStringList());
Expand All @@ -374,7 +374,7 @@ namespace MediaConch

QDir dir(dirname.last());
QFileInfoList list;
add_sub_directory_files_to_list(dir, list);
add_sub_directory_files_to_list(dir, list, hidden);
if (!list.count())
return QString("{\"error\": \"Folder selected is empty.\"}");

Expand Down Expand Up @@ -991,16 +991,20 @@ namespace MediaConch
return json;
}

void WebCommonPage::add_sub_directory_files_to_list(const QDir dir, QFileInfoList& list)
void WebCommonPage::add_sub_directory_files_to_list(const QDir dir, QFileInfoList& list, bool hidden)
{
QFileInfoList tmp = dir.entryInfoList(QDir::Files);
int flags = QDir::Files;
if (hidden)
flags |= QDir::Hidden;

QFileInfoList tmp = dir.entryInfoList((QDir::Filter)flags);
list << tmp;

tmp = dir.entryInfoList(QDir::Dirs | QDir::NoDotAndDotDot);
for (int i = 0; i < tmp.size(); ++i)
{
QDir tmp_dir(tmp[i].absoluteFilePath());
add_sub_directory_files_to_list(tmp_dir, list);
add_sub_directory_files_to_list(tmp_dir, list, hidden);
}
}

Expand Down
4 changes: 2 additions & 2 deletions Source/GUI/Qt/WebCommonPage.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ class WebCommonPage : public QWebEnginePage

protected:
void clean_forms();
void add_sub_directory_files_to_list(const QDir dir, QFileInfoList& list);
void add_sub_directory_files_to_list(const QDir dir, QFileInfoList& list, bool hidden = false);
void charge_local_dir(const QString& directory, QStringList& tmp);
QString choose_file_settings();
QString choose_file_import_policy();
Expand All @@ -75,7 +75,7 @@ public Q_SLOTS:
QString on_file_online_selected(const QString& url, const QString& policy, const QString& display,
const QString& verbosity, bool fixer, const QStringList&);
QString on_file_repository_selected(const QString& policy, const QString& display,
const QString& verbosity, bool fixer, const QStringList&);
const QString& verbosity, bool fixer, bool hidden, const QStringList&);
QString on_file_from_db_selected();
QString status_reports_multi(const QStringList& ids, const QStringList& policy_ids);
void on_save_settings_selected(const QJsonObject& values);
Expand Down
8 changes: 8 additions & 0 deletions Source/Resource/html/formRepository.html
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,14 @@
</div>
</div>

<div class="col-md-12 checkerHidden">
<div class="form-group">
<div class="checkbox">
<label class="label_hidden"><input type="checkbox" id="checkerRepository_hidden" name="checkerRepository_hidden" value="1" /> Include hidden files</label>
</div>
</div>
</div>

<div class="col-md-10">
<div class="form-group">
<label class="col-sm-2 control-label required" for="checkerRepository_directory">Select folder</label>
Expand Down
1 change: 1 addition & 0 deletions Source/Resource/html/js/checker/webengine.js
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ var checkerAjax = (function() {
$('.tab-content .active .displayList').val(),
$('.tab-content .active .verbosityList').val(),
$('#checkerRepository_fixer').is(':checked'),
$('#checkerRepository_hidden').is(':checked'),
options,
function (res)
{
Expand Down
1 change: 1 addition & 0 deletions Source/Resource/html/js/checker/webkit.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ var checkerAjax = (function() {
$('.tab-content .active .displayList').val(),
$('.tab-content .active .verbosityList').val(),
$('#checkerRepository_fixer').is(':checked'),
$('#checkerRepository_hidden').is(':checked'),
options);
}

Expand Down