view release on metacpan or search on metacpan
lib/Ado/Plugin/AdoHelpers.pm view on Meta::CPAN
$assets = [$assets] unless ref($assets) eq 'ARRAY';
foreach my $a (@$assets) {
push @$assets_list, $a unless first { $_ eq $a } @$assets_list;
}
return;
}
# render
my $css = '';
#everything in separate stylesheet begin end block or <link>
foreach my $a (@$assets_list) {
if ($a =~ $file_re) { # a file
$css .= qq|<link href="$a" rel='stylesheet' type='text/css' />\n|;
}
elsif (ref $a eq 'CODE') { # a code
$css .= $c->stylesheet($a) . $/;
}
else { # a string
$css .= $c->stylesheet(sub {$a}) . $/;
}
}
return $css;
}
sub _head_javascript {
my ($c, $assets) = @_;
my $assets_list = $c->stash('head_javascript');
#append
lib/Ado/Plugin/AdoHelpers.pm view on Meta::CPAN
]);
%>
<!-- or -->
# or
% head_javascript begin
jQuery( function($){ $('#ado-img').popup() });
% end;
# render in templates/partials/head.html.ep
%== head_css;
<link href="css/ado.css" rel='stylesheet' type='text/css' />
<link href='//fonts.googleapis.com/css?family=Ubuntu&subset=latin,cyrillic'
rel='stylesheet' type='text/css' />
%== head_javascript;
=head2 to_json
Suitable for preparing JavaScript
objects from Perl references that will be used from stash and in templates.
my $chars = $c->to_json({name =>'ÐеÑÑÑ',id=>2});
$c->stash(user_as_js => $chars);
# in a javascript chunk of a template
public/css/ado.css view on Meta::CPAN
padding: 2em 1em 1em 1em;
font-size: 1.3em;
}
aside#toc ul {
padding: 0;
margin: 0;
}
aside#toc li {
list-style: none inside none;
padding: 0 0 0 1.2ex;
}
article.main.container li {
margin-bottom:0.5em ;
}
/*
aside#toc li a {
font-size: 1.1em;
}
*/
public/doc/bg/img/default_admin_screen.epz view on Meta::CPAN
<?xml version="1.0"?>
<Document xmlns="http://www.evolus.vn/Namespace/Pencil"><Properties/><Pages><Page><Properties><Property name="name">Untitled Page</Property><Property name="id">1391472647609_5759</Property><Property name="width">980</Property><Property name="height">...
]]></p:property><p:property name="textFont"><![CDATA[Arial|normal|normal|13px|none]]></p:property><p:property name="textColor"><![CDATA[#000000FF]]></p:property><p:property name="textAlign"><![CDATA[1,1]]></p:property></p:metadata>
<defs>
<linearGradient x1="0%" y1="0%" x2="0%" y2="100%" p:name="linearFill" id="36be4582de964e90968b9d4a8d0823fa">
<stop style="stop-color: rgb(192, 192, 192); stop-opacity: 1;" offset="0" p:name="stop1" id="97ba4839a4a8438c832d3b69c28106b0"/>
<stop style="stop-color: rgb(255, 255, 255); stop-opacity: 1;" offset="1" p:name="stop2" id="4f79e103cdb646b8a85a0656bf5af6c8"/>
</linearGradient>
<rect width="1025" height="75" rx="0" ry="0" x="0" y="0" style="stroke-width: 2; fill: url("#36be4582de964e90968b9d4a8d0823fa") none; stroke: rgb(27, 50, 128); stroke-opacity: 1;" p:name="rrRect" id="65fcfb10486244958422f3bb...
<filter height="1.2558399" y="-0.12792" width="1.06396" x="-0.03198" p:name="shadingFilter" id="36fe3410734e42e0a6254778df8c1601">
<feGaussianBlur stdDeviation="1" in="SourceAlpha"/>
</filter>
</defs>
<use xlink:href="#65fcfb10486244958422f3bb02cdb947" xmlns:xlink="http://www.w3.org/1999/xlink" transform="translate(2, 2)" p:filter="url(#36fe3410734e42e0a6254778df8c1601)" style="opacity: 0.5; visibility: hidden; display: none;" p:heavy=...
<use xlink:href="#65fcfb10486244958422f3bb02cdb947" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<foreignObject x="4.6875" y="38" width="1015.62" height="0" p:name="text" id="2590d4e6d9b8435ca672185452f3421e" style="font-family: Arial; font-size: 13px; font-weight: normal; font-style: normal; text-decoration: none; color: rgb(0, 0, 0...
</div></foreignObject>
</g><g xmlns="http://www.w3.org/2000/svg" p:type="Shape" xmlns:p="http://www.evolus.vn/Namespace/Pencil" p:def="Evolus.NativeGUI:TabBox" id="6ff879e699b24995aa71b74c272f566f" transform="matrix(1,0,0,1,1,36)"><p:metadata><p:property name="box"...
<foreignObject x="0" y="0" width="976" height="506" p:name="htmlObject" id="66a6f4f3ef2e468b9e711d6f75acab97" style="font-family: "Liberation Sans",Arial,sans-serif; font-size: 13px; font-weight: normal; font-style: normal; text...
<html:div xmlns:html="http://www.w3.org/1999/xhtml" style="-moz-box-sizing: border-box; overflow: hidden; position: relative; width: 976px; height: 506px;" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" p:name="...
<tabbox flex="1" style="pointer-events: none; margin: 0px ! important; width: 976px; height: 506px; font-family: "Liberation Sans",Arial,sans-serif; font-size: 13px; font-weight: normal; font-style: normal; text-decorati...
<tabs p:name="tabs" id="72c551467bcc459aa1f0d9c6db590ff3"><tab label="УпÑавление" selected="true"/><tab label="СайÑ" selected="false"/><tab label="ÐокÑпки" selected="false"/><tab label="ÐÑодажби" sel...
<tabpanels flex="1">
<tabpanel/>
</tabpanels>
</tabbox>
<html:div style="position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;"></html:div>
</html:div>
</foreignObject>
</g><g xmlns="http://www.w3.org/2000/svg" p:type="Shape" xmlns:p="http://www.evolus.vn/Namespace/Pencil" p:def="Evolus.NativeGUI:Listbox" id="211483412b4d45a2909ff2958f3e05c6" transform="matrix(1,0,0,1,1,60)"><p:metadata><p:property name="box...
ÐоÑÑебиÑели]]></p:property><p:property name="textColor"><![CDATA[#000000FF]]></p:property><p:property name="textFont"><![CDATA["Liberation Sans",Arial,sans-serif|normal|normal|13px|none]]></p:property></p:metadata>
<foreignObject x="0" y="0" width="140" height="478" p:name="htmlObject" id="b86902bea256473ebad2901ae3d49f8c" style="">
<html:div xmlns:html="http://www.w3.org/1999/xhtml" style="-moz-box-sizing: border-box; overflow: hidden; position: relative; font-size: 0px; width: 140px; height: 478px;" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.on...
<listbox style="margin: 0px ! important; min-width: 0px ! important; -moz-box-sizing: border-box; vertical-align: middle; width: 140px; height: 478px; font-family: "Liberation Sans",Arial,sans-serif; font-size: 13px; fon...
<html:div style="position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;"></html:div>
</html:div>
</foreignObject>
</g></Content></Page></Pages></Document>
public/doc/en/intro.md view on Meta::CPAN
2. Mojolicious::Plugin::Charset â UTF-8.
3. Mojolicious::Plugin::DSC â a plugin which integrates DBIx::Simple::Class in the application. DBIx::Simple::Class is a very lightweight object-relational mapper based on DBIx::Simple. It abstracts the SQL from the programmer still allowing to...
4. Ado::Plugin::Auth is a plugin that authenticates users to an Ado system. Users can be authenticated locally or using (TODO!) Facebook, Google, Twitter and other authentication service-providers. A pre-made login form can be used directly or as a...
5. Ado::Plugin::MarkdownRenderer - Render static files in markdown format. One can create a personal blog or enterprise wiki using static files in markdown format.
3. The following libraries for user-interface development are used:
1. Semantic UI â a CSS and JS framework for development of mobile-ready layouts. Its usage also results in more clean HTML than other popular frameworks.
2. PageDown is the version of Attacklab's Showdown and WMD as used on Stack Overflow and the other Stack Exchange sites. It includes a converter that turns Markdown into HTML, a Markdown editor with realtime preview of the generated HTML, and a few...
4. The following Ado specific commands are available:
1. Ado::Command::adduser allows adding users to an Ado application via a terminal. It also allows adding users to existing or not existing groups. The new group is automatically created.
2. Ado::Command::version shows version information for installed core and optional modules.
1. Last but not least, Ado code is well covered with tests. Special care is taken to avoid accumulating technical debt by having Test::Perl::Critic tests set to level âharshâ. This way the coding style is forced to be consistent across the framew...
Here is how an Ado system looks like from architectural point of view:

##Installation/Deployment
The most flexible way to install Ado is manually on the command line.
It is highly recommended to have a separate Perl distribution (not the one that comes with your OS).
ActivePerl or perlbrew are both fine.
public/img/Ado-Building-Blocks.svg view on Meta::CPAN
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,-168)">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:1.63876426000000008;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3782"
width="798.37067"
height="598.31671"
x="0.81465793"
y="168.84164"
ry="28.02034"
inkscape:export-xdpi="72"
inkscape:export-ydpi="72" />
<g
id="g4587"
transform="matrix(0.81466395,0,0,0.82412767,-18.737277,147.41433)">
<rect
ry="12.344703"
y="665.60278"
x="35.602814"
height="74.794373"
width="952.79437"
id="rect4552"
style="fill:none;stroke:#000000;stroke-width:1.20562422;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<text
sodipodi:linespacing="125%"
id="text4554"
y="715.87109"
x="132.35156"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
y="715.87109"
x="132.35156"
id="tspan4556"
sodipodi:role="line">Linux, Mac OSX, Free BSD, Windows...</tspan></text>
</g>
<rect
style="fill:none;stroke:#000000;stroke-width:0.7151494;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect4560"
width="404.99161"
height="61.914406"
x="379.98889"
y="628.24036"
ry="10.218884" />
<g
id="g4582"
transform="matrix(0.81466395,0,0,0.82412767,-18.737277,147.41433)">
<rect
style="fill:none;stroke:#000000;stroke-width:0.82433641;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect4558"
width="443.17566"
height="75.175659"
x="35.41217"
y="583.41211"
ry="12.407634" />
<text
sodipodi:linespacing="125%"
id="text4562"
y="635.91205"
x="219.45117"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
y="635.91205"
x="219.45117"
id="tspan4564"
sodipodi:role="line">Perl</tspan></text>
</g>
<text
xml:space="preserve"
style="font-size:32.77528381px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="401.50366"
y="662.63531"
id="text4566"
sodipodi:linespacing="125%"
transform="scale(0.99424176,1.0057916)"><tspan
sodipodi:role="line"
id="tspan4568"
x="401.50366"
y="662.63531"
style="font-size:26.2202282px">SQLite, MySQL, Postgre SQL</tspan></text>
<g
id="g4592"
transform="matrix(0.81466395,0,0,0.82412767,-18.737277,147.41433)">
<rect
style="fill:none;stroke:#000000;stroke-width:1.20562422;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect4570"
width="952.79437"
height="74.794373"
x="35.602814"
y="497.60278"
ry="12.344703" />
<text
sodipodi:linespacing="125%"
id="text4572"
y="546.03516"
x="400.75"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
y="546.03516"
x="400.75"
id="tspan4574"
sodipodi:role="line">Mojolicious</tspan></text>
</g>
<g
id="g4599"
transform="matrix(0.81466395,0,0,0.82412767,-18.737277,147.41433)">
<rect
ry="12.344703"
y="409.60278"
x="35.602814"
height="74.794373"
width="952.79437"
id="rect4576"
style="fill:none;stroke:#000000;stroke-width:1.20562422;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="77.723633"
y="456.93161"
id="text4578"
sodipodi:linespacing="125%"><tspan
style="font-size:36px"
sodipodi:role="line"
id="tspan4580"
x="77.723633"
y="456.93161">Ado framework = Ado App + Mojolicious Plugins</tspan></text>
</g>
<g
id="g4706"
transform="matrix(0.81466395,0,0,0.82412767,-13.453267,147.41433)">
<rect
style="fill:none;stroke:#000000;stroke-width:2.65525556;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect4597"
width="951.34473"
height="363.34473"
x="31.841515"
y="38.327599"
ry="59.969524" />
<text
transform="scale(1.2786835,0.78205437)"
sodipodi:linespacing="125%"
id="text4635"
y="482.72614"
x="46.371292"
style="font-size:37.7113533px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
style="font-size:60.3381691px;fill:#cccccc"
y="482.72614"
x="46.371292"
id="tspan4637"
sodipodi:role="line">Ado-based applications</tspan></text>
<g
transform="matrix(1,0,0,0.85391604,0,6.7183252)"
id="g4663">
<rect
style="fill:none;stroke:#000000;stroke-width:0.97899681;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect4623"
width="135.02098"
height="348.02097"
x="46.456173"
y="45.989479"
ry="57.440357" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="-372.00681"
y="123.8983"
id="text4639"
sodipodi:linespacing="125%"
transform="matrix(0,-1,1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan4641"
x="-372.00681"
y="123.8983"
style="font-size:36px">Ado::Plugin::Vest</tspan></text>
</g>
<g
transform="matrix(1,0,0,0.85391604,0,6.7183252)"
id="g4676">
<rect
ry="57.440357"
y="45.989479"
x="204.49136"
height="348.02097"
width="135.02098"
id="rect4625"
style="fill:none;stroke:#000000;stroke-width:0.97899681;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<text
transform="matrix(0,-1,1,0,0,0)"
sodipodi:linespacing="125%"
id="text4643"
y="281.9335"
x="-367.61227"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
style="font-size:36px"
y="281.9335"
x="-367.61227"
id="tspan4645"
sodipodi:role="line">Ado::Plugin::Site</tspan></text>
</g>
<g
transform="matrix(1,0,0,0.85391604,0,6.7183252)"
id="g4696">
<rect
style="fill:none;stroke:#000000;stroke-width:0.97899681;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect4627"
width="135.02098"
height="348.02097"
x="362.52655"
y="45.989479"
ry="57.440357" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="-380.40427"
y="439.41693"
id="text4647"
sodipodi:linespacing="125%"
transform="matrix(0,-1,1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan4649"
x="-380.40427"
y="439.41693"
style="font-size:34px">Ado::Plugin::Admin</tspan></text>
</g>
<g
transform="matrix(1,0,0,0.85391604,0,6.7183252)"
id="g4691">
<rect
ry="57.440357"
y="45.989479"
x="520.56177"
height="348.02097"
width="135.02098"
id="rect4629"
style="fill:none;stroke:#000000;stroke-width:0.97899681;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<text
transform="matrix(0,-1,1,0,0,0)"
sodipodi:linespacing="125%"
id="text4651"
y="598.00391"
x="-378.30856"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
style="font-size:36px"
y="598.00391"
x="-378.30856"
id="tspan4653"
sodipodi:role="line">Ado::Plugin::Shop</tspan></text>
</g>
<g
transform="matrix(1,0,0,0.85391604,0,6.7183252)"
id="g4686">
<rect
style="fill:none;stroke:#000000;stroke-width:0.97899681;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect4631"
width="135.02098"
height="348.02097"
x="678.59692"
y="45.989479"
ry="57.440357" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="-371.72165"
y="755.4873"
id="text4655"
sodipodi:linespacing="125%"
transform="matrix(0,-1,1,0,0,0)"><tspan
sodipodi:role="line"
id="tspan4657"
x="-371.72165"
y="755.4873"
style="font-size:34px">Ado::Plugin::Store</tspan></text>
</g>
<rect
style="fill:none;stroke:#000000;stroke-width:0.90466726;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect4633"
width="135.02098"
height="297.18069"
x="836.63208"
y="45.989479"
ry="49.049244" />
<text
xml:space="preserve"
style="font-size:36.96303177px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="-342.90289"
y="844.3244"
id="text4659"
sodipodi:linespacing="125%"
transform="matrix(0,-0.9240758,1.0821623,0,0,0)"><tspan
sodipodi:role="line"
id="tspan4661"
x="-342.90289"
y="844.3244"
style="font-size:32px">Ado::Plugin::XYZ</tspan></text>
</g>
</g>
</svg>
public/vendor/pagedown/Markdown.Converter.js view on Meta::CPAN
<!
(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--) // see http://www.w3.org/TR/html-markup/syntax.html#comments and http://meta.stackoverflow.com/q/95256
>
[ \t]*
(?=\n{2,}) // followed by a blank line
)
/g,hashElement);
*/
text = text.replace(/\n\n[ ]{0,3}(<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>[ \t]*(?=\n{2,}))/g, hashElement);
// PHP and ASP-style processor instructions (<?...?> and <%...%>)
/*
text = text.replace(/
(?:
\n\n // Starting after a blank line
)
( // save in $1
[ ]{0,3} // attacklab: g_tab_width - 1
(?:
<([?%]) // $2
public/vendor/pagedown/Markdown.Converter.js view on Meta::CPAN
});
return text;
}
function _DoAnchors(text) {
//
// Turn Markdown link shortcuts into XHTML <a> tags.
//
//
// First, handle reference-style links: [link text] [id]
//
/*
text = text.replace(/
( // wrap whole match in $1
\[
(
(?:
\[[^\]]*\] // allow brackets nested one level
|
public/vendor/pagedown/Markdown.Converter.js view on Meta::CPAN
\[
(.*?) // id = $3
\]
)
()()()() // pad remaining backreferences
/g, writeAnchorTag);
*/
text = text.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g, writeAnchorTag);
//
// Next, inline-style links: [link text](url "optional title")
//
/*
text = text.replace(/
( // wrap whole match in $1
\[
(
(?:
\[[^\]]*\] // allow brackets nested one level
|
public/vendor/pagedown/Markdown.Converter.js view on Meta::CPAN
[ \t]* // ignore any spaces/tabs between closing quote and )
)? // title is optional
\)
)
/g, writeAnchorTag);
*/
text = text.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\]\([ \t]*()<?((?:\([^)]*\)|[^()\s])*?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g, writeAnchorTag);
//
// Last, handle reference-style shortcuts: [link text]
// These must come last in case you've also got [link test][1]
// or [link test](/foo)
//
/*
text = text.replace(/
( // wrap whole match in $1
\[
([^\[\]]+) // link text = $2; can't contain '[' or ']'
\]
public/vendor/pagedown/Markdown.Converter.js view on Meta::CPAN
return result;
}
function _DoImages(text) {
//
// Turn Markdown image shortcuts into <img> tags.
//
//
// First, handle reference-style labeled images: ![alt text][id]
//
/*
text = text.replace(/
( // wrap whole match in $1
!\[
(.*?) // alt text = $2
\]
[ ]? // one optional space
public/vendor/pagedown/Markdown.Converter.js view on Meta::CPAN
result += " title=\"" + title + "\"";
//}
result += " />";
return result;
}
function _DoHeaders(text) {
// Setext-style headers:
// Header 1
// ========
//
// Header 2
// --------
//
text = text.replace(/^(.+)[ \t]*\n=+[ \t]*\n+/gm,
function (wholeMatch, m1) { return "<h1>" + _RunSpanGamut(m1) + "</h1>\n\n"; }
);
text = text.replace(/^(.+)[ \t]*\n-+[ \t]*\n+/gm,
function (matchFound, m1) { return "<h2>" + _RunSpanGamut(m1) + "</h2>\n\n"; }
);
// atx-style headers:
// # Header 1
// ## Header 2
// ## Header 2 with closing hashes ##
// ...
// ###### Header 6
//
/*
text = text.replace(/
^(\#{1,6}) // $1 = string of #'s
public/vendor/pagedown/Markdown.Editor.js view on Meta::CPAN
init();
};
// Creates the background behind the hyperlink text entry box.
// And download dialog
// Most of this has been moved to CSS but the div creation and
// browser-specific hacks remain here.
ui.createBackground = function () {
var background = doc.createElement("div"),
style = background.style;
background.className = "wmd-prompt-background";
style.position = "absolute";
style.top = "0";
style.zIndex = "1000";
if (uaSniffed.isIE) {
style.filter = "alpha(opacity=50)";
}
else {
style.opacity = "0.5";
}
var pageSize = position.getPageSize();
style.height = pageSize[1] + "px";
if (uaSniffed.isIE) {
style.left = doc.documentElement.scrollLeft;
style.width = doc.documentElement.clientWidth;
}
else {
style.left = "0";
style.width = "100%";
}
doc.body.appendChild(background);
return background;
};
// This simulates a modal dialog box and asks for the URL when you
// click the hyperlink or image buttons.
//
// text: The html for the input box.
public/vendor/pagedown/Markdown.Editor.js view on Meta::CPAN
};
// Create the text input box form/window.
var createDialog = function () {
// The main dialog box.
dialog = doc.createElement("div");
dialog.className = "wmd-prompt-dialog";
dialog.style.padding = "10px;";
dialog.style.position = "fixed";
dialog.style.width = "400px";
dialog.style.zIndex = "1001";
// The dialog text.
var question = doc.createElement("div");
question.innerHTML = text;
question.style.padding = "5px";
dialog.appendChild(question);
// The web form container for the text box and buttons.
var form = doc.createElement("form"),
style = form.style;
form.onsubmit = function () { return close(false); };
style.padding = "0";
style.margin = "0";
style.cssFloat = "left";
style.width = "100%";
style.textAlign = "center";
style.position = "relative";
dialog.appendChild(form);
// The input text box
input = doc.createElement("input");
input.type = "text";
input.value = defaultInputText;
style = input.style;
style.display = "block";
style.width = "80%";
style.marginLeft = style.marginRight = "auto";
form.appendChild(input);
// The ok button
var okButton = doc.createElement("input");
okButton.type = "button";
okButton.onclick = function () { return close(false); };
okButton.value = "OK";
style = okButton.style;
style.margin = "10px";
style.display = "inline";
style.width = "7em";
// The cancel button
var cancelButton = doc.createElement("input");
cancelButton.type = "button";
cancelButton.onclick = function () { return close(true); };
cancelButton.value = "Cancel";
style = cancelButton.style;
style.margin = "10px";
style.display = "inline";
style.width = "7em";
form.appendChild(okButton);
form.appendChild(cancelButton);
util.addEvent(doc.body, "keydown", checkEscape);
dialog.style.top = "50%";
dialog.style.left = "50%";
dialog.style.display = "block";
if (uaSniffed.isIE_5or6) {
dialog.style.position = "absolute";
dialog.style.top = doc.documentElement.scrollTop + 200 + "px";
dialog.style.left = "50%";
}
doc.body.appendChild(dialog);
// This has to be done AFTER adding the dialog to the form if you
// want it to be centered.
dialog.style.marginTop = -(position.getHeight(dialog) / 2) + "px";
dialog.style.marginLeft = -(position.getWidth(dialog) / 2) + "px";
};
// Why is this in a zero-length timeout?
// Is it working around a browser bug?
setTimeout(function () {
createDialog();
var defTextLen = defaultInputText.length;
public/vendor/pagedown/Markdown.Editor.js view on Meta::CPAN
}
};
function setupButton(button, isEnabled) {
var normalYShift = "0px";
var disabledYShift = "-20px";
var highlightYShift = "-40px";
var image = button.getElementsByTagName("span")[0];
if (isEnabled) {
image.style.backgroundPosition = button.XShift + " " + normalYShift;
button.onmouseover = function () {
image.style.backgroundPosition = this.XShift + " " + highlightYShift;
};
button.onmouseout = function () {
image.style.backgroundPosition = this.XShift + " " + normalYShift;
};
// IE tries to select the background image "button" text (it's
// implemented in a list item) so we have to cache the selection
// on mousedown.
if (uaSniffed.isIE) {
button.onmousedown = function () {
if (doc.activeElement && doc.activeElement !== panels.input) { // we're not even in the input box, so there's no selection
return;
}
public/vendor/pagedown/Markdown.Editor.js view on Meta::CPAN
button.onclick = function () {
if (this.onmouseout) {
this.onmouseout();
}
doClick(this);
return false;
}
}
}
else {
image.style.backgroundPosition = button.XShift + " " + disabledYShift;
button.onmouseover = button.onmouseout = button.onclick = function () { };
}
}
function bindCommand(method) {
if (typeof method === "string")
method = commandManager[method];
return function () { method.apply(commandManager, arguments); }
}
public/vendor/pagedown/Markdown.Editor.js view on Meta::CPAN
var highlightYShift = "-40px";
var buttonRow = document.createElement("ul");
buttonRow.id = "wmd-button-row" + postfix;
buttonRow.className = 'wmd-button-row';
buttonRow = buttonBar.appendChild(buttonRow);
var xPosition = 0;
var makeButton = function (id, title, XShift, textOp) {
var button = document.createElement("li");
button.className = "wmd-button";
button.style.left = xPosition + "px";
xPosition += 25;
var buttonImage = document.createElement("span");
button.id = id + postfix;
button.appendChild(buttonImage);
button.title = title;
button.XShift = XShift;
if (textOp)
button.textOp = textOp;
setupButton(button, true);
buttonRow.appendChild(button);
public/vendor/pagedown/Markdown.Editor.js view on Meta::CPAN
buttons.redo.execute = function (manager) { if (manager) manager.redo(); };
if (helpOptions) {
var helpButton = document.createElement("li");
var helpButtonImage = document.createElement("span");
helpButton.appendChild(helpButtonImage);
helpButton.className = "wmd-button wmd-help-button";
helpButton.id = "wmd-help-button" + postfix;
helpButton.XShift = "-240px";
helpButton.isHelp = true;
helpButton.style.right = "0px";
helpButton.title = getString("help");
helpButton.onclick = helpOptions.handler;
setupButton(helpButton, true);
buttonRow.appendChild(helpButton);
buttons.help = helpButton;
}
setUndoRedoButtonStates();
}
t/pod-coverage.t view on Meta::CPAN
plan(skip_all => $msg);
}
# Ensure a recent version of Test::Pod::Coverage
my $min_tpc = 1.08;
eval "use Test::Pod::Coverage $min_tpc";
plan skip_all => "Test::Pod::Coverage $min_tpc required for testing POD coverage"
if $@;
# Test::Pod::Coverage doesn't require a minimum Pod::Coverage version,
# but older versions don't recognize some common documentation styles
my $min_pc = 0.18;
eval "use Pod::Coverage $min_pc";
plan skip_all => "Pod::Coverage $min_pc required for testing POD coverage"
if $@;
my $trustme = {
trustme => [
qr/^(
ALIASES|CHECKS|COLUMNS|
PRIMARY_KEY|TABLE|is_base_class|dbix
)$/x
templates/default/index_text.html+bg.ep view on Meta::CPAN
</li>
<li>ÐожеÑе да генеÑиÑаÑе конÑигÑÑаÑионни Ñайлове за Apache 2 каÑо използваÑе
командиÑе
<code>ado generate apache2vhost</code> и
<code>ado generate apache2htaccess</code>.
</li>
</ol>
</li>
</ol>
</article>
<div class="ui horizontal section divider" style="margin-top:2em">
<i class="circular ado icon"></i>
</div>
<article class="ui footer small">
<h3>ÐÐТÐРСÐÐ ÐÐ ÐÐÐ Ð ÐÐЦÐÐÐ</h3>
<p>© 2013-2016 ÐÑаÑÐ¸Ð¼Ð¸Ñ ÐеÑов (Krasimir Berov).</p>
<p>
Тази пÑогÑама е Ñвободен ÑоÑÑÑеÑ. ÐожеÑе да Ñ ÑазпÑоÑÑÑанÑваÑа или да Ñ
пÑоменÑÑе пÑи ÑÑловиÑÑа на GNU Lesser General Public License v3 (LGPL-3.0).
ÐожеÑе да копиÑаÑе, ÑазпÑоÑÑÑанÑваÑе и пÑоменÑÑе ÑоÑÑÑеÑа ако пÑомениÑе ви
ÑÑÑо Ñа Ñ Ð¾ÑвоÑен код. ÐÑе пак ÑоÑÑÑеÑ, койÑо ÑÑдÑÑжа Ñози лиÑенз може да бÑде
templates/default/index_text.html+de.ep view on Meta::CPAN
<a href="<%=url_for('/perldoc/Ado/Plugin/I18n')%>">Ado::Plugin::I18n</a>.
</li>
<li>Sie können Konfigurationsdateien für Apache 2 über die Kommandos
<code>ado generate apache2vhost</code> und
<code>ado generate apache2htaccess</code> generieren lassen.
</li>
</ol>
</li>
</ol>
</article>
<div class="ui horizontal section divider" style="margin-top:2em">
<i class="circular ado icon"></i>
</div>
<article class="ui footer small">
<h3>COPYRIGHT AND LICENSE</h3>
<p>© 2013-2016 ÐÑаÑÐ¸Ð¼Ð¸Ñ ÐеÑов (Krasimir Berov).</p>
<p>
This program is free software, you can redistribute it and/or modify it under
the terms of the GNU Lesser General Public License v3 (LGPL-3.0). You may
copy, distribute and modify the software provided that modifications are open
source. However, software that includes the license may release under a
templates/default/index_text.html.ep view on Meta::CPAN
<a href="<%=url_for('/perldoc/Ado/Plugin/I18n')%>">Ado::Plugin::I18n</a>.
</li>
<li>You can generate configuration files for Apache 2 using the commands
<code>ado generate apache2vhost</code> and
<code>ado generate apache2htaccess</code>.
</li>
</ol>
</li>
</ol>
</article>
<div class="ui horizontal section divider" style="margin-top:2em">
<i class="circular ado icon"></i>
</div>
<article class="ui small footer">
<h3>COPYRIGHT AND LICENSE</h3>
<p>© 2013-2016 ÐÑаÑÐ¸Ð¼Ð¸Ñ ÐеÑов (Krasimir Berov).</p>
<p>
This program is free software, you can redistribute it and/or modify it under
the terms of the GNU Lesser General Public License v3 (LGPL-3.0). You may
copy, distribute and modify the software provided that modifications are open
source. However, software that includes the license may release under a
templates/partials/head.html.ep view on Meta::CPAN
<meta charset="utf-8" />
<base href="<%= $base_url %>" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="generator" content="<%= $self->generator %>" />
<meta name="description" content="<%= $description %>" />
<meta name="keywords" content="<%= $keywords %>" />
<title><%= title %></title>
<link rel="icon" href="<%=$base_url%>/favicon.png" type="image/png" />
%== head_css
<link href="css/ado.css" rel='stylesheet' type='text/css' />
<link href='//fonts.googleapis.com/css?family=Ubuntu&subset=latin,cyrillic' rel='stylesheet' type='text/css' />
%== head_javascript
templates/partials/login_form.html.ep view on Meta::CPAN
'js/auth.js',
]);
%>
<form class="ui form segment" method="POST"
action="<%=url_for('login/ado') %>" id="login_form">
<div class="ui header">
%= l('Sign in')
</div>
% if(stash->{error_login}) {
<div id="error_login" class="ui error message" style="display:block">
<%= stash->{error_login} %></div>
% }
<div class="field">
<label for="login_name"><%=ucfirst l('login_name')%></label>
<div class="ui left labeled icon input">
%= text_field 'login_name', placeholder => l('login_name'), id => 'login_name', required => ''
<i class="user icon"></i>
<div class="ui corner label"><i class="icon asterisk"></i></div>
% if(stash->{error_login_name}) {
<div id="error_login_name" class="ui error message" style="display:block">
<%= stash->{error_login_name} %>
</div>
% }
</div>
</div>
<div class="field">
<label for="login_password"><%=l('login_password')%></label>
<div class="ui left labeled icon input">
<input type="password" name="login_password" id="login_password" required="" />
<i class="lock icon"></i>