A1z-HTML5-Template

 view release on metacpan or  search on metacpan

LICENSE  view on Meta::CPAN

37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
software and to any other program whose authors commit to using it.
You can use it for your programs, too.
 
  When we speak of free software, we are referring to freedom, not
price.  Specifically, the General Public License is designed to make
sure that you have the freedom to give away or sell copies of free
software, that you receive source code or can get it if you want it,
that you can change the software or use pieces of it in new free
programs; and that you know you can do these things.
 
  To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
 
  For example, if you distribute copies of a such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must tell them their rights.
 
  We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.

LICENSE  view on Meta::CPAN

70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
                    GNU GENERAL PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 
  0. This License Agreement applies to any program or other work which
contains a notice placed by the copyright holder saying it may be
distributed under the terms of this General Public License.  The
"Program", below, refers to any such program or work, and a "work based
on the Program" means either the Program or any work containing the
Program or a portion of it, either verbatim or with modifications.  Each
licensee is addressed as "you".
 
  1. You may copy and distribute verbatim copies of the Program's source
code as you receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice and
disclaimer of warranty; keep intact all the notices that refer to this
General Public License and to the absence of any warranty; and give any
other recipients of the Program a copy of this General Public License
along with the Program.  You may charge a fee for the physical act of
transferring a copy.

LICENSE  view on Meta::CPAN

116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
    exchange for a fee.
 
Mere aggregation of another independent work with the Program (or its
derivative) on a volume of a storage or distribution medium does not bring
the other work under the scope of these terms.
 
  3. You may copy and distribute the Program (or a portion or derivative of
it, under Paragraph 2) in object code or executable form under the terms of
Paragraphs 1 and 2 above provided that you also do one of the following:
 
    a) accompany it with the complete corresponding machine-readable
    source code, which must be distributed under the terms of
    Paragraphs 1 and 2 above; or,
 
    b) accompany it with a written offer, valid for at least three
    years, to give any third party free (except for a nominal charge
    for the cost of distribution) a complete machine-readable copy of the
    corresponding source code, to be distributed under the terms of
    Paragraphs 1 and 2 above; or,
 
    c) accompany it with the information you received as to where the
    corresponding source code may be obtained.  (This alternative is
    allowed only for noncommercial distribution and only if you
    received the program in object code or executable form alone.)
 
Source code for a work means the preferred form of the work for making
modifications to it.  For an executable file, complete source code means
all the source code for all modules it contains; but, as a special
exception, it need not include source code for modules which are standard
libraries that accompany the operating system on which the executable
file runs, or for standard header files or definitions files that
accompany that operating system.
 
  4. You may not copy, modify, sublicense, distribute or transfer the
Program except as expressly provided under this General Public License.
Any attempt otherwise to copy, modify, sublicense, distribute or transfer
the Program is void, and will automatically terminate your rights to use
the Program under this License.  However, parties who have received
copies, or rights to use copies, from you under this General Public
License will not have their licenses terminated so long as such parties
remain in full compliance.
 
  5. By copying, distributing or modifying the Program (or any work based
on the Program) you indicate your acceptance of this license to do so,
and all its terms and conditions.
 
  6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the original
licensor to copy, distribute or modify the Program subject to these
terms and conditions.  You may not impose any further restrictions on the
recipients' exercise of the rights granted herein.
 
  7. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time.  Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
 
Each version is given a distinguishing version number.  If the Program
specifies a version number of the license which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation.  If the Program does not specify a version number of
the license, you may choose any version ever published by the Free Software
Foundation.
 
  8. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission.  For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this.  Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
 
                            NO WARRANTY
 
  9. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS

LICENSE  view on Meta::CPAN

