Add in chameleon templates for AdminLTE mojo templates
This commit is contained in:
		
							
								
								
									
										298
									
								
								Templates/AdminLTE_html_controls.html.ep.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										298
									
								
								Templates/AdminLTE_html_controls.html.ep.xml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,298 @@
 | 
			
		||||
<root>
 | 
			
		||||
	<!-- Todo  - add password visibility to password type - DONE 
 | 
			
		||||
		This is a version for the AdminLTE theme.
 | 
			
		||||
	-->
 | 
			
		||||
	
 | 
			
		||||
	<Select><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${prefix}_${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% my @${Name}_options = ${structure:OptionsInPerl};
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%= select_field '${Name}' => @${Name}_options, class => 'input', id => '${Name}_select'
 | 
			
		||||
		</div>
 | 
			
		||||
	</div><br>]]></Select>
 | 
			
		||||
	
 | 
			
		||||
	<MultiSelect><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${prefix}_${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% my @${Name}_options = ${structure:OptionsInPerl};
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%= select_field '${Name}' => @${Name}_options, class => 'input', id => '${Name}_select',  multiple => 'multiple'
 | 
			
		||||
		</div>	
 | 
			
		||||
	</div><br>]]></MultiSelect>
 | 
			
		||||
 | 
			
		||||
	
 | 
			
		||||
 | 
			
		||||
	<Textarea><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${prefix}_${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%= text_area '${Name}', cols=>${cols | 40}, rows=>${rows | 10}, Readonly=>'${Readonly | false}'
 | 
			
		||||
		</div>
 | 
			
		||||
	</div><br>]]></Textarea>
 | 
			
		||||
 | 
			
		||||
	<Date><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${prefix}_${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			%=date_field '${Name}' =>$$${Name}, pattern=>${regexp | .*}, title =>'Pattern regex mismatch'
 | 
			
		||||
		</div>
 | 
			
		||||
	</div><br>]]></Date>
 | 
			
		||||
 | 
			
		||||
	<Time><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${prefix}_${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			%=time_field '${Name}' =>$$${Name}, pattern=>${regexp | .*}, title =>'Pattern regex mismatch'
 | 
			
		||||
		</div>
 | 
			
		||||
	</div><br>]]></Time>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	<Text><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${prefix}_${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%= text_field '${Name}', size => '${size | 50}', class => 'textinput ${Name}' , pattern=>'${regexp | ".*"}' , placeholder=>'${placeholder | Name}', title =>'Pattern regex mismatch', id => '${Name}_text'
 | 
			
		||||
		</div>
 | 
			
		||||
	</div><br>]]></Text>
 | 
			
		||||
 | 
			
		||||
	<ReadonlyText><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${prefix}_${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%= text_field '${Name}', size => '${size | 50}', class => 'textinput ${Name}' , pattern=>'${regexp | ".*"}' , placeholder=>'${placeholder | Name}', Readonly=>'true' , title =>'Pattern regex mismatch'
 | 
			
		||||
		</div>
 | 
			
		||||
	</div><br>]]></ReadonlyText>
 | 
			
		||||
 | 
			
		||||
	<SubHeader><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<h2 class='subh${type_serial}'><%=l('${Value}')%></h2></div><br>]]>
 | 
			
		||||
	</SubHeader>
 | 
			
		||||
 | 
			
		||||
	<Header><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<h1 class='head${type_serial}'><%=l('${Value}')%></h1></div><br>]]>
 | 
			
		||||
	</Header>
 | 
			
		||||
	
 | 
			
		||||
	<Paragraph><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<p class='paragraph para${type_serial}'>
 | 
			
		||||
			%=l('${Value}')
 | 
			
		||||
		
 | 
			
		||||
	</div><br>]]></Paragraph>
 | 
			
		||||
 | 
			
		||||
	<Submit><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-auto">
 | 
			
		||||
			%= submit_button l('${Value}'), class => 'action subm${type_serial}'
 | 
			
		||||
		</div></div><br>]]>
 | 
			
		||||
	</Submit>
 | 
			
		||||
	
 | 
			
		||||
	<Search><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${prefix}_${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
		%=Search field
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=search_field '${Name}' , class => 'searc${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Search>
 | 
			
		||||
	
 | 
			
		||||
	<Url><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=URL_field '${Name}' , class => 'url${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Url>
 | 
			
		||||
 | 
			
		||||
	<Tel><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=tel_field '${Name}', class => 'tel${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Tel>
 | 
			
		||||
 | 
			
		||||
	<Email><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=email_field '${Name}', class => 'emai${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Email>
 | 
			
		||||
 | 
			
		||||
	<Password><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=password_field '${Name}', class => 'pass${type_serial} sme-password', autocomplete => 'off'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Password>
 | 
			
		||||
	
 | 
			
		||||
	<Timedate><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=timedate_field '${Name}', class => 'time${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Timedate>
 | 
			
		||||
 | 
			
		||||
	<Week><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=week_field '${Name}', class => 'week${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Week>
 | 
			
		||||
 | 
			
		||||
	<Month><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=month_field '${Name}', class => 'mont${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Month>
 | 
			
		||||
	
 | 
			
		||||
	<Range><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=range_field '${Name}', class => 'rang${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Range>
 | 
			
		||||
 | 
			
		||||
	<Radio><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=radio_field '${Name}', class => 'radi${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Radio>
 | 
			
		||||
 | 
			
		||||
	<Number><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=number_field '${Name}', class => 'numb${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Number>
 | 
			
		||||
 | 
			
		||||
	<File><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=file_field '${Name}', class => 'file${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</File>
 | 
			
		||||
	
 | 
			
		||||
	<Color><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=color_field '${Name}', class => 'colo${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Color>
 | 
			
		||||
	
 | 
			
		||||
	<Checkbox><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-md-1">
 | 
			
		||||
			%=l('${Label}')
 | 
			
		||||
		</div><div class="col-auto">
 | 
			
		||||
			% param '${Name}' => $$${prefix}_data->{${Name}} unless param '${Name}';
 | 
			
		||||
			%=checkbox_field '${Name}', class => 'chec${type_serial}'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Checkbox>
 | 
			
		||||
 | 
			
		||||
	<Table><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<br /><table class="sme-border TableSort sme-table ${classname} ">
 | 
			
		||||
			<thead class='${classname}'>
 | 
			
		||||
				<tr table-head-row><tal:block tal:repeat="ColHead TopHeadings">
 | 
			
		||||
					<th class='sme-border table-head-col table-head-col-${ColHead} '><%=l('${ColHead}')%></th></tal:block>
 | 
			
		||||
				</tr>
 | 
			
		||||
			</thead>
 | 
			
		||||
			<tbody class='${classname}'>
 | 
			
		||||
				% my $control_data = $c->stash('${TableControl}');
 | 
			
		||||
				% foreach my $row (@$control_data) {
 | 
			
		||||
				<tr class='table-row'><tal:block tal:repeat="ColContent Columns">
 | 
			
		||||
					<td class='sme-border table-col table-col-${ColContent}'><%=$c->render_to_string(inline=>$row->{'${ColContent}'})%></td></tal:block>		
 | 
			
		||||
				</tr>
 | 
			
		||||
				%}
 | 
			
		||||
			</tbody>
 | 
			
		||||
		</table>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Table>
 | 
			
		||||
	
 | 
			
		||||
	<Preformatted><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<pre class='preformatted pref${type_serial}'>
 | 
			
		||||
			${Value}
 | 
			
		||||
		</pre>
 | 
			
		||||
	</div><br>]]>
 | 
			
		||||
	</Preformatted>
 | 
			
		||||
	
 | 
			
		||||
	<Link><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<a href='${structure:href}' class='link link${type_serial}'>
 | 
			
		||||
			%= l('${title}')
 | 
			
		||||
		</a>
 | 
			
		||||
		%#= link_to l('${title}'), '${structure:href}' , class=>'link link${type_serial}'
 | 
			
		||||
	</div><br>]]>
 | 
			
		||||
	</Link>
 | 
			
		||||
 | 
			
		||||
	<ButtonLink><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<button type='button' href='${structure:href}' class='buttonlink buttonlink${type_serial}'>
 | 
			
		||||
			%= l('${title}')
 | 
			
		||||
		</button>
 | 
			
		||||
		%#= button_to l('${title}'), '${structure:href}' , class=>'buttonlink buttonlink${type_serial}'
 | 
			
		||||
	</div><br>]]>
 | 
			
		||||
	</ButtonLink>
 | 
			
		||||
 | 
			
		||||
	<Back><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div class="col-auto">
 | 
			
		||||
			%= submit_button l('${Value}'), class => 'action back', onclick =>'history.back()'
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Back>
 | 
			
		||||
	
 | 
			
		||||
	<Group><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<div ${Value}>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Group>
 | 
			
		||||
	
 | 
			
		||||
	<Endgroup><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		</div>
 | 
			
		||||
		</div><br>]]>
 | 
			
		||||
	</Endgroup>
 | 
			
		||||
	
 | 
			
		||||
	<object><![CDATA[<div class="row g-3 align-items-center">
 | 
			
		||||
		<object data="<%='${url}' %>" title="<%= $c->stash('title') %>"  type="text/html" ><%= $c->stash('title') %> not found</object>, id => '${Name}_object
 | 
			
		||||
	</div><br>]]>
 | 
			
		||||
	</object>
 | 
			
		||||
	
 | 
			
		||||
	
 | 
			
		||||
