The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

LaTeXML::Plugin::LtxMojo::Startup Basic support for user and conversion profile management.

SYNOPSIS

my $startup = Startup->new();

DESCRIPTION

METHODS

Generics and Defaults

$DB_FILE

Contains the generic default for a Database File to hold the state information of converters, users and conversion profiles.

$PROFILES

Contains the default profiles recognized by the conversion interface.

my $startup = Startup->new(%opts);

Initializes a new Startup driver and connects to (or creates) its database file. The only admissible option is "dbfile=>filepath" used to specify the location and name of the DB object.

Converter Management

$startup->boot_profile($profile);

Creates a new converter object of the given profile.

$startup->boot_custom($opts);

Creates a new converter with the given default options

User Management

my $users = $startup->users;

Fetches all users registered in the DB object, returning an array reference.

my $boolean = $startup->exists_user($username);

Checks if a given username is registered in the DB object.

my $summary_table = $startup->summary_user($username);

Provides an HTML summary table with the DB properties for a given username entry.

my $boolean = $startup->verify_user($username,$password);

Verifies that a username and password pair match a DB entry.

my $report_message = $startup->modify_user($user,$pass,$role,$default);

Modifies a user entry's password, role and/or default profile selection, returning a string report message.

my $report_message = $startup->delete_user($username);

Deletes a user entry, returning a string report message.

my $property_value = $startup->lookup_user_property($user,$prop_name);

Fetches a value of a requested property name for the user entry designated by $username. Returns undefined if no such property is set.

Profile Management

my $profiles = $startup->profiles;

Fetches all profiles registered in the DB object, returning an array reference.

my $hashref = $startup->get_profile($profilename);

Returns a hash reference with all LaTeXML options characteristic to the profile $profilename.

my $summary_table = $startup->summary_profile($profilename);

Provides an HTML summary table with the DB properties for a given profilename entry.

my $report_message = $startup->modify_profile($profilename,$options);

Modifies a profile's properties, as given by a hash reference compliant with the properties template, returning a string report message.

my $report_message = $startup->delete_profile($profilename);

Deletes a profile entry, returning a string report message.

my $template_html = $startup->template_profile;

Returns a template HTML table, which can be used inside a generic HTML form for profile creation.

Statistics

my $status_string = $startup->status;

Returns the overall statistics of the DB object, as provided by LaTeXML::Util::ObjectDB.

NOTE: The API is still in active development, expect enhancement and possible changes in the interfaces

AUTHOR

Deyan Ginev <d.ginev@jacobs-university.de>

COPYRIGHT

Public domain software, produced as part of work done by the United States Government & not subject to copyright in the US.