253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
The hypothetical commands `show w' and `show c' should show the
appropriate parts of the General Public License.  Of course, the
commands you use may be called something other than `show w' and `show
c'; they could even be mouse-clicks or menu items--whatever suits your
program.
 
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary.  Here a sample; alter the names:
 
  Yoyodyne, Inc., hereby disclaims all copyright interest in the
  program `Gnomovision' (a program to direct compilers to make passes
  at assemblers) written by James Hacker.
 
  <signature of Ty Coon>, 1 April 1989
  Ty Coon, President of Vice
 
That's all there is to it!
 
 
--- The Artistic License 1.0 ---
 
This software is Copyright (c) 2019 by Sudheer Murthy.
 
This is free software, licensed under:

LICENSE  view on Meta::CPAN

302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
  - "Reasonable copying fee" is whatever you can justify on the basis of media
    cost, duplication charges, time of people involved, and so on. (You will
    not be required to justify it to the Copyright Holder, but only to the
    computing community at large as a market that must bear the fee.)
  - "Freely Available" means that no fee is charged for the item itself, though
    there may be fees involved in handling the item. It also means that
    recipients of the item may redistribute it under the same conditions they
    received it.
 
1. You may make and give away verbatim copies of the source form of the
Standard Version of this Package without restriction, provided that you
duplicate all of the original copyright notices and associated disclaimers.
 
2. You may apply bug fixes, portability fixes and other modifications derived
from the Public Domain or from the Copyright Holder. A Package modified in such
a way shall still be considered the Standard Version.
 
3. You may otherwise modify your copy of this Package in any way, provided that
you insert a prominent notice in each changed file stating how and when you
changed that file, and provided that you do at least ONE of the following:

LICENSE  view on Meta::CPAN

338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
4. You may distribute the programs of this Package in object code or executable
form, provided that you do at least ONE of the following:
 
  a) distribute a Standard Version of the executables and library files,
     together with instructions (in the manual page or equivalent) on where to
     get the Standard Version.
 
  b) accompany the distribution with the machine-readable source of the Package
     with your modifications.
 
  c) accompany any non-standard executables with their corresponding Standard
     Version executables, giving the non-standard executables non-standard
     names, and clearly documenting the differences in manual pages (or
     equivalent), together with instructions on where to get the Standard
     Version.
 
  d) make other distribution arrangements with the Copyright Holder.
 
5. You may charge a reasonable copying fee for any distribution of this
Package.  You may charge any fee you choose for support of this Package. You
may not charge a fee for this Package itself. However, you may distribute this

META.yml  view on Meta::CPAN

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
---
abstract: 'Fast and Easy Web Apps'
author:
  - 'Sudheer Murthy <pause@a1z.us>'
build_requires:
  Test::More: 0
configure_requires:
  ExtUtils::MakeMaker: 0
dynamic_config: 0
generated_by: 'Dist::Zilla version 6.012, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
  version: 1.4
name: A1z-HTML5-Template
requires:
  CGI: 0
  Exporter: 0
  parent: 0
  strict: 0
  vars: 0
  warnings: 0
version: 0.22
x_generated_by_perl: v5.16.3
x_serialization_backend: 'YAML::Tiny version 1.51'

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
my $out;
 
my $m = $num1 * $num2;
my $a  = $num1 + $num2;
my $s  = $num1 - $num2;
my $s1 = $num2 - $num1;
my $d = $num1 / $num2;
my $d1 = $num2 / $num1;
 
$out .= qq{<div class="math">
<table class="table table-responsive table-bordered table-condensed table-hover">
 
        <thead><tr><td colspan="6">Multiplication</td></tr></thead>
        <tr>
                <td></td>
                <td>$num1</td>
                <td>x</td>
                <td>$num2</td>
                <td>\=</td>
                <td>$m</td>
        </tr>

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
sub timestable
{      
        my $self = shift;
         
        my ($num1) = @_;
         
        if ( $num1 eq '' ) { $num1 = '2'; }
         
        my $out;
         
        $out .= qq{<table class="table table-bordered table-condensed table-striped table-hover table-responsive">};
         
        for ('1'..'20')
        {
                $out .= qq{<tr> <td>$num1</td> <td>x</td> <td>$_</td> <td>=</td> <td>} . $num1 * $_ . qq{</td></tr>} if ($_);
        }
        $out .= qq{</table>};
         
        return $out;
}
# end timestable

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
 
<script>
 
// for tabs
\$( function() {
        var tabs = \$("#tabs").tabs();
        tabs.find( ".ui-tabs-nav" ).sortable({
                axis: "x",
                stop: function() { tabs.tabs( "refresh" ); }
        });
});
   
// dialog
\$( function() {
        \$( "#dialog" ).dialog({
          autoOpen: false,
          show: {
                effect: "blind",
                duration: 1000

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
        <!-- Bootstrap/jqueryUI -->
 
        <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" type="text/css">
        <link href="https://www.a1z.us/jquery/bootstrap/fixed-top/navbar-fixed-top.css" rel="stylesheet">
        <link href="https://code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css" rel="stylesheet">
 
        <!--HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries-->
 
        <!--[if lt IE 9]>
        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
        <![endif]-->
 
};
         
        if ($args)
        {
                 
                if ($args >= 0)
                {
                        my $return;

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script >
 
// for tabs
\$( function() {
        var tabs = \$( "#tabs" ).tabs();
         
        tabs.find( ".ui-tabs-nav" ).sortable({
                axis: "x",
                stop: function() { tabs.tabs( "refresh" ); }
        });
});
   
// dialog
\$(function() {
        \$( "#dialog" ).dialog({
          autoOpen: false,
          show: {
                effect: "blind",
                duration: 1000

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
sub html_jqueryui_css
{
        # jquery ui theme jquery-ui.css #1.12.0
        return qq{<link href="https://code.jquery.com/ui/1.12.0/themes/smoothness/jquery-ui.css" rel="stylesheet">};
}
 
 
 
 
sub html_shim_respond
{
        return qq{<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<![endif]-->
};
 
}
 
 
 
sub html_navbar
{
        #my $self = shift;

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
sub head
{
        my $self = shift;
         
        my $out;
         
        my %in = (
                -type   => "Content-Type: text/html;charset=utf-8\n\n",
                -bootstrap      => html_bootstrap_css,
                -jqueryui       => html_jqueryui_css,
                -htmlshim       => html_shim_respond,
                -humanejs  => html_humanejs_css,
                -title          => "A1Z .us",
                -cssCode => "",
                -mobilemeta => qq{<meta name="HandheldFriendly" content="true">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
},
                -charsetmeta => qq{<meta charset="utf-8">},
                -usermeta => "",
                -titleRotatingText => qq{text1,text2,text3},

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
                -h1 => qq{A1Z .us},
                -onload => qq{setTitle();}
                -nbhead => qq{},
                -nbpage => qq{},
                -nbmenu => qq{More},
                -defaultjquery => qq{$HTML{-defaultjquery}},
                -humanejs => qq{<script src="https://cdnjs.cloudflare.com/ajax/libs/humane-js/3.2.2/humane.min.js">},
                -userjquery => qq{},
                -navbar => html_navbar( $in{-nbmenu}, $in{-nbpage}, "", ""),
                -content => qq{<div class="content">Content</div>},
                -footer => qq{All rights reserved &copy; A1Z .us},      
                -bootstrapbluimp => html_bootstrap_bluimp,
                -nbLinks => qq{contact-help-feedback},
                @_,            
        );
         
        return qq{<body onload="$in{-onload}">
<div id="main" class="container">
        <!--top nav bar begin-->
        <script  src="https://www.a1z.us/js/utils/top-nav-bar.js"></script>
        <script >

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
{
 
        open(FILE, "$file") or die "$!";
 
        $out .= qq{\n<!--begin file output-->\n<div class="file_output">\n};
         
        # Step 1
        # set the header as per format 
        if ($output_format eq 'table')
        {
                $out .= qq{<table class="table table-striped table-bordered table-hover table-condensed table-responsive">
                        <thead>
                                <tr><th colspan="2">$output_header</th></tr>
                        </thead>
                        <tbody>
                };
        }
        elsif ($output_format eq 'accordion')
        {
                $out .= qq{<h2>$output_header</h2>\n<div id="accordion2" class="accordion"><!--118-->\n};
        }

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
my $h = A1z::HTML5::Template->new();
 
This directory should be writable by the web server, required to create/hold page content files.
    This may also contain your custom JavaScript/CSS libraries.
    Works for both Windows and Linux
     
            use lib '/home/user/path/to/app';
            or
            use lib 'C:/Inetpub/wwwroot/path/to/app';
 
    # for features like 'say'
    use 5.10.0;
 
    my $h = A1z::HTML5::Template->new();
 
    Fast, Easy, and Simple: Just Two Lines!
     
            say $h->head( -title => "My Brand Name" );
            say $h->body( -content => qq{ Coming Soon });
 
    For More Control/Customization: Not for the lazy!

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
        Include bootstrap.min.css, #3.3.0 from maxcdn and navbar-fixed-top.css from a1z.us
                 
                $h->html_bootstrap_css()
 
=head2 html_jqueryui_css
 
        For Internal/Future Use
 
        Includes jquery ui theme jquery-ui.css #1.12.0
 
=head2 html_shim_respond
 
        For Internal/Future Use
 
        html5shiv.min.js   #3.7.2
        respond.min.js     #1.4.2
 
=head2 html_navbar
 
        For Internal/Future Use
 
        Customizations for top-nav-bar.js from a1z.us
 
        $h->html_navbar(
                -nbMenuName => "menuName",
                -nbPageName => "pageName",

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
        Used internally in C<$h->body()>
 
=head2 head
 
        $h->head();
 
        $h-head (
                -type   => "Content-Type: text/html;charset=utf-8\n\n",
                -bootstrap      => html_bootstrap_css,
                -jqueryui       => html_jqueryui_css,
                -htmlshim       => html_shim_respond,
                -humanejs  => html_humanejs_css,
                -title          => "A1Z .us",
                -cssCode => "",
                -mobilemeta => qq{<meta name="HandheldFriendly" content="true">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
},
                -charsetmeta => qq{<meta charset="utf-8">},
                -usermeta => "",
                -titleRotatingText => qq{text1,text2,text3} 

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
                -h1     => qq{A1Z .us},
                -onload => qq{setTitle();}
                -nbhead => qq{},
                -nbpage => qq{},
                -nbmenu => qq{More},
                -defaultjquery => qq{$HTML{-defaultjquery}},
                -humanejs => qq{<script src="https://cdnjs.cloudflare.com/ajax/libs/humane-js/3.2.2/humane.min.js">},
                -userjquery => qq{},
                -navbar => html_navbar( $in{-nbmenu}, $in{-nbpage}, "", ""),
                -content => qq{<div class="content">Content</div>},
                -footer => qq{All rights reserved &copy; A1Z .us},      
                -bootstrapbluimp => html_bootstrap_bluimp,
                -nbLinks => qq{contact-help-feedback}               
        );
 
=head1 open_file
 
        Used for loading all kinds of custom elements for different output formats stored in simple text files.
 
        $h->open_file("/path/to/file", "outputFormat", "outputHeader");

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
                content => $h->edit_file( file => "/absolute/path/to/app/open_file_example.txt")
        );
 
        # Save Customizations back to the same file.
 
        # include write_file if you submit form to the same file ( TemplateAdmin.cgi )
 
        say $h->body_article(
 
                header => "<a href='$sys{cgiurl}/TemplateAdmin.cgi' title='Refresh to get the latest/saved content'>Refresh</a> ",
 
                content => $h->write_file( file => "/absolute/path/to/app/open_file_example.txt")
          
        );
 
        say $h->body_js_css();
        say $h->end_body();
        say $h->end_html();
 
=head2 write_file

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
                thumbs_url => "{thumbs_url}",
 
                width => "100",
                height => "100"
        );
 
=head1 BUGS
 
Please report any bugs or feature requests to C<bug-a1z-html5-template at rt.cpan.org>, or through
the web interface at L<https://rt.cpan.org/NoAuth/ReportBug.html?Queue=A1z-HTML5-Template>.  I will be notified, and then you'll
automatically be notified of progress on your bug as I make changes.
 
=head1 SUPPORT
 
You can find documentation for this module with the perldoc command.
 
    perldoc A1z::HTML5::Template
 
You can also look for information at:
 
=over 4

lib/A1z/HTML5/Template.pm  view on Meta::CPAN

2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
If your Modified Version has been derived from a Modified Version made
by someone other than you, you are nevertheless required to ensure that
your Modified Version complies with the requirements of this license.
 
This license does not grant you the right to use any trademark, service
mark, tradename, or logo of the Copyright Holder.
 
This license includes the non-exclusive, worldwide, free-of-charge
patent license to make, have made, use, offer to sell, sell, import and
otherwise transfer the Package with respect to any patent claims
licensable by the Copyright Holder that are necessarily infringed by the
Package. If you institute patent litigation (including a cross-claim or
counterclaim) against any party alleging that the Package constitutes
direct or contributory patent infringement, then this Artistic License
to you shall terminate on the date that such litigation is filed.
 
Disclaimer of Warranty: THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER
AND CONTRIBUTORS "AS IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES.
THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY



( run in 0.517 second using v1.01-cache-2.11-cpan-3cd7ad12f66 )