</root>
 | 
			
		||||
							
								
								
									
										53
									
								
								Templates/AdminLTE_layout.html.ep.tem
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								Templates/AdminLTE_layout.html.ep.tem
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,53 @@
 | 
			
		||||
%#
 | 
			
		||||
%# Generated by ${version} 
 | 
			
		||||
%#
 | 
			
		||||
%# AdminLTE specific layout
 | 
			
		||||
%#
 | 
			
		||||
% layout 'default', title => "Sme server 2 - ${MenuDescription}", share_dir => './';
 | 
			
		||||
%# css specific to this panel:
 | 
			
		||||
% content_for 'module' => begin
 | 
			
		||||
%= stylesheet '/css/${lcPackageName}.css'
 | 
			
		||||
%= javascript '/js/${lcPackageName}.js'
 | 
			
		||||
<div id="module" class="card-body module ${PackageName}-panel">
 | 
			
		||||
 | 
			
		||||
    % if (config->{debug} == 1) {
 | 
			
		||||
	<pre>
 | 
			
		||||
		%= dumper $c->current_route
 | 
			
		||||
		%= dumper $$${prefix}_data->{trt}
 | 
			
		||||
	</pre>
 | 
			
		||||
    % }
 | 
			
		||||
    
 | 
			
		||||
    <h1><%=$title%></h1>
 | 
			
		||||
 | 
			
		||||
    % if ( stash('modul')) {
 | 
			
		||||
	%= $c->render_to_string(inline => stash('modul') );
 | 
			
		||||
    % }
 | 
			
		||||
 | 
			
		||||
   	%if ($c->stash('first')) {
 | 
			
		||||
		<br><div>
 | 
			
		||||
			%=$c->render_to_string(inline =>$c->l($c->stash('first')))
 | 
			
		||||
		</div>
 | 
			
		||||
 | 
			
		||||
	%} elsif ($c->stash('success')) {
 | 
			
		||||
		<div class='text-success'>
 | 
			
		||||
			%= $c->l($c->stash('success'));
 | 
			
		||||
		</div>
 | 
			
		||||
 | 
			
		||||
	%} elsif ($c->stash('error')) { 
 | 
			
		||||
	   <div class='text-danger'>
 | 
			
		||||
			%= $c->l($c->stash('error'));
 | 
			
		||||
    	</div>
 | 
			
		||||
	%}
 | 
			
		||||
 | 
			
		||||
	%#Routing to partials according to trt parameter.
 | 
			
		||||
	%#This ought to be cascading if/then/elsif, but is easier to just stack the if/then's rather like a case statement'
 | 
			
		||||
	<tal:block tal:repeat="condition conditions">
 | 
			
		||||
	<br>
 | 
			
		||||
	% if ($$${prefix}_data->{trt} eq "${condition}") {
 | 
			
		||||
		%= include 'partials/_${prefix}_${condition}'
 | 
			
		||||
	%}
 | 
			
		||||
	</tal:block>
 | 
			
		||||
	<br>
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
%end
 | 
			
		||||
							
								
								
									
										29
									
								
								Templates/AdminLTE_partial.html.ep.tem
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								Templates/AdminLTE_partial.html.ep.tem
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,29 @@
 | 
			
		||||
