* Updated Template->get to print a useful error message of a template is not found in a file.

* Moved templates around different files to clean things up.
* Moved the "back" and "refresh" icons over to the right by the logo, and added a new icon for handling mail, alerts, install targets and manifests.
* Started work on the Striker configuration sub-page.

Signed-off-by: Digimer <digimer@alteeve.ca>
main
Digimer 7 years ago
parent 19672f8b7c
commit 6e19d45845
  1. 26
      Anvil/Tools/Template.pm
  2. 57
      cgi-bin/home
  3. 593
      html/skins/alteeve/config.html
  4. BIN
      html/skins/alteeve/images/back.png
  5. BIN
      html/skins/alteeve/images/build_icon.png
  6. BIN
      html/skins/alteeve/images/configure_icon_off.png
  7. BIN
      html/skins/alteeve/images/configure_icon_on.png
  8. BIN
      html/skins/alteeve/images/help_icon_off.png
  9. BIN
      html/skins/alteeve/images/help_icon_on.png
  10. 9
      html/skins/alteeve/images/sources.txt
  11. BIN
      html/skins/alteeve/images/striker_configure.png
  12. 925
      html/skins/alteeve/main.html
  13. 158
      html/skins/alteeve/striker.html
  14. 1
      share/words.xml

@ -187,14 +187,16 @@ sub get
if (not $error) if (not $error)
{ {
my $template_found = 0;
my $in_template = 0; my $in_template = 0;
my $template_file = $anvil->Storage->read_file({file => $source}); my $template_file = $anvil->Storage->read_file({debug => $debug, file => $source});
foreach my $line (split/\n/, $template_file) foreach my $line (split/\n/, $template_file)
{ {
$anvil->Log->entry({source => $THIS_FILE, line => __LINE__, level => $debug, key => "log_0023", variables => { line => $line }}); $anvil->Log->entry({source => $THIS_FILE, line => __LINE__, level => $debug, key => "log_0023", variables => { line => $line }});
if ($line =~ /^<!-- start $name -->/) if ($line =~ /^<!-- start $name -->/)
{ {
$in_template = 1; $in_template = 1;
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => $debug, list => { in_template => $in_template }});
if ($show_name) if ($show_name)
{ {
$template .= "<!-- start: [$source] -> [$name] -->\n"; $template .= "<!-- start: [$source] -> [$name] -->\n";
@ -206,6 +208,11 @@ sub get
if ($line =~ /^<!-- end $name -->/) if ($line =~ /^<!-- end $name -->/)
{ {
$in_template = 0; $in_template = 0;
$template_found = 1;
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => $debug, list => {
in_template => $in_template,
template_found => $template_found,
}});
if ($show_name) if ($show_name)
{ {
$template .= "<!-- end: [$source] -> [$name] -->\n"; $template .= "<!-- end: [$source] -> [$name] -->\n";
@ -225,9 +232,24 @@ sub get
string => $template, string => $template,
variables => $variables, variables => $variables,
}); });
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => $debug, list => { source => $source }});
# If we failed to read the template, then load an error message.
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => $debug, list => {
template_found => $template_found,
template => $template,
}});
if ((not $template_found) or ($template eq "#!not_found!#"))
{
# Error!
$template = $anvil->Words->string({key => "error_0029", variables => {
template => $name,
file => $source,
}});
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => $debug, list => { template => $template }});
}
} }
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => $debug, list => { template => $template }});
return($template); return($template);
} }

