24#ifndef HTML_CIPHERING_HPP
25#define HTML_CIPHERING_HPP
35#include <dar/libdar.hpp>
40#include "body_builder.hpp"
42#include "html_form.hpp"
43#include "html_form_fieldset.hpp"
44#include "html_form_select.hpp"
45#include "html_crypto_algo.hpp"
46#include "html_form_input.hpp"
47#include "html_form_input_unit.hpp"
48#include "html_form_gnupg_list.hpp"
49#include "html_form_radio.hpp"
60 static const std::string changed;
75 void set_crypto_size_range(
const libdar::infinint & min,
76 const libdar::infinint & max);
78 libdar::U_I get_multi_threaded_crypto()
const;
79 libdar::crypto_algo get_crypto_algo()
const;
80 crypto_type_t get_crypto_type()
const;
81 libdar::secu_string get_crypto_pass()
const;
82 libdar::infinint get_iteration_count()
const;
83 libdar::hash_algo get_kdf_hash()
const;
84 std::vector<std::string> get_gnupg_recipients()
const;
85 std::vector<std::string> get_gnupg_signatories()
const;
86 libdar::U_32 get_crypto_size()
const;
89 virtual void load_json(
const json & source)
override;
98 virtual void on_event(
const std::string & event_name)
override;
120 static constexpr const char* kdf_algo_changed =
"kdf_algo_changed";
137 void set_kdf_hash(libdar::hash_algo hash);
139 static constexpr const unsigned int format_version = 1;
140 static constexpr const char* myclass_id =
"html_ciphering";
142 static constexpr const char* jlabel_type =
"type";
143 static constexpr const char* jlabel_algo =
"algo";
144 static constexpr const char* jlabel_pass =
"key";
145 static constexpr const char* jlabel_size =
"block-size";
146 static constexpr const char* jlabel_threads =
"threads";
147 static constexpr const char* jlabel_gnupg =
"gnupg";
148 static constexpr const char* jlabel_kdf_hash =
"hash";
149 static constexpr const char* jlabel_kdf_iter =
"iterations";
class of object that are pointed/triggered to by others
Definition: actor.hpp:55
class body_builder is the root class of object generating HTML body
Definition: body_builder.hpp:99
class chemin definition
Definition: chemin.hpp:51
class events
Definition: events.hpp:52
html component used for the user to define a has algorithm
Definition: html_ciphering.hpp:58
virtual json save_json() const override
inherited from jsoner
Definition: html_ciphering.cpp:264
virtual void bind_to_anchor(const std::string &val) override
inherited from body_builder
Definition: html_ciphering.hpp:104
virtual void clear_json() override
inherited from jsoner
Definition: html_ciphering.cpp:282
virtual void on_event(const std::string &event_name) override
actor indirect inheritance
Definition: html_ciphering.cpp:297
void set_to_webdar_defaults()
set the object to webdar defaults
Definition: html_ciphering.cpp:388
virtual void load_json(const json &source) override
inherited from jsoner
Definition: html_ciphering.cpp:216
virtual void new_css_library_available() override
inherited from body_builder
Definition: html_ciphering.cpp:414
virtual void css_classes_have_changed() override
inherited from body_builder
Definition: html_ciphering.cpp:403
virtual std::string inherited_get_body_part(const chemin &path, const request &req) override
inherited from body_builder
Definition: html_ciphering.cpp:397
html component in the form of a drop-down list used to let the user define the crypto algo
Definition: html_crypto_algo.hpp:46
class jsoner
Definition: jsoner.hpp:73
class holding fields of an HTTP request (method, URI, header, cookies, and so on)
Definition: request.hpp:45
defines jsoner class and class exception_json