%#
 | 
			
		||||
%# Generated by ${version} 
 | 
			
		||||
%#
 | 
			
		||||
%# Specific for AdminLTE theme
 | 
			
		||||
%#
 | 
			
		||||
<div id="${PackageName}-${route}" class="partial ${PackageName}-${route}">
 | 
			
		||||
%#	<script>
 | 
			
		||||
%#		window.onload = function() {
 | 
			
		||||
%#		SelectInput();
 | 
			
		||||
%#	};
 | 
			
		||||
%#	</script>
 | 
			
		||||
	% if (config->{debug} == 1) {
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $$${prefix}_data
 | 
			
		||||
		</pre>
 | 
			
		||||
	% }
 | 
			
		||||
	% my $btn = l('SAVE');
 | 
			
		||||
	% $c->param(Selected => undef); #This may need deleting for a params panel - only needed for a table
 | 
			
		||||
 | 
			
		||||
	%= form_for "${lcPackageName}u" => (method => 'POST') => begin
 | 
			
		||||
		% param 'trt' => $$${prefix}_data->{trt} unless param 'trt';
 | 
			
		||||
		%= hidden_field 'trt' => $$${prefix}_data->{trt}
 | 
			
		||||
		%# Inputs etc in here.
 | 
			
		||||
		%# ....
 | 
			
		||||
		%# Probably finally by a submit.
 | 
			
		||||
		%= submit_button $btn, class => 'action'
 | 
			
		||||
	%end
 | 
			
		||||
	<br>    
 | 
			
		||||
</div>
 | 
			
		||||
		Reference in New Issue
	
	Block a user