@ -68,6 +68,8 @@ $anvil->Get->cgi();
$anvil->data->{skin}{url} = $anvil->data->{path}{urls}{skins}."/".$anvil->Template->skin; $anvil->data->{skin}{url} = $anvil->data->{path}{urls}{skins}."/".$anvil->Template->skin;
$anvil->data->{form}{body} = ""; $anvil->data->{form}{body} = "";
# Time for the header
my $header = $anvil->Template->get({file => "main.html", name => "header", variables => { language => $anvil->Words->language }}); my $header = $anvil->Template->get({file => "main.html", name => "header", variables => { language => $anvil->Words->language }});
# If any jobs are pending/running, show the "unavailable" option. # If any jobs are pending/running, show the "unavailable" option.
@ -92,7 +94,7 @@ else
process_task($anvil); process_task($anvil);
} }
# Preparing the back (and eventually 'reload' button) takes a bit more work. # Build the page to display
my $refresh_button = ""; my $refresh_button = "";
if ($anvil->data->{form}{refresh_link}) if ($anvil->data->{form}{refresh_link})
{ {
@ -119,11 +121,15 @@ else
# Back is disabled. # Back is disabled.
$back_button = $anvil->Template->get({file => "main.html", name => "back_button_off"}); $back_button = $anvil->Template->get({file => "main.html", name => "back_button_off"});
} }
my $buttons = $anvil->Template->get({file => "main.html", name => "button_bar", variables => { my $left_buttons = $anvil->Template->get({file => "main.html", name => "button_bar_left", variables => {
back_button => $back_button, back_button => $back_button,
refresh_button => $refresh_button, refresh_button => $refresh_button,
anvil_button => 0 ? $anvil->Template->get({file => "main.html", name => "anvil_button_on"}) : $anvil->Template->get({file => "main.html", name => "anvil_button_off"}), }});
striker_button => 0 ? $anvil->Template->get({file => "main.html", name => "striker_button_on"}) : $anvil->Template->get({file => "main.html", name => "striker_button_off"}),
my $right_buttons = $anvil->Template->get({file => "main.html", name => "button_bar_right", variables => {
anvil_button => $anvil->data->{sys}{users}{user_name} ? $anvil->Template->get({file => "main.html", name => "anvil_button_on"}) : $anvil->Template->get({file => "main.html", name => "anvil_button_off"}),
striker_button => $anvil->data->{sys}{users}{user_name} ? $anvil->Template->get({file => "main.html", name => "striker_button_on"}) : $anvil->Template->get({file => "main.html", name => "striker_button_off"}),
configure_button => $anvil->data->{sys}{users}{user_name} ? $anvil->Template->get({file => "main.html", name => "configure_button_on"}) : $anvil->Template->get({file => "main.html", name => "configure_button_off"}),
user_button => $anvil->data->{sys}{users}{user_name} ? $anvil->Template->get({file => "main.html", name => "user_button_on"}) : $anvil->Template->get({file => "main.html", name => "user_button_off"}), user_button => $anvil->data->{sys}{users}{user_name} ? $anvil->Template->get({file => "main.html", name => "user_button_on"}) : $anvil->Template->get({file => "main.html", name => "user_button_off"}),
}}); }});
my $footer = $anvil->Template->get({file => "main.html", name => "footer", variables => { my $footer = $anvil->Template->get({file => "main.html", name => "footer", variables => {
@ -131,12 +137,12 @@ my $footer = $anvil->Template->get({file => "main.html", name => "footer", vari
}}); }});
# Display the page. # Display the page.
my $template = $anvil->Template->get({file => "main.html", name => "master", variables => { my $body = $anvil->Template->get({debug => 3, file => "main.html", name => "master", variables => {
header => $header, header => $header,
skin_url => $anvil->data->{path}{urls}{skins}."/".$anvil->Template->skin, skin_url => $anvil->data->{path}{urls}{skins}."/".$anvil->Template->skin,
left_top_bar => "&nbsp;",
center_top_bar => $anvil->data->{form}{error_massage}, center_top_bar => $anvil->data->{form}{error_massage},
right_top_bar => $buttons, right_top_bar => $right_buttons,
left_top_bar => $left_buttons,
center_body => $anvil->data->{form}{body}, center_body => $anvil->data->{form}{body},
left_bottom_bar => "&nbsp;", left_bottom_bar => "&nbsp;",
center_bottom_bar => "&nbsp;", center_bottom_bar => "&nbsp;",
@ -145,7 +151,7 @@ my $template = $anvil->Template->get({file => "main.html", name => "master", var
}}); }});
print $anvil->Template->get({file => "shared.html", name => "http_headers"})."\n"; print $anvil->Template->get({file => "shared.html", name => "http_headers"})."\n";
print $template; print "$body";
$anvil->nice_exit({exit_code => 0}); $anvil->nice_exit({exit_code => 0});
@ -201,7 +207,7 @@ sub process_task
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => 2, list => { logged_in => $logged_in }}); $anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => 2, list => { logged_in => $logged_in }});
if (not $logged_in) if (not $logged_in)
{ {
$anvil->data->{form}{body} = $anvil->Template->get({file => "main.html", name => "striker-login", variables => { $anvil->data->{form}{body} = $anvil->Template->get({file => "striker.html", name => "striker-login", variables => {
user => $anvil->data->{cgi}{username}{value}, user => $anvil->data->{cgi}{username}{value},
password => "", password => "",
}}); }});
@ -212,8 +218,17 @@ sub process_task
# If we're here, the user is logged in! # If we're here, the user is logged in!
if ($anvil->data->{cgi}{striker}{value}) if ($anvil->data->{cgi}{striker}{value})
{ {
$anvil->data->{form}{back_link} = "?striker=true";
if ($anvil->data->{cgi}{task}{value} eq "sync")
{
$anvil->data->{form}{body} = $anvil->Template->get({file => "striker.html", name => "striker-sync"});
}
else
{
# The 'back' goes home
$anvil->data->{form}{back_link} = "?"; $anvil->data->{form}{back_link} = "?";
$anvil->data->{form}{body} = $anvil->Template->get({file => "main.html", name => "striker-setup"}); $anvil->data->{form}{body} = $anvil->Template->get({file => "striker.html", name => "striker-setup"});
}
} }
elsif (0) elsif (0)
{ {
@ -221,7 +236,7 @@ sub process_task
else else
{ {
# Load the main page. # Load the main page.
$anvil->data->{form}{body} = $anvil->Template->get({file => "main.html", name => "striker-welcome"}); $anvil->data->{form}{body} = $anvil->Template->get({file => "striker.html", name => "striker-welcome"});
} }
# $anvil->data->{sys}{users}{user_name} = $user_name; # $anvil->data->{sys}{users}{user_name} = $user_name;
@ -359,7 +374,7 @@ AND
unixtime => $unixtime, unixtime => $unixtime,
}}); }});
$anvil->data->{say}{maintenance} = $anvil->Template->get({file => "main.html", name => "striker-offline", variables => { $anvil->data->{say}{maintenance} = $anvil->Template->get({file => "striker.html", name => "striker-offline", variables => {
title_id => "", title_id => "",
message_id => "", message_id => "",
title => "#!string!striker_0046!#", title => "#!string!striker_0046!#",
@ -510,7 +525,7 @@ ORDER BY
$template .= "_with_gateway"; $template .= "_with_gateway";
$anvil->data->{cgi}{dns}{value} = "--" if not $anvil->data->{cgi}{dns}{value}; $anvil->data->{cgi}{dns}{value} = "--" if not $anvil->data->{cgi}{dns}{value};
} }
$networks .= $anvil->Template->get({file => "main.html", name => $template, variables => { $networks .= $anvil->Template->get({file => "config.html", name => $template, variables => {
column => $anvil->Words->string({key => $column, variables => { number => $link_number }}), column => $anvil->Words->string({key => $column, variables => { number => $link_number }}),
ip_address => $say_ip, ip_address => $say_ip,
ip => $ip, ip => $ip,
@ -537,7 +552,7 @@ ORDER BY
} }
# We don't need to store anything as hidden variables, we'll read it back from the database later. # We don't need to store anything as hidden variables, we'll read it back from the database later.
my $step3_body = $anvil->Template->get({file => "main.html", name => "config_step3", variables => { my $step3_body = $anvil->Template->get({file => "config.html", name => "config_step3", variables => {
step1_welcome_title_id => "", step1_welcome_title_id => "",
step1_welcome_message_id => "", step1_welcome_message_id => "",
organization => $anvil->data->{cgi}{organization}{value}, organization => $anvil->data->{cgi}{organization}{value},
@ -665,7 +680,7 @@ ORDER BY
}); });
# Assemble the form # Assemble the form
$interface_form .= $anvil->Template->get({file => "main.html", name => "bonded_interface_form", variables => { $interface_form .= $anvil->Template->get({file => "config.html", name => "bonded_interface_form", variables => {
field => $anvil->Words->string({key => "striker_0018", variables => { number => $bcn }}), field => $anvil->Words->string({key => "striker_0018", variables => { number => $bcn }}),
description => "#!string!striker_0019!#", description => "#!string!striker_0019!#",
ip_key => $this_ip_key, ip_key => $this_ip_key,
@ -757,7 +772,7 @@ ORDER BY
}); });
# Assemble the form # Assemble the form
$interface_form .= $anvil->Template->get({file => "main.html", name => "single_interface_form", variables => { $interface_form .= $anvil->Template->get({file => "config.html", name => "single_interface_form", variables => {
field => $anvil->Words->string({key => "striker_0018", variables => { number => $bcn }}), field => $anvil->Words->string({key => "striker_0018", variables => { number => $bcn }}),
description => "#!string!striker_0019!#", description => "#!string!striker_0019!#",
ip_key => $this_ip_key, ip_key => $this_ip_key,
@ -899,7 +914,7 @@ ORDER BY
my $interface_states = get_network_details_form($anvil); my $interface_states = get_network_details_form($anvil);
# Store the previous CGI variables and display the new fields. # Store the previous CGI variables and display the new fields.
my $step2_body = $anvil->Template->get({file => "main.html", name => "config_step2", variables => { my $step2_body = $anvil->Template->get({file => "config.html", name => "config_step2", variables => {
step1_welcome_title_id => "", step1_welcome_title_id => "",
step1_welcome_message_id => "", step1_welcome_message_id => "",
organization => $anvil->data->{cgi}{organization}{value}, organization => $anvil->data->{cgi}{organization}{value},
@ -1566,7 +1581,7 @@ sub config_step1
}}); }});
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => 3, list => { say_ifn_count => $say_ifn_count }}); $anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => 3, list => { say_ifn_count => $say_ifn_count }});
my $step1_body = $anvil->Template->get({file => "main.html", name => "config_step1", variables => { my $step1_body = $anvil->Template->get({file => "config.html", name => "config_step1", variables => {
step1_welcome_title_id => "", step1_welcome_title_id => "",
step1_welcome_message_id => "", step1_welcome_message_id => "",
organization_form => $say_organization, organization_form => $say_organization,
@ -1721,11 +1736,11 @@ sub get_network_details_form
else else
{ {
my $interface_list = ""; my $interface_list = "";
$network = $anvil->Template->get({file => "main.html", name => "network_header"}); $network = $anvil->Template->get({file => "config.html", name => "network_header"});
foreach my $interface (sort {$a cmp $b} keys %{$data->{interface}}) foreach my $interface (sort {$a cmp $b} keys %{$data->{interface}})
{ {
$interface_list .= "$interface,"; $interface_list .= "$interface,";
$network .= $anvil->Template->get({file => "main.html", name => "network_entry", variables => { $network .= $anvil->Template->get({file => "config.html", name => "network_entry", variables => {
mac => "", mac => "",
mac_id => $interface."_mac", mac_id => $interface."_mac",
name => $interface, name => $interface,
@ -1739,7 +1754,7 @@ sub get_network_details_form
}}); }});
} }
$interface_list =~ s/,$//; $interface_list =~ s/,$//;
$network .= $anvil->Template->get({file => "main.html", name => "network_footer", variables => { interface_list => $interface_list }}); $network .= $anvil->Template->get({file => "config.html", name => "network_footer", variables => { interface_list => $interface_list }});
} }
$anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => 3, list => { network => $network }}); $anvil->Log->variables({source => $THIS_FILE, line => __LINE__, level => 3, list => { network => $network }});

@ -1,3 +1,335 @@
<!-- start bonded_interface_form -->
<table>
<tr>
<td colspan="5" class="form_group_header1">
#!variable!field!#:
</td>
</tr>
<tr>
<td colspan="5" class="form_group_header2">
#!variable!description!#
</td>
</tr>
<tr>
<td>
#!string!striker_0024!#
</td>
<td>
<input type="text" name="#!variable!ip_key!#" id="#!variable!ip_key!#" value="#!variable!ip_value!#" placeholder="#!string!striker_0024!#" class="#!variable!ip_class!#">
<input type="hidden" name="#!variable!ip_key!#_default" id="#!variable!ip_key!#_default" value="#!variable!ip_value_default!#">
</td>
<td>
&nbsp;
</td>
<td>
#!string!striker_0029!#
</td>
<td>
#!variable!iface1_select!#
</td>
</tr>
<tr>
<td>
#!string!striker_0025!#
</td>
<td>
<input type="text" name="#!variable!subnet_key!#" id="#!variable!subnet_key!#" value="#!variable!subnet_value!#" placeholder="#!string!striker_0025!#" class="#!variable!subnet_class!#">
<input type="hidden" name="#!variable!subnet_key!#_default" id="#!variable!subnet_key!#_default" value="#!variable!subnet_value_default!#">
</td>
<td>
&nbsp;
</td>
<td>
#!string!striker_0030!#
</td>
<td>
#!variable!iface2_select!#
</td>
</tr>
</table>
<!-- end bonded_interface_form -->
<!-- start config_step1 -->
<table>
<div id="config_step1_div">
<form name="config_step1" action="" method="post">
<tr>
<td>
<span name="#!variable!step1_welcome_title_id!#" id="#!variable!step1_welcome_title_id!#" class="config_header1">#!string!striker_0001!#</span><br />
<span name="#!variable!step1_welcome_message_id!#" id="#!variable!step1_welcome_message_id!#" class="config_header2">#!string!striker_0002!#</span>
</td>
</tr>
<tr>
<td>
<hr>
&nbsp;
</td>
</tr>
<tr>
<td>
#!variable!organization_form!#
</td>
</tr>
<tr>
<td>
#!variable!prefix_form!#
</td>
</tr>
<tr>
<td>
#!variable!domain_form!#
</td>
</tr>
<tr>
<td>
#!variable!sequence_form!#
</td>
</tr>
<tr>
<td>
#!variable!ifn_count_form!#
</td>
</tr>
<tr>
<td>
<br />
<hr>
<input type="submit" name="next" id="next" value="#!string!striker_0013!#">
</td>
</tr>
<!-- NOTE: For now, we support only one BCN in the web UI, but the system will be ready for N-number later. -->
<input type="hidden" name="bcn_count" id="bcn_count" value="1">
<input type="hidden" name="step" id="step" value="step1">
<input type="hidden" name="cgi_list" id="cgi_list" value="next,bcn_count,step,#!variable!cgi_list!#">
</form>
</div>
</table>
<!-- end config_step1 -->
<!-- start config_step2 -->
<table>
<div id="config_step1_div">
<form name="config_step1" action="" method="post">
<tr>
<td colspan="2">
<span name="#!variable!step1_welcome_title_id!#" id="#!variable!step1_welcome_title_id!#" class="config_header1">#!string!striker_0001!#</span><br />
<span name="#!variable!step1_welcome_message_id!#" id="#!variable!step1_welcome_message_id!#" class="config_header2">#!string!striker_0002!#</span>
</td>
</tr>
<tr>
<td colspan="2">
<hr>
&nbsp;
</td>
</tr>
<tr>
<td width="75%" style="vertical-align: top;">
<table>
<tr>
<td>
#!variable!hostname_form!#
</td>
</tr>
<tr>
<td>
#!variable!striker_user_form!#
</td>
</tr>
<tr>
<td>
#!variable!striker_password_form!#
</td>
</tr>
<tr>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
#!variable!interface_form!#
</td>
</tr>
<tr>
<td>
#!variable!gateway_form!#
</td>
</tr>
<tr>
<td>
#!variable!dns_form!#
</td>
</tr>
</table>
</td>
<td width="25%" style="padding-left: 1em; vertical-align: top;">
<table class="data_table">
<tr>
<td class="column_header" colspan="2">
#!string!striker_0014!#
</td>
</tr>
<tr class="data_row">
<!-- Organization name -->
<td class="column_row_name">
#!string!striker_0003!#:
</td>
<td class="column_row_value">
#!variable!organization!#
<input type="hidden" name="organization" id="organization" value="#!variable!organization!#">
</td>
</tr>
<tr class="data_row">
<!-- Prefix -->
<td class="column_row_name">
#!string!striker_0005!#:
</td>
<td class="column_row_value_fixed">
#!variable!prefix!#
<input type="hidden" name="prefix" id="prefix" value="#!variable!prefix!#">
</td>
</tr>
<tr class="data_row">
<!-- Domain name -->
<td class="column_row_name">
#!string!striker_0007!#:
</td>
<td class="column_row_value_fixed">
#!variable!domain!#
<input type="hidden" name="domain" id="domain" value="#!variable!domain!#">
</td>
</tr>
<tr class="data_row">
<!-- Sequence number -->
<td class="column_row_name">
#!string!striker_0009!#:
</td>
<td class="column_row_value_fixed">
#!variable!sequence!#
<input type="hidden" name="sequence" id="sequence" value="#!variable!sequence!#">
</td>
</tr>
<tr class="data_row">
<!-- IFN count -->
<td class="column_row_name">
#!string!striker_0015!#:
</td>
<td class="column_row_value_fixed">
#!variable!ifn_count!#
<input type="hidden" name="ifn_count" id="ifn_count" value="#!variable!ifn_count!#">
</td>
</tr>
</table>
<br />
#!variable!interface_states!#
</td>
</tr>
<tr>
<td colspan="2">
<br />
<hr>
<input type="submit" name="next" id="next" value="#!string!striker_0013!#">
</td>
</tr>
<input type="hidden" name="bcn_count" id="bcn_count" value="#!variable!bcn_count!#">
<input type="hidden" name="step" id="step" value="step2">
<input type="hidden" name="cgi_list" id="cgi_list" value="organization,prefix,domain,sequence,next,step,#!variable!cgi_list!#">
</form>
</div>
</table>
<!-- end config_step2 -->
<!-- start config_step3 -->
<table>
<div id="config_step3_div">
<form name="config_step3" action="" method="post">
<tr>
<td>
<span name="#!variable!step1_welcome_title_id!#" id="#!variable!step1_welcome_title_id!#" class="config_header1">#!string!striker_0001!#</span><br />
<span name="#!variable!step1_welcome_message_id!#" id="#!variable!step1_welcome_message_id!#" class="config_header2">#!string!striker_0002!#</span>
</td>
</tr>
<tr>
<td>
<hr>
&nbsp;
</td>
</tr>
<tr>
<td>
#!string!striker_0041!#
</td>
</tr>
<tr>
<td>
<hr>
&nbsp;
</td>
</tr>
<tr>
<td>
<table class="data_table">
<tr>
<td class="column_header" colspan="2">
#!string!striker_0042!#
</td>
</tr>
<!-- Organization -->
<tr class="data_row">
<td class="column_row_name">
#!string!striker_0003!#:
</td>
<td class="column_row_value">
#!variable!organization!#
</td>
</tr>
<!-- Domain name -->
<tr>
<td class="column_row_name">
#!string!striker_0007!#:
</td>
<td class="column_row_value_fixed">
#!variable!domain!#
</td>
</tr>
<!-- User -->
<tr>
<td class="column_row_name">
#!string!striker_0031!#:
</td>
<td class="column_row_value_fixed">
#!variable!striker_user!#
</td>
</tr>
<!-- Password -->
<tr>
<td class="column_row_name">
#!string!striker_0033!#:
</td>
<td class="column_row_value_fixed">
#!variable!striker_password!#
</td>
</tr>
<!-- Networks -->
#!variable!networks!#
</table>
</td>
</tr>
<tr>
<td>
<br />
<hr>
<input type="submit" name="next" id="next" value="#!string!striker_0043!#">
</td>
</tr>
<!-- NOTE: For now, we support only one BCN in the web UI, but the system will be ready for N-number later. -->
<input type="hidden" name="step" id="step" value="step3">
<input type="hidden" name="cgi_list" id="cgi_list" value="next,step">
</form>
</div>
</table>
<!-- end config_step3 -->
<!-- start header --> <!-- start header -->
<!DOCTYPE html> <!DOCTYPE html>
@ -17,3 +349,264 @@
<script type="text/javascript" src="#!data!skin::url!#/main.js"></script> <script type="text/javascript" src="#!data!skin::url!#/main.js"></script>
</head> </head>
<!-- end header --> <!-- end header -->
<!-- start network_entry -->
<tr class="data_row">
<td class="column_row_value_fixed">
<span name="#!variable!mac_id!#" id="#!variable!mac_id!#">#!variable!mac!#</span>
</td>
<td class="column_row_value_fixed_centered">
<span name="#!variable!name_id!#" id="#!variable!name_id!#">#!variable!name!#</span>
</td>
<td class="column_row_value_fixed_centered">
<span name="#!variable!link_id!#" id="#!variable!link_id!#">#!variable!link!#</span>
</td>
<td class="column_row_value_fixed_centered">
<span name="#!variable!speed_id!#" id="#!variable!speed_id!#">#!variable!speed!#</span>
</td>
<td class="column_row_value_fixed_centered">
<span name="#!variable!order_id!#" id="#!variable!order_id!#">#!variable!order!#</span>
</td>
</tr>
<!-- end network_entry -->
<!-- start network_footer -->
<input type="hidden" name="interface_list" id="interface_list" value="#!variable!interface_list!#" />
</table>
<!-- end network_footer -->
<!-- start network_header -->
<table id="network_status" class="data_table_nowrap">
<script type="text/javascript" src="#!data!skin::url!#/config.js"></script>
<tr>
<td colspan="5" class="column_header">
#!string!header_0001!#
</td>
</tr>
<tr class="data_row">
<td class="column_row_name">
#!string!header_0002!#
</td>
<td class="column_row_name">
#!string!header_0003!#
</td>
<td id="network_link_state" data-up="#!string!js_0001!#" data-down="#!string!js_0002!#" class="column_row_name">
#!string!header_0004!#
</td>
<td id="network_link_speed" data-mbps="#!string!js_0003!#" class="column_row_name">
#!string!header_0005!#
</td>
<td class="column_row_name">
#!string!header_0006!#
</td>
</tr>
<!-- end network_header -->
<!-- start single_interface_form -->
<table>
<tr>
<td colspan="5" class="form_group_header1">
#!variable!field!#
</td>
</tr>
<tr>
<td colspan="5" class="form_group_header2">
#!variable!description!#
</td>
</tr>
<tr>
<td>
#!string!striker_0024!#
</td>
<td>
<input type="text" name="#!variable!ip_key!#" id="#!variable!ip_key!#" value="#!variable!ip_value!#" placeholder="#!string!striker_0024!#" class="#!variable!ip_class!#">
<input type="hidden" name="#!variable!ip_key!#_default" id="#!variable!ip_key!#_default" value="#!variable!ip_value_default!#">
</td>
<td>
&nbsp;
</td>
<td>
#!string!striker_0028!#
</td>
<td>
#!variable!iface1_select!#
</td>
</tr>
<tr>
<td>
#!string!striker_0025!#
</td>
<td>
<input type="text" name="#!variable!subnet_key!#" id="#!variable!subnet_key!#" value="#!variable!subnet_value!#" placeholder="#!string!striker_0025!#" class="#!variable!subnet_class!#">
<input type="hidden" name="#!variable!subnet_key!#_default" id="#!variable!subnet_key!#_default" value="#!variable!subnet_value_default!#">
</td>
<td>
&nbsp;
</td>
<td>
&nbsp;
</td>
<td>
&nbsp;
</td>
</tr>
</table>
<!-- end single_interface_form -->
<!-- start step3_bonded_interface -->
<tr>
<td class="column_row_name">
#!variable!column!#:
</td>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0024!#:
</td>
<td class="column_row_value_fixed">
#!variable!ip_address!#
</td>
</tr>
<input type="hidden" name="ip" id="ip" value="#!variable!ip!#">
<input type="hidden" name="subnet" id="subnet" value="#!variable!subnet!#">
<tr>
<td>
&nbsp; &bull; #!string!striker_0029!#:
</td>
<td class="column_row_value_fixed">
#!variable!primary!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0030!#:
</td>
<td class="column_row_value_fixed">
#!variable!backup!#
</td>
</tr>
<!-- end step3_bonded_interface -->
<!-- start step3_bonded_interface_with_gateway -->
<tr>
<td class="column_row_name">
#!variable!column!#:
</td>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0024!#:
</td>
<td class="column_row_value_fixed">
#!variable!ip_address!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0026!#:
</td>
<td class="column_row_value_fixed">
#!variable!gateway!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0027!#:
</td>
<td class="column_row_value_fixed">
#!variable!dns!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0029!#:
</td>
<td class="column_row_value_fixed">
#!variable!primary!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0030!#:
</td>
<td class="column_row_value_fixed">
#!variable!backup!#
</td>
</tr>
<!-- end step3_bonded_interface_with_gateway -->
<!-- start step3_single_interface -->
<tr>
<td class="column_row_name">
#!variable!column!#:
</td>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0024!#:
</td>
<td class="column_row_value_fixed">
#!variable!ip_address!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0028!#:
</td>
<td class="column_row_value_fixed">
#!variable!primary!#
</td>
</tr>
<!-- end step3_single_interface -->
<!-- start step3_single_interface_with_gateway -->
<tr>
<td class="column_row_name">
#!variable!column!#:
</td>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0024!#:
</td>
<td class="column_row_value_fixed">
#!variable!ip_address!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0026!#:
</td>
<td class="column_row_value_fixed">
#!variable!gateway!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0027!#:
</td>
<td class="column_row_value_fixed">
#!variable!dns!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0028!#:
</td>
<td class="column_row_value_fixed">
#!variable!primary!#
</td>
</tr>
<!-- end step3_single_interface_with_gateway -->

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 9.5 KiB

@ -28,3 +28,12 @@ back by K from the Noun Project (https://thenounproject.com/term/back/453801/)
Refresh by Denis Klyuchnikov from the Noun Project (https://thenounproject.com/term/refresh/1147205/) Refresh by Denis Klyuchnikov from the Noun Project (https://thenounproject.com/term/refresh/1147205/)
- refresh.png - refresh.png
configure by Gregor Cresnar from the Noun Project (https://thenounproject.com/term/configure/485294/)
- striker_configure.png
customize by Trusted Icons from the Noun Project (https://thenounproject.com/term/customize/538026/)
- configure_icon.png
configure by iconesia from the Noun Project (https://thenounproject.com/term/configure/1651241/)
- build_icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

@ -1,838 +1,68 @@
<!-- start striker-setup --> <!-- start anvil_button_off -->
<table align="center" class="striker_welcome"> <img src="#!data!skin::url!#/images/anvil_icon_off.png" class="top_icon">
<tr> <!-- end anvil_button_off -->
<td colspan="2">
&nbsp;
</td>
</tr>
<tr>
<td colspan="2" class="title">
Striker Configuration and Management
</td>
</tr>
<tr>
<td colspan="2">
&nbsp;
</td>
</tr>
<tr>
<td rowspan="2" class="icon_button">
<a href="?striker=true&task=sync"><img src="#!data!skin::url!#/images/sync.png" class="top_icon" ></a>
</td>
<td class="menu_title">
Configure Striker Peers
</td>
</tr>
<tr>
<td class="menu_details">
When you sync with a peer, this machine's data will be copied to and recorded on the peer's database. Data gathered by ScanCore will also be kept in sync on both dashboards, and any general purpose data collected by other dashboards while this one is offline will be copied back when this machine comes online. Should this machine ever be rebuilt, data recorded from before the rebuild will be automatically restored as well.
</td>
</tr>
<tr>
<td rowspan="2" class="icon_button">
<a href="?striker=true&task=update"><img src="#!data!skin::url!#/images/update.png" class="top_icon" ></a>
</td>
<td class="menu_title">
Update this Striker
</td>
</tr>
<tr>
<td class="menu_details">
This will update this system using any available software repositories. You can also use this to create or load update packs to allow for the update of offline or air-gapped Anvil! systems.
</td>
</tr>
</table>
<!-- end striker-setup -->
<!-- start striker-welcome -->
<table align="center" class="striker_welcome">
<tr>
<td colspan="2">
&nbsp;
</td>
</tr>
<tr>
<td colspan="2" class="title">
#!string!message_0035!#
</td>
</tr>
<tr>
<td>
<a href="?anvil=true"><img src="#!data!skin::url!#/images/anvil_icon_on.png" class="top_icon"></a>
</td>
<td>
#!string!message_0036!#
</td>
</tr>
<tr>
<td>
<a href="?striker=true"><img src="#!data!skin::url!#/images/striker_icon_on.png" class="top_icon"></a>
</td>
<td>
#!string!message_0037!#
</td>
</tr>
<tr>
<td>
<a href="?logout=true"><img src="#!data!skin::url!#/images/users_icon_on.png" alt="#!string!message_0033!#" class="top_icon"></a>
</td>
<td>
#!string!message_0033!#
</td>
</tr>
<tr>
<td>
<a href="https://alteeve.com/w/Support" target="_new"><img src="#!data!skin::url!#/images/help_icon_on.png" id="help_icon" class="top_icon"></a>
</td>
<td>
#!string!message_0038!#
</td>
</tr>
</table>
<!-- end striker-welcome -->
<!-- start button_bar -->
<table id="button_bar">
<tr>
<td>
#!variable!back_button!#
</td>
<td>
#!variable!refresh_button!#
</td>
<td>
#!variable!striker_button!#
</td>
<td>
#!variable!anvil_button!#
</td>
<td>
#!variable!user_button!#
</td>
<td>
<a href="https://alteeve.com/w/Support" target="_new"><img src="#!data!skin::url!#/images/help_icon_on.png" id="help_icon" class="top_icon"></a>
</td>
</tr>
</table>
<!-- end button_bar -->
<!-- start back_button_off -->
<img src="#!data!skin::url!#/images/back_off.png" class="top_icon">
<!-- end back_button_off -->
<!-- start back_button_on -->
<a href="#!variable!url!#"><img src="#!data!skin::url!#/images/back_on.png" class="top_icon"></a>
<!-- end back_button_on -->
<!-- start refresh_button_off -->
<img src="#!data!skin::url!#/images/refresh_off.png" class="top_icon">
<!-- end refresh_button_off -->
<!-- start refresh_button_on -->
<a href="#!variable!url!#"><img src="#!data!skin::url!#/images/refresh_on.png" class="top_icon"></a>
<!-- end refresh_button_on -->
<!-- start anvil_button_off -->
<img src="#!data!skin::url!#/images/anvil_icon_off.png" class="top_icon">
<!-- end anvil_button_off -->
<!-- start anvil_button_on -->
<a href="?anvil=true"><img src="#!data!skin::url!#/images/anvil_icon_on.png" class="top_icon"></a>
<!-- end anvil_button_on -->
<!-- start striker_button_off -->
<img src="#!data!skin::url!#/images/striker_icon_off.png" class="top_icon">
<!-- end striker_button_off -->
<!-- start striker_button_on -->
<a href="?striker=true"><img src="#!data!skin::url!#/images/striker_icon_on.png" class="top_icon"></a>
<!-- end striker_button_on -->
<!-- start user_button_off -->
<img src="#!data!skin::url!#/images/users_icon_off.png" class="top_icon">
<!-- end user_button_off -->
<!-- start user_button_on -->
<a href="?logout=true"><img src="#!data!skin::url!#/images/users_icon_on.png" alt="#!string!message_0033!#" class="top_icon"></a>
<!-- end user_button_on -->
<!-- start config_step1 -->
<table>
<div id="config_step1_div">
<form name="config_step1" action="" method="post">
<tr>
<td>
<span name="#!variable!step1_welcome_title_id!#" id="#!variable!step1_welcome_title_id!#" class="config_header1">#!string!striker_0001!#</span><br />
<span name="#!variable!step1_welcome_message_id!#" id="#!variable!step1_welcome_message_id!#" class="config_header2">#!string!striker_0002!#</span>
</td>
</tr>
<tr>
<td>
<hr>
&nbsp;
</td>
</tr>
<tr>
<td>
#!variable!organization_form!#
</td>
</tr>
<tr>
<td>
#!variable!prefix_form!#
</td>
</tr>
<tr>
<td>
#!variable!domain_form!#
</td>
</tr>
<tr>
<td>
#!variable!sequence_form!#
</td>
</tr>
<tr>
<td>
#!variable!ifn_count_form!#
</td>
</tr>
<tr>
<td>
<br />
<hr>
<input type="submit" name="next" id="next" value="#!string!striker_0013!#">
</td>
</tr>
<!-- NOTE: For now, we support only one BCN in the web UI, but the system will be ready for N-number later. -->
<input type="hidden" name="bcn_count" id="bcn_count" value="1">
<input type="hidden" name="step" id="step" value="step1">
<input type="hidden" name="cgi_list" id="cgi_list" value="next,bcn_count,step,#!variable!cgi_list!#">
</form>
</div>
</table>
<!-- end config_step1 -->
<!-- start config_step2 -->
<table>
<div id="config_step1_div">
<form name="config_step1" action="" method="post">
<tr>
<td colspan="2">
<span name="#!variable!step1_welcome_title_id!#" id="#!variable!step1_welcome_title_id!#" class="config_header1">#!string!striker_0001!#</span><br />
<span name="#!variable!step1_welcome_message_id!#" id="#!variable!step1_welcome_message_id!#" class="config_header2">#!string!striker_0002!#</span>
</td>
</tr>
<tr>
<td colspan="2">
<hr>
&nbsp;
</td>
</tr>
<tr>
<td width="75%" style="vertical-align: top;">
<table>
<tr>
<td>
#!variable!hostname_form!#
</td>
</tr>
<tr>
<td>
#!variable!striker_user_form!#
</td>
</tr>
<tr>
<td>
#!variable!striker_password_form!#
</td>
</tr>
<tr>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
#!variable!interface_form!#
</td>
</tr>
<tr>
<td>
#!variable!gateway_form!#
</td>
</tr>
<tr>
<td>
#!variable!dns_form!#
</td>
</tr>
</table>
</td>
<td width="25%" style="padding-left: 1em; vertical-align: top;">
<table class="data_table">
<tr>
<td class="column_header" colspan="2">
#!string!striker_0014!#
</td>
</tr>
<tr class="data_row">
<!-- Organization name -->
<td class="column_row_name">
#!string!striker_0003!#:
</td>
<td class="column_row_value">
#!variable!organization!#
<input type="hidden" name="organization" id="organization" value="#!variable!organization!#">
</td>
</tr>
<tr class="data_row">
<!-- Prefix -->
<td class="column_row_name">
#!string!striker_0005!#:
</td>
<td class="column_row_value_fixed">
#!variable!prefix!#
<input type="hidden" name="prefix" id="prefix" value="#!variable!prefix!#">
</td>
</tr>
<tr class="data_row">
<!-- Domain name -->
<td class="column_row_name">
#!string!striker_0007!#:
</td>
<td class="column_row_value_fixed">
#!variable!domain!#
<input type="hidden" name="domain" id="domain" value="#!variable!domain!#">
</td>
</tr>
<tr class="data_row">
<!-- Sequence number -->
<td class="column_row_name">
#!string!striker_0009!#:
</td>
<td class="column_row_value_fixed">
#!variable!sequence!#
<input type="hidden" name="sequence" id="sequence" value="#!variable!sequence!#">
</td>
</tr>
<tr class="data_row">
<!-- IFN count -->
<td class="column_row_name">
#!string!striker_0015!#:
</td>
<td class="column_row_value_fixed">
#!variable!ifn_count!#
<input type="hidden" name="ifn_count" id="ifn_count" value="#!variable!ifn_count!#">
</td>
</tr>
</table>
<br />
#!variable!interface_states!#
</td>
</tr>
<tr>
<td colspan="2">
<br />
<hr>
<input type="submit" name="next" id="next" value="#!string!striker_0013!#">
</td>
</tr>
<input type="hidden" name="bcn_count" id="bcn_count" value="#!variable!bcn_count!#">
<input type="hidden" name="step" id="step" value="step2">
<input type="hidden" name="cgi_list" id="cgi_list" value="organization,prefix,domain,sequence,next,step,#!variable!cgi_list!#">
</form>
</div>
</table>
<!-- end config_step2 -->
<!-- start config_step3 -->
<table>
<div id="config_step3_div">
<form name="config_step3" action="" method="post">
<tr>
<td>
<span name="#!variable!step1_welcome_title_id!#" id="#!variable!step1_welcome_title_id!#" class="config_header1">#!string!striker_0001!#</span><br />
<span name="#!variable!step1_welcome_message_id!#" id="#!variable!step1_welcome_message_id!#" class="config_header2">#!string!striker_0002!#</span>
</td>
</tr>
<tr>
<td>
<hr>
&nbsp;
</td>
</tr>
<tr>
<td>
#!string!striker_0041!#
</td>
</tr>
<tr>
<td>
<hr>
&nbsp;
</td>
</tr>
<tr>
<td>
<table class="data_table">
<tr>
<td class="column_header" colspan="2">
#!string!striker_0042!#
</td>
</tr>
<!-- Organization -->
<tr class="data_row">
<td class="column_row_name">
#!string!striker_0003!#:
</td>
<td class="column_row_value">
#!variable!organization!#
</td>
</tr>
<!-- Domain name -->
<tr>
<td class="column_row_name">
#!string!striker_0007!#:
</td>
<td class="column_row_value_fixed">
#!variable!domain!#
</td>
</tr>
<!-- User -->
<tr>
<td class="column_row_name">
#!string!striker_0031!#:
</td>
<td class="column_row_value_fixed">
#!variable!striker_user!#
</td>
</tr>
<!-- Password -->
<tr>
<td class="column_row_name">
#!string!striker_0033!#:
</td>
<td class="column_row_value_fixed">
#!variable!striker_password!#
</td>
</tr>
<!-- Networks -->
#!variable!networks!#
</table>
</td>
</tr>
<tr>
<td>
<br />
<hr>
<input type="submit" name="next" id="next" value="#!string!striker_0043!#">
</td>
</tr>
<!-- NOTE: For now, we support only one BCN in the web UI, but the system will be ready for N-number later. -->
<input type="hidden" name="step" id="step" value="step3">
<input type="hidden" name="cgi_list" id="cgi_list" value="next,step">
</form>
</div>
</table>
<!-- end config_step3 -->
<!-- start network_job_recorded -->
<table>
<div id="network_job_recorded_div">
<tr>
<td>
<span name="#!variable!title_id!#" id="#!variable!title_id!#" class="config_header1">#!variable!title!#</span><br />
<span name="#!variable!message_id!#" id="#!variable!message_id!#" class="config_header2">#!variable!description!#</span>
<br />
<hr>
<a href="/" class="button">Reload</a>
</td>
</tr>
</div>
</table>
<!-- end network_job_recorded -->
<!-- start striker-offline -->
<table>
<div id="striker-offline">
<tr>
<td>
<span name="#!variable!title_id!#" id="#!variable!title_id!#" class="config_header1">#!variable!title!#</span><br />
<span name="#!variable!message_id!#" id="#!variable!message_id!#" class="config_header2">#!variable!description!#</span>
<br />
<hr>
<a href="/" class="button">Reload</a>
</td>
</tr>
</div>
</table>
<!-- end striker-offline -->
<!-- start striker-login -->
<table class="login"">
<form name="striker_login" action="" method="post">
<div id="striker_login">
<tr>
<td>
<input type="text" name="username" id="username" value="#!variable!user!#" placeholder="#!string!striker_0050!#" />
</td>
<td>
&nbsp;
</td>
<td>
<input type="password" name="password" id="password" value="#!variable!password!#" placeholder="#!string!striker_0051!#" />
</td>
<td>
&nbsp;
</td>
<td>
<input type="submit" name="login" id="login" value="#!string!striker_0049!#">
</td>
</tr>
<tr>
<td colspan="5" class="subtle_text" style="text-align: center;">
#!string!message_0032!#
</td>
</tr>
</div>
<input type="hidden" name="cgi_list" id="cgi_list" value="username,password,login">
</form>
</table>
<!-- end striker-login -->
<!-- start step3_bonded_interface -->
<tr>
<td class="column_row_name">
#!variable!column!#:
</td>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0024!#:
</td>
<td class="column_row_value_fixed">
#!variable!ip_address!#
</td>
</tr>
<input type="hidden" name="ip" id="ip" value="#!variable!ip!#">
<input type="hidden" name="subnet" id="subnet" value="#!variable!subnet!#">
<tr>
<td>
&nbsp; &bull; #!string!striker_0029!#:
</td>
<td class="column_row_value_fixed">
#!variable!primary!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0030!#:
</td>
<td class="column_row_value_fixed">
#!variable!backup!#
</td>
</tr>
<!-- end step3_bonded_interface -->
<!-- start step3_bonded_interface_with_gateway -->
<tr>
<td class="column_row_name">
#!variable!column!#:
</td>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0024!#:
</td>
<td class="column_row_value_fixed">
#!variable!ip_address!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0026!#:
</td>
<td class="column_row_value_fixed">
#!variable!gateway!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0027!#:
</td>
<td class="column_row_value_fixed">
#!variable!dns!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0029!#:
</td>
<td class="column_row_value_fixed">
#!variable!primary!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0030!#:
</td>
<td class="column_row_value_fixed">
#!variable!backup!#
</td>
</tr>
<!-- end step3_bonded_interface_with_gateway -->
<!-- start step3_single_interface -->
<tr>
<td class="column_row_name">
#!variable!column!#:
</td>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0024!#:
</td>
<td class="column_row_value_fixed">
#!variable!ip_address!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0028!#:
</td>
<td class="column_row_value_fixed">
#!variable!primary!#
</td>
</tr>
<!-- end step3_single_interface -->
<!-- start step3_single_interface_with_gateway -->
<tr>
<td class="column_row_name">
#!variable!column!#:
</td>
<td>
&nbsp;
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0024!#:
</td>
<td class="column_row_value_fixed">
#!variable!ip_address!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0026!#:
</td>
<td class="column_row_value_fixed">
#!variable!gateway!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0027!#:
</td>
<td class="column_row_value_fixed">
#!variable!dns!#
</td>
</tr>
<tr>
<td>
&nbsp; &bull; #!string!striker_0028!#:
</td>
<td class="column_row_value_fixed">
#!variable!primary!#
</td>
</tr>
<!-- end step3_single_interface_with_gateway -->
<!-- start error_message -->
<div class="error_message"><span style="color: #ff3f7f;">*</span> #!variable!error_message!# </div>
<!-- end error_message -->
<!-- start select_form --> <!-- start anvil_button_on -->
#!variable!description!#<br /> <a href="?anvil=true"><img src="#!data!skin::url!#/images/anvil_icon_on.png" class="top_icon"></a>
<input type="select" name="#!variable!name!#" id="#!variable!id!#" #!variable!extra!#>#!variable!options!#</select> <!-- end anvil_button_on -->
<!-- end select_form -->
<!-- start input_text_form --> <!-- start back_button_off -->
#!variable!description!#<br /> <img src="#!data!skin::url!#/images/back_off.png" class="top_icon">
<input type="text" name="#!variable!name!#" id="#!variable!id!#" value="#!variable!value!#" placeholder="#!variable!field!#" class="#!variable!class!#" #!variable!extra!#> <!-- end back_button_off -->
<input type="hidden" name="#!variable!name!#_default" id="#!variable!id!#_default" value="#!variable!default_value!#" >
<!-- end input_text_form -->
<!-- start input_number_form --> <!-- start back_button_on -->
#!variable!description!#<br /> <a href="#!variable!url!#"><img src="#!data!skin::url!#/images/back_on.png" class="top_icon"></a>
<input type="number" name="#!variable!name!#" id="#!variable!id!#" value="#!variable!value!#" placeholder="#!variable!field!#" class="#!variable!class!#" #!variable!extra!#> <!-- end back_button_on -->
<!-- end input_number_form -->
<!-- start bonded_interface_form --> <!-- start button_bar_left -->
<table> <table id="button_bar">
<tr>
<td colspan="5" class="form_group_header1">
#!variable!field!#:
</td>
</tr>
<tr>
<td colspan="5" class="form_group_header2">
#!variable!description!#
</td>
</tr>
<tr>
<td>
#!string!striker_0024!#
</td>
<td>
<input type="text" name="#!variable!ip_key!#" id="#!variable!ip_key!#" value="#!variable!ip_value!#" placeholder="#!string!striker_0024!#" class="#!variable!ip_class!#">
<input type="hidden" name="#!variable!ip_key!#_default" id="#!variable!ip_key!#_default" value="#!variable!ip_value_default!#">
</td>
<td>
&nbsp;
</td>
<td>
#!string!striker_0029!#
</td>
<td>
#!variable!iface1_select!#
</td>
</tr>
<tr> <tr>
<td> <td>
#!string!striker_0025!# <a href="/"><img src="#!data!skin::url!#/images/logo.png" class="logo"></a>
</td>
<td>
<input type="text" name="#!variable!subnet_key!#" id="#!variable!subnet_key!#" value="#!variable!subnet_value!#" placeholder="#!string!striker_0025!#" class="#!variable!subnet_class!#">
<input type="hidden" name="#!variable!subnet_key!#_default" id="#!variable!subnet_key!#_default" value="#!variable!subnet_value_default!#">
</td>
<td>
&nbsp;
</td> </td>
<td> <td>
#!string!striker_0030!# #!variable!back_button!#
</td> </td>
<td> <td>
#!variable!iface2_select!# #!variable!refresh_button!#
</td> </td>
</tr> </tr>
</table> </table>
<!-- end bonded_interface_form --> <!-- end button_bar_left -->
<!-- start single_interface_form --> <!-- start button_bar_right -->
<table> <table id="button_bar">
<tr>
<td colspan="5" class="form_group_header1">
#!variable!field!#
</td>
</tr>
<tr>
<td colspan="5" class="form_group_header2">
#!variable!description!#
</td>
</tr>
<tr>
<td>
#!string!striker_0024!#
</td>
<td>
<input type="text" name="#!variable!ip_key!#" id="#!variable!ip_key!#" value="#!variable!ip_value!#" placeholder="#!string!striker_0024!#" class="#!variable!ip_class!#">
<input type="hidden" name="#!variable!ip_key!#_default" id="#!variable!ip_key!#_default" value="#!variable!ip_value_default!#">
</td>
<td>
&nbsp;
</td>
<td>
#!string!striker_0028!#
</td>
<td>
#!variable!iface1_select!#
</td>
</tr>
<tr> <tr>
<td> <td>
#!string!striker_0025!# #!variable!configure_button!#
</td> </td>
<td> <td>
<input type="text" name="#!variable!subnet_key!#" id="#!variable!subnet_key!#" value="#!variable!subnet_value!#" placeholder="#!string!striker_0025!#" class="#!variable!subnet_class!#"> #!variable!striker_button!#
<input type="hidden" name="#!variable!subnet_key!#_default" id="#!variable!subnet_key!#_default" value="#!variable!subnet_value_default!#">
</td> </td>
<td> <td>
&nbsp; #!variable!anvil_button!#
</td> </td>
<td> <td>
&nbsp; #!variable!user_button!#
</td> </td>
<td> <td>
&nbsp; <a href="https://alteeve.com/w/Support" target="_new"><img src="#!data!skin::url!#/images/help_icon_on.png" id="help_icon" class="top_icon"></a>
</td> </td>
</tr> </tr>
</table> </table>
<!-- end single_interface_form --> <!-- end button_bar_right -->
<!-- start network_header --> <!-- start configure_button_off -->
<table id="network_status" class="data_table_nowrap"> <img src="#!data!skin::url!#/images/configure_icon_off.png" class="top_icon">
<script type="text/javascript" src="#!data!skin::url!#/config.js"></script> <!-- end configure_button_off -->
<tr>
<td colspan="5" class="column_header">
#!string!header_0001!#
</td>
</tr>
<tr class="data_row">
<td class="column_row_name">
#!string!header_0002!#
</td>
<td class="column_row_name">
#!string!header_0003!#
</td>
<td id="network_link_state" data-up="#!string!js_0001!#" data-down="#!string!js_0002!#" class="column_row_name">
#!string!header_0004!#
</td>
<td id="network_link_speed" data-mbps="#!string!js_0003!#" class="column_row_name">
#!string!header_0005!#
</td>
<td class="column_row_name">
#!string!header_0006!#
</td>
</tr>
<!-- end network_header -->
<!-- start network_entry --> <!-- start configure_button_on -->
<tr class="data_row"> <a href="?configure=true"><img src="#!data!skin::url!#/images/configure_icon_on.png" class="top_icon"></a>
<td class="column_row_value_fixed"> <!-- end configure_button_on -->
<span name="#!variable!mac_id!#" id="#!variable!mac_id!#">#!variable!mac!#</span>
</td>
<td class="column_row_value_fixed_centered">
<span name="#!variable!name_id!#" id="#!variable!name_id!#">#!variable!name!#</span>
</td>
<td class="column_row_value_fixed_centered">
<span name="#!variable!link_id!#" id="#!variable!link_id!#">#!variable!link!#</span>
</td>
<td class="column_row_value_fixed_centered">
<span name="#!variable!speed_id!#" id="#!variable!speed_id!#">#!variable!speed!#</span>
</td>
<td class="column_row_value_fixed_centered">
<span name="#!variable!order_id!#" id="#!variable!order_id!#">#!variable!order!#</span>
</td>
</tr>
<!-- end network_entry -->
<!-- start network_footer --> <!-- start error_message -->
<input type="hidden" name="interface_list" id="interface_list" value="#!variable!interface_list!#" /> <div class="error_message"><span style="color: #ff3f7f;">*</span> #!variable!error_message!# </div>
</table> <!-- end error_message -->
<!-- end network_footer -->
<!-- start footer --> <!-- start footer -->
<div class="footer"> <div class="footer">
@ -874,19 +104,51 @@
</head> </head>
<!-- end header --> <!-- end header -->
<!-- start input_number_form -->
#!variable!description!#<br />
<input type="number" name="#!variable!name!#" id="#!variable!id!#" value="#!variable!value!#" placeholder="#!variable!field!#" class="#!variable!class!#" #!variable!extra!#>
<!-- end input_number_form -->
<!-- start input_text_form -->
#!variable!description!#<br />
<input type="text" name="#!variable!name!#" id="#!variable!id!#" value="#!variable!value!#" placeholder="#!variable!field!#" class="#!variable!class!#" #!variable!extra!#>
<input type="hidden" name="#!variable!name!#_default" id="#!variable!id!#_default" value="#!variable!default_value!#" >
<!-- end input_text_form -->
<!-- start footer -->
<div class="footer">
<table width="100%">
<tr>
<td width="2%">
&nbsp;
</td>
<td width="48%"">
#!variable!user!#
</td>
<td width="48%" style="text-align: right;">
#!string!brand_0005!#
</td>
<td width="2%">
&nbsp;
</td>
</tr>
</table>
</div>
<!-- end footer -->
<!-- start master --> <!-- start master -->
#!variable!header!# #!variable!header!#
<body> <body>
<table class="body_table" height="100%"> <table class="body_table" height="100%">
<tr> <tr>
<td class="header" width="5%"> <td class="header" width="10%" style="white-space: nowrap;">
<a href="/"><img src="#!data!skin::url!#/images/logo.png" class="logo"></a> #!variable!left_top_bar!#
</td> </td>
<td class="header" width="90%"> <td class="header" width="80%">
#!variable!center_top_bar!# #!variable!center_top_bar!#
</td> </td>
<td class="header" width="5%" style="white-space: nowrap;"> <td class="header" width="10%" style="white-space: nowrap;">
#!variable!right_top_bar!# #!variable!right_top_bar!#
</td> </td>
</tr> </tr>
@ -914,3 +176,48 @@
#!variable!footer!# #!variable!footer!#
</html> </html>
<!-- end master --> <!-- end master -->
<!-- start network_job_recorded -->
<table>
<div id="network_job_recorded_div">
<tr>
<td>
<span name="#!variable!title_id!#" id="#!variable!title_id!#" class="config_header1">#!variable!title!#</span><br />
<span name="#!variable!message_id!#" id="#!variable!message_id!#" class="config_header2">#!variable!description!#</span>
<br />
<hr>
<a href="/" class="button">Reload</a>
</td>
</tr>
</div>
</table>
<!-- end network_job_recorded -->
<!-- start refresh_button_off -->
<img src="#!data!skin::url!#/images/refresh_off.png" class="top_icon">
<!-- end refresh_button_off -->
<!-- start refresh_button_on -->
<a href="#!variable!url!#"><img src="#!data!skin::url!#/images/refresh_on.png" class="top_icon"></a>
<!-- end refresh_button_on -->
<!-- start select_form -->
#!variable!description!#<br />
<input type="select" name="#!variable!name!#" id="#!variable!id!#" #!variable!extra!#>#!variable!options!#</select>
<!-- end select_form -->
<!-- start striker_button_off -->
<img src="#!data!skin::url!#/images/striker_icon_off.png" class="top_icon">
<!-- end striker_button_off -->
<!-- start striker_button_on -->
<a href="?striker=true"><img src="#!data!skin::url!#/images/striker_icon_on.png" class="top_icon"></a>
<!-- end striker_button_on -->
<!-- start user_button_off -->
<img src="#!data!skin::url!#/images/users_icon_off.png" class="top_icon">
<!-- end user_button_off -->
<!-- start user_button_on -->
<a href="?logout=true"><img src="#!data!skin::url!#/images/users_icon_on.png" alt="#!string!message_0033!#" class="top_icon"></a>
<!-- end user_button_on -->

@ -0,0 +1,158 @@
<!-- start striker-login -->
<table class="login"">
<form name="striker_login" action="" method="post">
<div id="striker_login">
<tr>
<td>
<input type="text" name="username" id="username" value="#!variable!user!#" placeholder="#!string!striker_0050!#" />
</td>
<td>
&nbsp;
</td>
<td>
<input type="password" name="password" id="password" value="#!variable!password!#" placeholder="#!string!striker_0051!#" />
</td>
<td>
&nbsp;
</td>
<td>
<input type="submit" name="login" id="login" value="#!string!striker_0049!#">
</td>
</tr>
<tr>
<td colspan="5" class="subtle_text" style="text-align: center;">
#!string!message_0032!#
</td>
</tr>
</div>
<input type="hidden" name="cgi_list" id="cgi_list" value="username,password,login">
</form>
</table>
<!-- end striker-login -->
<!-- start striker-offline -->
<table>
<div id="striker-offline">
<tr>
<td>
<span name="#!variable!title_id!#" id="#!variable!title_id!#" class="config_header1">#!variable!title!#</span><br />
<span name="#!variable!message_id!#" id="#!variable!message_id!#" class="config_header2">#!variable!description!#</span>
<br />
<hr>
<a href="/" class="button">Reload</a>
</td>
</tr>
</div>
</table>
<!-- end striker-offline -->
<!-- start striker-setup -->
<table align="center" class="striker_welcome">
<tr>
<td colspan="2">
&nbsp;
</td>
</tr>
<tr>
<td colspan="2" class="title">
Striker Configuration and Management
</td>
</tr>
<tr>
<td colspan="2">
&nbsp;
</td>
</tr>
<tr>
<td rowspan="2" class="icon_button">
<a href="?striker=true&task=sync"><img src="#!data!skin::url!#/images/sync.png" class="top_icon" ></a>
</td>
<td class="menu_title">
Configure Striker Peers
</td>
</tr>
<tr>
<td class="menu_details">
When you sync with a peer, this machine's data will be copied to and recorded on the peer's database. Data gathered by ScanCore will also be kept in sync on both dashboards, and any general purpose data collected by other dashboards while this one is offline will be copied back when this machine comes online. Should this machine ever be rebuilt, data recorded from before the rebuild will be automatically restored as well.
</td>
</tr>
<tr>
<td rowspan="2" class="icon_button">
<a href="?striker=true&task=update"><img src="#!data!skin::url!#/images/update.png" class="top_icon" ></a>
</td>
<td class="menu_title">
Update this Striker
</td>
</tr>
<tr>
<td class="menu_details">
This will update this system using any available software repositories. You can also use this to create or load update packs to allow for the update of offline or air-gapped Anvil! systems.
</td>
</tr>
<tr>
<td rowspan="2" class="icon_button">
<a href="?striker=true&task=update"><img src="#!data!skin::url!#/images/striker_configure.png" class="top_icon" ></a>
</td>
<td class="menu_title">
Configure this Striker
</td>
</tr>
<tr>
<td class="menu_details">
Update the network configuration for this Striker.
</td>
</tr>
</table>
<!-- end striker-setup -->
<!-- start striker-sync -->
<!-- end striker-sync -->
<!-- start striker-welcome -->
<table align="center" class="striker_welcome">
<tr>
<td colspan="2">
&nbsp;
</td>
</tr>
<tr>
<td colspan="2" class="title">
#!string!message_0035!#
</td>
</tr>
<tr>
<td>
<a href="?anvil=true"><img src="#!data!skin::url!#/images/anvil_icon_on.png" class="top_icon"></a>
</td>
<td>
#!string!message_0036!#
</td>
</tr>
<tr>
<td>
<a href="?striker=true"><img src="#!data!skin::url!#/images/striker_icon_on.png" class="top_icon"></a>
</td>
<td>
#!string!message_0037!#
</td>
</tr>
<tr>
<td>
<a href="?logout=true"><img src="#!data!skin::url!#/images/users_icon_on.png" alt="#!string!message_0033!#" class="top_icon"></a>
</td>
<td>
#!string!message_0033!#
</td>
</tr>
<tr>
<td>
<a href="https://alteeve.com/w/Support" target="_new"><img src="#!data!skin::url!#/images/help_icon_on.png" id="help_icon" class="top_icon"></a>
</td>
<td>
#!string!message_0038!#
</td>
</tr>
</table>
<!-- end striker-welcome -->

@ -407,6 +407,7 @@ Here we will inject 't_0006', which injects 't_0001' which has a variable: [#!st
<key name="error_0026">The user ID passed in to Account->read_details: [#!variable!uuid!#] was not found in the database.</key> <key name="error_0026">The user ID passed in to Account->read_details: [#!variable!uuid!#] was not found in the database.</key>
<key name="error_0027">Login failed, please try again.</key> <key name="error_0027">Login failed, please try again.</key>
<key name="error_0028"><![CDATA[There appears to be a problem with Striker. The login failed, please check: [<span class="code">#!data!sys::log_file!#</span>] for details.]]></key> <key name="error_0028"><![CDATA[There appears to be a problem with Striker. The login failed, please check: [<span class="code">#!data!sys::log_file!#</span>] for details.]]></key>
<key name="error_0029"><![CDATA[Failed to find the template: [<span class="code">#!variable!template!#</span>] in the template file: [<span class="code">#!variable!file!#</span>].]]></key>
<!-- These are works and strings used by javascript/jqery --> <!-- These are works and strings used by javascript/jqery -->
<key name="js_0001">Up</key> <key name="js_0001">Up</key>

Loading…
Cancel
Save