├── .htaccess ├── LICENSE ├── README.md └── app ├── .htaccess ├── cache └── .htaccess ├── config.inc.php ├── controller.php ├── lib ├── .htaccess ├── autoload.php ├── db.class.php ├── otp.class.php ├── qrdata.db ├── session.class.php ├── smarty │ ├── Autoloader.php │ ├── Smarty.class.php │ ├── SmartyBC.class.php │ ├── debug.tpl │ ├── plugins │ │ ├── block.textformat.php │ │ ├── function.counter.php │ │ ├── function.cycle.php │ │ ├── function.fetch.php │ │ ├── function.html_checkboxes.php │ │ ├── function.html_image.php │ │ ├── function.html_options.php │ │ ├── function.html_radios.php │ │ ├── function.html_select_date.php │ │ ├── function.html_select_time.php │ │ ├── function.html_table.php │ │ ├── function.mailto.php │ │ ├── function.math.php │ │ ├── modifier.capitalize.php │ │ ├── modifier.date_format.php │ │ ├── modifier.debug_print_var.php │ │ ├── modifier.escape.php │ │ ├── modifier.regex_replace.php │ │ ├── modifier.replace.php │ │ ├── modifier.spacify.php │ │ ├── modifier.truncate.php │ │ ├── modifiercompiler.cat.php │ │ ├── modifiercompiler.count_characters.php │ │ ├── modifiercompiler.count_paragraphs.php │ │ ├── modifiercompiler.count_sentences.php │ │ ├── modifiercompiler.count_words.php │ │ ├── modifiercompiler.default.php │ │ ├── modifiercompiler.escape.php │ │ ├── modifiercompiler.from_charset.php │ │ ├── modifiercompiler.indent.php │ │ ├── modifiercompiler.lower.php │ │ ├── modifiercompiler.noprint.php │ │ ├── modifiercompiler.string_format.php │ │ ├── modifiercompiler.strip.php │ │ ├── modifiercompiler.strip_tags.php │ │ ├── modifiercompiler.to_charset.php │ │ ├── modifiercompiler.unescape.php │ │ ├── modifiercompiler.upper.php │ │ ├── modifiercompiler.wordwrap.php │ │ ├── outputfilter.trimwhitespace.php │ │ ├── shared.escape_special_chars.php │ │ ├── shared.literal_compiler_param.php │ │ ├── shared.make_timestamp.php │ │ ├── shared.mb_str_replace.php │ │ ├── shared.mb_unicode.php │ │ ├── shared.mb_wordwrap.php │ │ └── variablefilter.htmlspecialchars.php │ └── sysplugins │ │ ├── smarty_cacheresource.php │ │ ├── smarty_cacheresource_custom.php │ │ ├── smarty_cacheresource_keyvaluestore.php │ │ ├── smarty_data.php │ │ ├── smarty_internal_block.php │ │ ├── smarty_internal_cacheresource_file.php │ │ ├── smarty_internal_compile_append.php │ │ ├── smarty_internal_compile_assign.php │ │ ├── smarty_internal_compile_block.php │ │ ├── smarty_internal_compile_break.php │ │ ├── smarty_internal_compile_call.php │ │ ├── smarty_internal_compile_capture.php │ │ ├── smarty_internal_compile_config_load.php │ │ ├── smarty_internal_compile_continue.php │ │ ├── smarty_internal_compile_debug.php │ │ ├── smarty_internal_compile_eval.php │ │ ├── smarty_internal_compile_extends.php │ │ ├── smarty_internal_compile_for.php │ │ ├── smarty_internal_compile_foreach.php │ │ ├── smarty_internal_compile_function.php │ │ ├── smarty_internal_compile_if.php │ │ ├── smarty_internal_compile_include.php │ │ ├── smarty_internal_compile_include_php.php │ │ ├── smarty_internal_compile_insert.php │ │ ├── smarty_internal_compile_ldelim.php │ │ ├── smarty_internal_compile_make_nocache.php │ │ ├── smarty_internal_compile_nocache.php │ │ ├── smarty_internal_compile_private_block_plugin.php │ │ ├── smarty_internal_compile_private_foreachsection.php │ │ ├── smarty_internal_compile_private_function_plugin.php │ │ ├── smarty_internal_compile_private_modifier.php │ │ ├── smarty_internal_compile_private_object_block_function.php │ │ ├── smarty_internal_compile_private_object_function.php │ │ ├── smarty_internal_compile_private_php.php │ │ ├── smarty_internal_compile_private_print_expression.php │ │ ├── smarty_internal_compile_private_registered_block.php │ │ ├── smarty_internal_compile_private_registered_function.php │ │ ├── smarty_internal_compile_private_special_variable.php │ │ ├── smarty_internal_compile_rdelim.php │ │ ├── smarty_internal_compile_section.php │ │ ├── smarty_internal_compile_setfilter.php │ │ ├── smarty_internal_compile_shared_inheritance.php │ │ ├── smarty_internal_compile_while.php │ │ ├── smarty_internal_compilebase.php │ │ ├── smarty_internal_config_file_compiler.php │ │ ├── smarty_internal_configfilelexer.php │ │ ├── smarty_internal_configfileparser.php │ │ ├── smarty_internal_data.php │ │ ├── smarty_internal_debug.php │ │ ├── smarty_internal_extension_clear.php │ │ ├── smarty_internal_extension_handler.php │ │ ├── smarty_internal_method_addautoloadfilters.php │ │ ├── smarty_internal_method_adddefaultmodifiers.php │ │ ├── smarty_internal_method_append.php │ │ ├── smarty_internal_method_appendbyref.php │ │ ├── smarty_internal_method_assignbyref.php │ │ ├── smarty_internal_method_assignglobal.php │ │ ├── smarty_internal_method_clearallassign.php │ │ ├── smarty_internal_method_clearallcache.php │ │ ├── smarty_internal_method_clearassign.php │ │ ├── smarty_internal_method_clearcache.php │ │ ├── smarty_internal_method_clearcompiledtemplate.php │ │ ├── smarty_internal_method_clearconfig.php │ │ ├── smarty_internal_method_compileallconfig.php │ │ ├── smarty_internal_method_compilealltemplates.php │ │ ├── smarty_internal_method_configload.php │ │ ├── smarty_internal_method_createdata.php │ │ ├── smarty_internal_method_getautoloadfilters.php │ │ ├── smarty_internal_method_getconfigvars.php │ │ ├── smarty_internal_method_getdebugtemplate.php │ │ ├── smarty_internal_method_getdefaultmodifiers.php │ │ ├── smarty_internal_method_getglobal.php │ │ ├── smarty_internal_method_getregisteredobject.php │ │ ├── smarty_internal_method_getstreamvariable.php │ │ ├── smarty_internal_method_gettags.php │ │ ├── smarty_internal_method_gettemplatevars.php │ │ ├── smarty_internal_method_loadfilter.php │ │ ├── smarty_internal_method_loadplugin.php │ │ ├── smarty_internal_method_mustcompile.php │ │ ├── smarty_internal_method_registercacheresource.php │ │ ├── smarty_internal_method_registerclass.php │ │ ├── smarty_internal_method_registerdefaultconfighandler.php │ │ ├── smarty_internal_method_registerdefaultpluginhandler.php │ │ ├── smarty_internal_method_registerdefaulttemplatehandler.php │ │ ├── smarty_internal_method_registerfilter.php │ │ ├── smarty_internal_method_registerobject.php │ │ ├── smarty_internal_method_registerplugin.php │ │ ├── smarty_internal_method_registerresource.php │ │ ├── smarty_internal_method_setautoloadfilters.php │ │ ├── smarty_internal_method_setdebugtemplate.php │ │ ├── smarty_internal_method_setdefaultmodifiers.php │ │ ├── smarty_internal_method_unloadfilter.php │ │ ├── smarty_internal_method_unregistercacheresource.php │ │ ├── smarty_internal_method_unregisterfilter.php │ │ ├── smarty_internal_method_unregisterobject.php │ │ ├── smarty_internal_method_unregisterplugin.php │ │ ├── smarty_internal_method_unregisterresource.php │ │ ├── smarty_internal_nocache_insert.php │ │ ├── smarty_internal_parsetree.php │ │ ├── smarty_internal_parsetree_code.php │ │ ├── smarty_internal_parsetree_dq.php │ │ ├── smarty_internal_parsetree_dqcontent.php │ │ ├── smarty_internal_parsetree_tag.php │ │ ├── smarty_internal_parsetree_template.php │ │ ├── smarty_internal_parsetree_text.php │ │ ├── smarty_internal_resource_eval.php │ │ ├── smarty_internal_resource_extends.php │ │ ├── smarty_internal_resource_file.php │ │ ├── smarty_internal_resource_php.php │ │ ├── smarty_internal_resource_registered.php │ │ ├── smarty_internal_resource_stream.php │ │ ├── smarty_internal_resource_string.php │ │ ├── smarty_internal_runtime_cachemodify.php │ │ ├── smarty_internal_runtime_capture.php │ │ ├── smarty_internal_runtime_codeframe.php │ │ ├── smarty_internal_runtime_filterhandler.php │ │ ├── smarty_internal_runtime_foreach.php │ │ ├── smarty_internal_runtime_getincludepath.php │ │ ├── smarty_internal_runtime_inheritance.php │ │ ├── smarty_internal_runtime_make_nocache.php │ │ ├── smarty_internal_runtime_tplfunction.php │ │ ├── smarty_internal_runtime_updatecache.php │ │ ├── smarty_internal_runtime_updatescope.php │ │ ├── smarty_internal_runtime_writefile.php │ │ ├── smarty_internal_smartytemplatecompiler.php │ │ ├── smarty_internal_template.php │ │ ├── smarty_internal_templatebase.php │ │ ├── smarty_internal_templatecompilerbase.php │ │ ├── smarty_internal_templatelexer.php │ │ ├── smarty_internal_templateparser.php │ │ ├── smarty_internal_testinstall.php │ │ ├── smarty_internal_undefined.php │ │ ├── smarty_resource.php │ │ ├── smarty_resource_custom.php │ │ ├── smarty_resource_recompiled.php │ │ ├── smarty_resource_uncompiled.php │ │ ├── smarty_security.php │ │ ├── smarty_template_cached.php │ │ ├── smarty_template_compiled.php │ │ ├── smarty_template_config.php │ │ ├── smarty_template_resource_base.php │ │ ├── smarty_template_source.php │ │ ├── smarty_undefined_variable.php │ │ ├── smarty_variable.php │ │ ├── smartycompilerexception.php │ │ └── smartyexception.php └── users.class.php ├── model ├── .htaccess ├── accounts.php ├── app.php ├── authenticator.php ├── error.php ├── install.php ├── login.php ├── logout.php ├── notifications.php └── settings.php ├── templates └── gentelella │ ├── LICENSE.txt │ ├── accounts.tpl │ ├── app.tpl │ ├── authenticator.tpl │ ├── css │ ├── animate.min.css │ ├── bootstrap.min.css │ ├── calendar │ │ ├── fullcalendar.css │ │ ├── fullcalendar.min.css │ │ └── fullcalendar.print.css │ ├── colorpicker │ │ ├── bootstrap-colorpicker.min.css │ │ └── img │ │ │ └── bootstrap-colorpicker │ │ │ ├── alpha-horizontal.png │ │ │ ├── alpha.png │ │ │ ├── hue-horizontal.png │ │ │ ├── hue.png │ │ │ └── saturation.png │ ├── custom.css │ ├── datatables │ │ ├── css │ │ │ ├── demo_page.css │ │ │ ├── demo_table.css │ │ │ ├── demo_table_jui.css │ │ │ ├── jquery.dataTables.css │ │ │ └── jquery.dataTables_themeroller.css │ │ ├── images │ │ │ ├── Sorting icons.psd │ │ │ ├── back_disabled.png │ │ │ ├── back_enabled.png │ │ │ ├── back_enabled_hover.png │ │ │ ├── favicon.ico │ │ │ ├── forward_disabled.png │ │ │ ├── forward_enabled.png │ │ │ ├── forward_enabled_hover.png │ │ │ ├── sort_asc.png │ │ │ ├── sort_asc_disabled.png │ │ │ ├── sort_both.png │ │ │ ├── sort_desc.png │ │ │ └── sort_desc_disabled.png │ │ └── tools │ │ │ └── css │ │ │ └── dataTables.tableTools.css │ ├── editor │ │ ├── external │ │ │ └── google-code-prettify │ │ │ │ └── prettify.css │ │ └── index.css │ ├── floatexamples.css │ ├── icheck │ │ └── flat │ │ │ ├── _all.css │ │ │ ├── aero.css │ │ │ ├── aero.png │ │ │ ├── aero@2x.png │ │ │ ├── blue.css │ │ │ ├── blue.png │ │ │ ├── blue@2x.png │ │ │ ├── flat.css │ │ │ ├── flat.png │ │ │ ├── flat@2x.png │ │ │ ├── green.css │ │ │ ├── green.png │ │ │ ├── green@2x.png │ │ │ ├── grey.css │ │ │ ├── grey.png │ │ │ ├── grey@2x.png │ │ │ ├── orange.css │ │ │ ├── orange.png │ │ │ ├── orange@2x.png │ │ │ ├── pink.css │ │ │ ├── pink.png │ │ │ ├── pink@2x.png │ │ │ ├── purple.css │ │ │ ├── purple.png │ │ │ ├── purple@2x.png │ │ │ ├── red.css │ │ │ ├── red.png │ │ │ ├── red@2x.png │ │ │ ├── yellow.css │ │ │ ├── yellow.png │ │ │ └── yellow@2x.png │ ├── ion.rangeSlider.css │ ├── ion.rangeSlider.skinFlat.css │ ├── maps │ │ └── jquery-jvectormap-2.0.3.css │ ├── normalize.css │ ├── nprogress.css │ ├── progressbar │ │ └── bootstrap-progressbar-3.3.0.css │ ├── select │ │ └── select2.min.css │ └── switchery │ │ └── switchery.min.css │ ├── error.tpl │ ├── fonts │ ├── css │ │ ├── font-awesome.css │ │ └── font-awesome.min.css │ ├── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.svg │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ └── fontawesome-webfont.woff2 │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ ├── glyphicons-halflings-regular.woff │ ├── glyphicons-halflings-regular.woff2 │ ├── less │ │ ├── animated.less │ │ ├── bordered-pulled.less │ │ ├── core.less │ │ ├── fixed-width.less │ │ ├── font-awesome.less │ │ ├── icons.less │ │ ├── larger.less │ │ ├── list.less │ │ ├── mixins.less │ │ ├── path.less │ │ ├── rotated-flipped.less │ │ ├── spinning.less │ │ ├── stacked.less │ │ └── variables.less │ └── scss │ │ ├── _animated.scss │ │ ├── _bordered-pulled.scss │ │ ├── _core.scss │ │ ├── _fixed-width.scss │ │ ├── _icons.scss │ │ ├── _larger.scss │ │ ├── _list.scss │ │ ├── _mixins.scss │ │ ├── _path.scss │ │ ├── _rotated-flipped.scss │ │ ├── _spinning.scss │ │ ├── _stacked.scss │ │ ├── _variables.scss │ │ └── font-awesome.scss │ ├── images │ ├── back_disabled.png │ ├── back_enabled.png │ ├── back_enabled_hover.png │ ├── bootstrap-colorpicker │ │ ├── alpha-horizontal.png │ │ ├── alpha.png │ │ ├── hue-horizontal.png │ │ ├── hue.png │ │ └── saturation.png │ ├── forward_disabled.png │ ├── forward_enabled.png │ ├── forward_enabled_hover.png │ ├── icons.png │ ├── loading.gif │ ├── sprite-skin-flat.png │ ├── sprite-skin-modern.png │ ├── sprite-skin-nice.png │ ├── sprite-skin-simple.png │ └── user.png │ ├── js │ ├── autocomplete │ │ ├── countries.js │ │ └── jquery.autocomplete.js │ ├── bootstrap.min.js │ ├── calendar │ │ └── fullcalendar.min.js │ ├── chartjs │ │ └── chart.min.js │ ├── colorpicker │ │ ├── bootstrap-colorpicker.min.js │ │ └── docs.js │ ├── cropping │ │ ├── cropper.min.js │ │ ├── main.js │ │ └── main2.js │ ├── custom.js │ ├── datatables │ │ ├── buttons.bootstrap.min.css │ │ ├── buttons.bootstrap.min.js │ │ ├── buttons.html5.min.js │ │ ├── buttons.print.min.js │ │ ├── dataTables.bootstrap.js │ │ ├── dataTables.buttons.min.js │ │ ├── dataTables.fixedHeader.min.js │ │ ├── dataTables.keyTable.min.js │ │ ├── dataTables.responsive.min.js │ │ ├── dataTables.scroller.min.js │ │ ├── fixedHeader.bootstrap.min.css │ │ ├── jquery.dataTables.min.css │ │ ├── jquery.dataTables.min.js │ │ ├── json │ │ │ └── scroller-demo.json │ │ ├── jszip.min.js │ │ ├── pdfmake.min.js │ │ ├── responsive.bootstrap.min.css │ │ ├── responsive.bootstrap.min.js │ │ ├── scroller.bootstrap.min.css │ │ └── vfs_fonts.js │ ├── datepicker │ │ └── daterangepicker.js │ ├── dropzone │ │ └── dropzone.js │ ├── easypie │ │ └── jquery.easypiechart.min.js │ ├── echart │ │ ├── echarts-all.js │ │ └── green.js │ ├── editor │ │ ├── bootstrap-wysiwyg.js │ │ └── external │ │ │ ├── google-code-prettify │ │ │ ├── lang-apollo.js │ │ │ ├── lang-basic.js │ │ │ ├── lang-clj.js │ │ │ ├── lang-css.js │ │ │ ├── lang-dart.js │ │ │ ├── lang-erlang.js │ │ │ ├── lang-go.js │ │ │ ├── lang-hs.js │ │ │ ├── lang-lisp.js │ │ │ ├── lang-llvm.js │ │ │ ├── lang-lua.js │ │ │ ├── lang-matlab.js │ │ │ ├── lang-ml.js │ │ │ ├── lang-mumps.js │ │ │ ├── lang-n.js │ │ │ ├── lang-pascal.js │ │ │ ├── lang-proto.js │ │ │ ├── lang-r.js │ │ │ ├── lang-rd.js │ │ │ ├── lang-scala.js │ │ │ ├── lang-sql.js │ │ │ ├── lang-tcl.js │ │ │ ├── lang-tex.js │ │ │ ├── lang-vb.js │ │ │ ├── lang-vhdl.js │ │ │ ├── lang-wiki.js │ │ │ ├── lang-xq.js │ │ │ ├── lang-yaml.js │ │ │ ├── prettify.js │ │ │ └── run_prettify.js │ │ │ └── jquery.hotkeys.js │ ├── flot │ │ ├── curvedLines.js │ │ ├── date.js │ │ ├── jquery.flot.js │ │ ├── jquery.flot.orderBars.js │ │ ├── jquery.flot.pie.js │ │ ├── jquery.flot.resize.js │ │ ├── jquery.flot.spline.js │ │ ├── jquery.flot.stack.js │ │ ├── jquery.flot.time.min.js │ │ └── jquery.flot.tooltip.min.js │ ├── gauge │ │ ├── gauge.min.js │ │ └── gauge_demo.js │ ├── icheck │ │ └── icheck.min.js │ ├── input_mask │ │ └── jquery.inputmask.js │ ├── ion_range │ │ └── ion.rangeSlider.min.js │ ├── jquery.min.js │ ├── knob │ │ └── jquery.knob.min.js │ ├── maps │ │ ├── gdp-data.js │ │ ├── jquery-jvectormap-2.0.3.min.js │ │ ├── jquery-jvectormap-us-aea-en.js │ │ ├── jquery-jvectormap-world-mill-en.js │ │ └── us-unemployment.json │ ├── moment │ │ └── moment.min.js │ ├── moris │ │ ├── example.js │ │ ├── morris.min.js │ │ └── raphael-min.js │ ├── notify │ │ ├── pnotify.buttons.js │ │ ├── pnotify.core.js │ │ └── pnotify.nonblock.js │ ├── nprogress.js │ ├── pace │ │ └── pace.min.js │ ├── parsley │ │ └── parsley.min.js │ ├── progressbar │ │ └── bootstrap-progressbar.min.js │ ├── select │ │ └── select2.full.js │ ├── sidebar │ │ ├── classie.js │ │ ├── component.css │ │ ├── modernizr.custom.js │ │ └── sidebarEffects.js │ ├── skycons │ │ └── skycons.min.js │ ├── sparkline │ │ └── jquery.sparkline.min.js │ ├── switchery │ │ └── switchery.min.js │ ├── tags │ │ └── jquery.tagsinput.min.js │ ├── textarea │ │ └── autosize.min.js │ ├── validator │ │ └── validator.js │ └── wizard │ │ └── jquery.smartWizard.js │ ├── layout.tpl │ ├── less │ └── custom.css │ ├── login.tpl │ ├── notifications.tpl │ └── settings.tpl └── templates_c └── .htaccess /.htaccess: -------------------------------------------------------------------------------- 1 | Require all denied 2 | -------------------------------------------------------------------------------- /app/.htaccess: -------------------------------------------------------------------------------- 1 | Require all granted 2 | 3 | RewriteEngine On 4 | 5 | # Serve gzip compressed CSS files if they exist 6 | # and the client accepts gzip. 7 | RewriteCond "%{HTTP:Accept-encoding}" "gzip" 8 | RewriteCond "%{REQUEST_FILENAME}\.gz" -s 9 | RewriteRule "^(.*)\.css" "$1\.css\.gz" [QSA] 10 | 11 | # Serve gzip compressed JS files if they exist 12 | # and the client accepts gzip. 13 | RewriteCond "%{HTTP:Accept-encoding}" "gzip" 14 | RewriteCond "%{REQUEST_FILENAME}\.gz" -s 15 | RewriteRule "^(.*)\.js" "$1\.js\.gz" [QSA] 16 | 17 | 18 | # Serve correct content types, and prevent mod_deflate double gzip. 19 | RewriteRule "\.css\.gz$" "-" [T=text/css,E=no-gzip:1] 20 | RewriteRule "\.js\.gz$" "-" [T=text/javascript,E=no-gzip:1] 21 | 22 | 23 | 24 | # Serve correct encoding type. 25 | Header append Content-Encoding gzip 26 | 27 | # Force proxies to cache gzipped & 28 | # non-gzipped css/js files separately. 29 | Header append Vary Accept-Encoding 30 | 31 | 32 | RewriteCond %{REQUEST_URI} !\.(jpg|png|bmp|gif|css|js|map|ttf|woff|woff2|svg|eot|gz)$ 33 | RewriteRule ^(.*)$ controller.php?page=$1 [NC,L,QSA] 34 | RewriteCond %{REQUEST_FILENAME} !-f 35 | RewriteCond %{REQUEST_FILENAME} !-f 36 | RewriteRule ^(.*)$ controller.php?page=error&rewritten=1&missing=$1 [NC,L,QSA] 37 | -------------------------------------------------------------------------------- /app/cache/.htaccess: -------------------------------------------------------------------------------- 1 | Require all denied 2 | -------------------------------------------------------------------------------- /app/config.inc.php: -------------------------------------------------------------------------------- 1 | force_compile = SMARTY_FORCE_COMPILE; 13 | $smarty->debugging = SMARTY_DEBUGGING; 14 | $smarty->caching = SMARTY_CACHING; 15 | $smarty->cache_lifetime = SMARTY_CACHE_LIFETIME; 16 | $smarty->setTemplateDir(SMARTY_DIR_TEMPLATES) 17 | ->setCompileDir(SMARTY_DIR_TEMPLATES_C) 18 | ->setCacheDir(SMARTY_DIR_CACHE) 19 | ->assign('NAME', APP_NAME) 20 | ->assign('ROOT', APP_ROOT); -------------------------------------------------------------------------------- /app/lib/qrdata.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/lib/qrdata.db -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifier.regex_replace.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: regex_replace 13 | * Purpose: regular expression search/replace 14 | * 15 | * @link http://smarty.php.net/manual/en/language.modifier.regex.replace.php 16 | * regex_replace (Smarty online manual) 17 | * @author Monte Ohrt 18 | * 19 | * @param string $string input string 20 | * @param string|array $search regular expression(s) to search for 21 | * @param string|array $replace string(s) that should be replaced 22 | * @param int $limit the maximum number of replacements 23 | * 24 | * @return string 25 | */ 26 | function smarty_modifier_regex_replace($string, $search, $replace, $limit = - 1) 27 | { 28 | if (is_array($search)) { 29 | foreach ($search as $idx => $s) { 30 | $search[ $idx ] = _smarty_regex_replace_check($s); 31 | } 32 | } else { 33 | $search = _smarty_regex_replace_check($search); 34 | } 35 | 36 | return preg_replace($search, $replace, $string, $limit); 37 | } 38 | 39 | /** 40 | * @param string $search string(s) that should be replaced 41 | * 42 | * @return string 43 | * @ignore 44 | */ 45 | function _smarty_regex_replace_check($search) 46 | { 47 | // null-byte injection detection 48 | // anything behind the first null-byte is ignored 49 | if (($pos = strpos($search, "\0")) !== false) { 50 | $search = substr($search, 0, $pos); 51 | } 52 | // remove eval-modifier from $search 53 | if (preg_match('!([a-zA-Z\s]+)$!s', $search, $match) && (strpos($match[ 1 ], 'e') !== false)) { 54 | $search = substr($search, 0, - strlen($match[ 1 ])) . preg_replace('![e\s]+!', '', $match[ 1 ]); 55 | } 56 | 57 | return $search; 58 | } 59 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifier.replace.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: replace 13 | * Purpose: simple search/replace 14 | * 15 | * @link http://smarty.php.net/manual/en/language.modifier.replace.php replace (Smarty online manual) 16 | * @author Monte Ohrt 17 | * @author Uwe Tews 18 | * 19 | * @param string $string input string 20 | * @param string $search text to search for 21 | * @param string $replace replacement text 22 | * 23 | * @return string 24 | */ 25 | function smarty_modifier_replace($string, $search, $replace) 26 | { 27 | if (Smarty::$_MBSTRING) { 28 | require_once(SMARTY_PLUGINS_DIR . 'shared.mb_str_replace.php'); 29 | 30 | return smarty_mb_str_replace($search, $replace, $string); 31 | } 32 | 33 | return str_replace($search, $replace, $string); 34 | } 35 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifier.spacify.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: spacify 13 | * Purpose: add spaces between characters in a string 14 | * 15 | * @link http://smarty.php.net/manual/en/language.modifier.spacify.php spacify (Smarty online manual) 16 | * @author Monte Ohrt 17 | * 18 | * @param string $string input string 19 | * @param string $spacify_char string to insert between characters. 20 | * 21 | * @return string 22 | */ 23 | function smarty_modifier_spacify($string, $spacify_char = ' ') 24 | { 25 | // well… what about charsets besides latin and UTF-8? 26 | return implode($spacify_char, preg_split('//' . Smarty::$_UTF8_MODIFIER, $string, - 1, PREG_SPLIT_NO_EMPTY)); 27 | } 28 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.cat.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: cat 13 | * Date: Feb 24, 2003 14 | * Purpose: catenate a value to a variable 15 | * Input: string to catenate 16 | * Example: {$var|cat:"foo"} 17 | * 18 | * @link http://smarty.php.net/manual/en/language.modifier.cat.php cat 19 | * (Smarty online manual) 20 | * @author Uwe Tews 21 | * 22 | * @param array $params parameters 23 | * 24 | * @return string with compiled code 25 | */ 26 | function smarty_modifiercompiler_cat($params) 27 | { 28 | return '(' . implode(').(', $params) . ')'; 29 | } 30 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.count_characters.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: count_characteres 13 | * Purpose: count the number of characters in a text 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.count.characters.php count_characters (Smarty online manual) 16 | * @author Uwe Tews 17 | * 18 | * @param array $params parameters 19 | * 20 | * @return string with compiled code 21 | */ 22 | function smarty_modifiercompiler_count_characters($params) 23 | { 24 | if (!isset($params[ 1 ]) || $params[ 1 ] != 'true') { 25 | return 'preg_match_all(\'/[^\s]/' . Smarty::$_UTF8_MODIFIER . '\',' . $params[ 0 ] . ', $tmp)'; 26 | } 27 | if (Smarty::$_MBSTRING) { 28 | return 'mb_strlen(' . $params[ 0 ] . ', \'' . addslashes(Smarty::$_CHARSET) . '\')'; 29 | } 30 | // no MBString fallback 31 | return 'strlen(' . $params[ 0 ] . ')'; 32 | } 33 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.count_paragraphs.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: count_paragraphs 13 | * Purpose: count the number of paragraphs in a text 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.count.paragraphs.php 16 | * count_paragraphs (Smarty online manual) 17 | * @author Uwe Tews 18 | * 19 | * @param array $params parameters 20 | * 21 | * @return string with compiled code 22 | */ 23 | function smarty_modifiercompiler_count_paragraphs($params) 24 | { 25 | // count \r or \n characters 26 | return '(preg_match_all(\'#[\r\n]+#\', ' . $params[ 0 ] . ', $tmp)+1)'; 27 | } 28 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.count_sentences.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: count_sentences 13 | * Purpose: count the number of sentences in a text 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.count.paragraphs.php 16 | * count_sentences (Smarty online manual) 17 | * @author Uwe Tews 18 | * 19 | * @param array $params parameters 20 | * 21 | * @return string with compiled code 22 | */ 23 | function smarty_modifiercompiler_count_sentences($params) 24 | { 25 | // find periods, question marks, exclamation marks with a word before but not after. 26 | return 'preg_match_all("#\w[\.\?\!](\W|$)#S' . Smarty::$_UTF8_MODIFIER . '", ' . $params[ 0 ] . ', $tmp)'; 27 | } 28 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.count_words.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: count_words 13 | * Purpose: count the number of words in a text 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.count.words.php count_words (Smarty online manual) 16 | * @author Uwe Tews 17 | * 18 | * @param array $params parameters 19 | * 20 | * @return string with compiled code 21 | */ 22 | function smarty_modifiercompiler_count_words($params) 23 | { 24 | if (Smarty::$_MBSTRING) { 25 | // return 'preg_match_all(\'#[\w\pL]+#' . Smarty::$_UTF8_MODIFIER . '\', ' . $params[0] . ', $tmp)'; 26 | // expression taken from http://de.php.net/manual/en/function.str-word-count.php#85592 27 | return 'preg_match_all(\'/\p{L}[\p{L}\p{Mn}\p{Pd}\\\'\x{2019}]*/' . Smarty::$_UTF8_MODIFIER . '\', ' . 28 | $params[ 0 ] . ', $tmp)'; 29 | } 30 | // no MBString fallback 31 | return 'str_word_count(' . $params[ 0 ] . ')'; 32 | } 33 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.default.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: default 13 | * Purpose: designate default value for empty variables 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.default.php default (Smarty online manual) 16 | * @author Uwe Tews 17 | * 18 | * @param array $params parameters 19 | * 20 | * @return string with compiled code 21 | */ 22 | function smarty_modifiercompiler_default($params) 23 | { 24 | $output = $params[ 0 ]; 25 | if (!isset($params[ 1 ])) { 26 | $params[ 1 ] = "''"; 27 | } 28 | 29 | array_shift($params); 30 | foreach ($params as $param) { 31 | $output = '(($tmp = @' . $output . ')===null||$tmp===\'\' ? ' . $param . ' : $tmp)'; 32 | } 33 | 34 | return $output; 35 | } 36 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.from_charset.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: from_charset 13 | * Purpose: convert character encoding from $charset to internal encoding 14 | * 15 | * @author Rodney Rehm 16 | * 17 | * @param array $params parameters 18 | * 19 | * @return string with compiled code 20 | */ 21 | function smarty_modifiercompiler_from_charset($params) 22 | { 23 | if (!Smarty::$_MBSTRING) { 24 | // FIXME: (rodneyrehm) shouldn't this throw an error? 25 | return $params[ 0 ]; 26 | } 27 | 28 | if (!isset($params[ 1 ])) { 29 | $params[ 1 ] = '"ISO-8859-1"'; 30 | } 31 | 32 | return 'mb_convert_encoding(' . $params[ 0 ] . ', "' . addslashes(Smarty::$_CHARSET) . '", ' . $params[ 1 ] . ')'; 33 | } 34 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.indent.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: indent 13 | * Purpose: indent lines of text 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.indent.php indent (Smarty online manual) 16 | * @author Uwe Tews 17 | * 18 | * @param array $params parameters 19 | * 20 | * @return string with compiled code 21 | */ 22 | 23 | function smarty_modifiercompiler_indent($params) 24 | { 25 | if (!isset($params[ 1 ])) { 26 | $params[ 1 ] = 4; 27 | } 28 | if (!isset($params[ 2 ])) { 29 | $params[ 2 ] = "' '"; 30 | } 31 | 32 | return 'preg_replace(\'!^!m\',str_repeat(' . $params[ 2 ] . ',' . $params[ 1 ] . '),' . $params[ 0 ] . ')'; 33 | } 34 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.lower.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: lower 13 | * Purpose: convert string to lowercase 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.lower.php lower (Smarty online manual) 16 | * @author Monte Ohrt 17 | * @author Uwe Tews 18 | * 19 | * @param array $params parameters 20 | * 21 | * @return string with compiled code 22 | */ 23 | 24 | function smarty_modifiercompiler_lower($params) 25 | { 26 | if (Smarty::$_MBSTRING) { 27 | return 'mb_strtolower(' . $params[ 0 ] . ', \'' . addslashes(Smarty::$_CHARSET) . '\')'; 28 | } 29 | // no MBString fallback 30 | return 'strtolower(' . $params[ 0 ] . ')'; 31 | } 32 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.noprint.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: noprint 13 | * Purpose: return an empty string 14 | * 15 | * @author Uwe Tews 16 | * @return string with compiled code 17 | */ 18 | function smarty_modifiercompiler_noprint() 19 | { 20 | return "''"; 21 | } 22 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.string_format.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: string_format 13 | * Purpose: format strings via sprintf 14 | * 15 | * @link http://www.smarty.net/manual/en/language.modifier.string.format.php string_format (Smarty online manual) 16 | * @author Uwe Tews 17 | * 18 | * @param array $params parameters 19 | * 20 | * @return string with compiled code 21 | */ 22 | function smarty_modifiercompiler_string_format($params) 23 | { 24 | return 'sprintf(' . $params[ 1 ] . ',' . $params[ 0 ] . ')'; 25 | } 26 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.strip.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: strip 13 | * Purpose: Replace all repeated spaces, newlines, tabs 14 | * with a single space or supplied replacement string. 15 | * Example: {$var|strip} {$var|strip:" "} 16 | * Date: September 25th, 2002 17 | * 18 | * @link http://www.smarty.net/manual/en/language.modifier.strip.php strip (Smarty online manual) 19 | * @author Uwe Tews 20 | * 21 | * @param array $params parameters 22 | * 23 | * @return string with compiled code 24 | */ 25 | 26 | function smarty_modifiercompiler_strip($params) 27 | { 28 | if (!isset($params[ 1 ])) { 29 | $params[ 1 ] = "' '"; 30 | } 31 | 32 | return "preg_replace('!\s+!" . Smarty::$_UTF8_MODIFIER . "', {$params[1]},{$params[0]})"; 33 | } 34 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.strip_tags.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: strip_tags 13 | * Purpose: strip html tags from text 14 | * 15 | * @link http://www.smarty.net/docs/en/language.modifier.strip.tags.tpl strip_tags (Smarty online manual) 16 | * @author Uwe Tews 17 | * 18 | * @param array $params parameters 19 | * 20 | * @return string with compiled code 21 | */ 22 | function smarty_modifiercompiler_strip_tags($params) 23 | { 24 | if (!isset($params[ 1 ]) || $params[ 1 ] === true || trim($params[ 1 ], '"') == 'true') { 25 | return "preg_replace('!<[^>]*?>!', ' ', {$params[0]})"; 26 | } else { 27 | return 'strip_tags(' . $params[ 0 ] . ')'; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.to_charset.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: to_charset 13 | * Purpose: convert character encoding from internal encoding to $charset 14 | * 15 | * @author Rodney Rehm 16 | * 17 | * @param array $params parameters 18 | * 19 | * @return string with compiled code 20 | */ 21 | function smarty_modifiercompiler_to_charset($params) 22 | { 23 | if (!Smarty::$_MBSTRING) { 24 | // FIXME: (rodneyrehm) shouldn't this throw an error? 25 | return $params[ 0 ]; 26 | } 27 | 28 | if (!isset($params[ 1 ])) { 29 | $params[ 1 ] = '"ISO-8859-1"'; 30 | } 31 | 32 | return 'mb_convert_encoding(' . $params[ 0 ] . ', ' . $params[ 1 ] . ', "' . addslashes(Smarty::$_CHARSET) . '")'; 33 | } 34 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.unescape.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: unescape 13 | * Purpose: unescape html entities 14 | * 15 | * @author Rodney Rehm 16 | * 17 | * @param array $params parameters 18 | * 19 | * @return string with compiled code 20 | */ 21 | function smarty_modifiercompiler_unescape($params) 22 | { 23 | if (!isset($params[ 1 ])) { 24 | $params[ 1 ] = 'html'; 25 | } 26 | if (!isset($params[ 2 ])) { 27 | $params[ 2 ] = '\'' . addslashes(Smarty::$_CHARSET) . '\''; 28 | } else { 29 | $params[ 2 ] = "'" . $params[ 2 ] . "'"; 30 | } 31 | 32 | switch (trim($params[ 1 ], '"\'')) { 33 | case 'entity': 34 | case 'htmlall': 35 | if (Smarty::$_MBSTRING) { 36 | return 'mb_convert_encoding(' . $params[ 0 ] . ', ' . $params[ 2 ] . ', \'HTML-ENTITIES\')'; 37 | } 38 | 39 | return 'html_entity_decode(' . $params[ 0 ] . ', ENT_NOQUOTES, ' . $params[ 2 ] . ')'; 40 | 41 | case 'html': 42 | return 'htmlspecialchars_decode(' . $params[ 0 ] . ', ENT_QUOTES)'; 43 | 44 | case 'url': 45 | return 'rawurldecode(' . $params[ 0 ] . ')'; 46 | 47 | default: 48 | return $params[ 0 ]; 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.upper.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: lower 13 | * Purpose: convert string to uppercase 14 | * 15 | * @link http://smarty.php.net/manual/en/language.modifier.upper.php lower (Smarty online manual) 16 | * @author Uwe Tews 17 | * 18 | * @param array $params parameters 19 | * 20 | * @return string with compiled code 21 | */ 22 | function smarty_modifiercompiler_upper($params) 23 | { 24 | if (Smarty::$_MBSTRING) { 25 | return 'mb_strtoupper(' . $params[ 0 ] . ', \'' . addslashes(Smarty::$_CHARSET) . '\')'; 26 | } 27 | // no MBString fallback 28 | return 'strtoupper(' . $params[ 0 ] . ')'; 29 | } 30 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/modifiercompiler.wordwrap.php: -------------------------------------------------------------------------------- 1 | 12 | * Name: wordwrap 13 | * Purpose: wrap a string of text at a given length 14 | * 15 | * @link http://smarty.php.net/manual/en/language.modifier.wordwrap.php wordwrap (Smarty online manual) 16 | * @author Uwe Tews 17 | * 18 | * @param array $params parameters 19 | * @param $compiler 20 | * 21 | * @return string with compiled code 22 | */ 23 | function smarty_modifiercompiler_wordwrap($params, $compiler) 24 | { 25 | if (!isset($params[ 1 ])) { 26 | $params[ 1 ] = 80; 27 | } 28 | if (!isset($params[ 2 ])) { 29 | $params[ 2 ] = '"\n"'; 30 | } 31 | if (!isset($params[ 3 ])) { 32 | $params[ 3 ] = 'false'; 33 | } 34 | $function = 'wordwrap'; 35 | if (Smarty::$_MBSTRING) { 36 | if ($compiler->template->caching && ($compiler->tag_nocache | $compiler->nocache)) { 37 | $compiler->parent_compiler->template->compiled->required_plugins[ 'nocache' ][ 'wordwrap' ][ 'modifier' ][ 'file' ] = 38 | SMARTY_PLUGINS_DIR . 'shared.mb_wordwrap.php'; 39 | $compiler->template->required_plugins[ 'nocache' ][ 'wordwrap' ][ 'modifier' ][ 'function' ] = 40 | 'smarty_mb_wordwrap'; 41 | } else { 42 | $compiler->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ 'wordwrap' ][ 'modifier' ][ 'file' ] = 43 | SMARTY_PLUGINS_DIR . 'shared.mb_wordwrap.php'; 44 | $compiler->parent_compiler->template->compiled->required_plugins[ 'compiled' ][ 'wordwrap' ][ 'modifier' ][ 'function' ] = 45 | 'smarty_mb_wordwrap'; 46 | } 47 | $function = 'smarty_mb_wordwrap'; 48 | } 49 | 50 | return $function . '(' . $params[ 0 ] . ',' . $params[ 1 ] . ',' . $params[ 2 ] . ',' . $params[ 3 ] . ')'; 51 | } 52 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/shared.escape_special_chars.php: -------------------------------------------------------------------------------- 1 | =')) { 10 | /** 11 | * escape_special_chars common function 12 | * Function: smarty_function_escape_special_chars 13 | * Purpose: used by other smarty functions to escape 14 | * special chars except for already escaped ones 15 | * 16 | * @author Monte Ohrt 17 | * 18 | * @param string $string text that should by escaped 19 | * 20 | * @return string 21 | */ 22 | function smarty_function_escape_special_chars($string) 23 | { 24 | if (!is_array($string)) { 25 | $string = htmlspecialchars($string, ENT_COMPAT, Smarty::$_CHARSET, false); 26 | } 27 | 28 | return $string; 29 | } 30 | } else { 31 | /** 32 | * escape_special_chars common function 33 | * Function: smarty_function_escape_special_chars 34 | * Purpose: used by other smarty functions to escape 35 | * special chars except for already escaped ones 36 | * 37 | * @author Monte Ohrt 38 | * 39 | * @param string $string text that should by escaped 40 | * 41 | * @return string 42 | */ 43 | function smarty_function_escape_special_chars($string) 44 | { 45 | if (!is_array($string)) { 46 | $string = preg_replace('!&(#?\w+);!', '%%%SMARTY_START%%%\\1%%%SMARTY_END%%%', $string); 47 | $string = htmlspecialchars($string); 48 | $string = str_replace(array('%%%SMARTY_START%%%', '%%%SMARTY_END%%%'), array('&', ';'), $string); 49 | } 50 | 51 | return $string; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/shared.literal_compiler_param.php: -------------------------------------------------------------------------------- 1 | 11 | * Purpose: used by other smarty functions to make a timestamp from a string. 12 | * 13 | * @author Monte Ohrt 14 | * 15 | * @param DateTime|int|string $string date object, timestamp or string that can be converted using strtotime() 16 | * 17 | * @return int 18 | */ 19 | function smarty_make_timestamp($string) 20 | { 21 | if (empty($string)) { 22 | // use "now": 23 | return time(); 24 | } elseif ($string instanceof DateTime || 25 | (interface_exists('DateTimeInterface', false) && $string instanceof DateTimeInterface) 26 | ) { 27 | return (int) $string->format('U'); // PHP 5.2 BC 28 | } elseif (strlen($string) == 14 && ctype_digit($string)) { 29 | // it is mysql timestamp format of YYYYMMDDHHMMSS? 30 | return mktime(substr($string, 8, 2), substr($string, 10, 2), substr($string, 12, 2), substr($string, 4, 2), 31 | substr($string, 6, 2), substr($string, 0, 4)); 32 | } elseif (is_numeric($string)) { 33 | // it is a numeric string, we handle it as timestamp 34 | return (int) $string; 35 | } else { 36 | // strtotime should handle it 37 | $time = strtotime($string); 38 | if ($time == - 1 || $time === false) { 39 | // strtotime() was not able to parse $string, use "now": 40 | return time(); 41 | } 42 | 43 | return $time; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /app/lib/smarty/plugins/shared.mb_str_replace.php: -------------------------------------------------------------------------------- 1 | dataObjectName = 'Data_object ' . (isset($name) ? "'{$name}'" : self::$count); 55 | $this->smarty = $smarty; 56 | if (is_object($_parent)) { 57 | // when object set up back pointer 58 | $this->parent = $_parent; 59 | } elseif (is_array($_parent)) { 60 | // set up variable values 61 | foreach ($_parent as $_key => $_val) { 62 | $this->tpl_vars[ $_key ] = new Smarty_Variable($_val); 63 | } 64 | } elseif ($_parent != null) { 65 | throw new SmartyException("Wrong type for template variables"); 66 | } 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_compile_append.php: -------------------------------------------------------------------------------- 1 | required_attributes = array('var', 'value'); 32 | $this->shorttag_order = array('var', 'value'); 33 | $this->optional_attributes = array('scope', 'index'); 34 | $this->mapCache = array(); 35 | // check and get attributes 36 | $_attr = $this->getAttributes($compiler, $args); 37 | // map to compile assign attributes 38 | if (isset($_attr[ 'index' ])) { 39 | $_params[ 'smarty_internal_index' ] = '[' . $_attr[ 'index' ] . ']'; 40 | unset($_attr[ 'index' ]); 41 | } else { 42 | $_params[ 'smarty_internal_index' ] = '[]'; 43 | } 44 | $_new_attr = array(); 45 | foreach ($_attr as $key => $value) { 46 | $_new_attr[] = array($key => $value); 47 | } 48 | // call compile assign 49 | return parent::compile($_new_attr, $compiler, $_params); 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_compile_debug.php: -------------------------------------------------------------------------------- 1 | getAttributes($compiler, $args); 32 | 33 | // compile always as nocache 34 | $compiler->tag_nocache = true; 35 | 36 | // display debug template 37 | $_output = 38 | "display_debug(\$_smarty_tpl);\n"; 39 | $_output .= "unset(\$_smarty_debug);\n?>"; 40 | return $_output; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_compile_ldelim.php: -------------------------------------------------------------------------------- 1 | getAttributes($compiler, $args); 32 | if ($_attr[ 'nocache' ] === true) { 33 | $compiler->trigger_template_error('nocache option not allowed', null, true); 34 | } 35 | // this tag does not return compiled code 36 | $compiler->has_code = true; 37 | 38 | return $compiler->smarty->left_delimiter; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_compile_make_nocache.php: -------------------------------------------------------------------------------- 1 | getAttributes($compiler, $args); 55 | if ($compiler->template->caching) { 56 | $output = "smarty->ext->_make_nocache->save(\$_smarty_tpl, {$_attr[ 'var' ]});\n?>\n"; 57 | $compiler->has_code = true; 58 | $compiler->suppressNocacheProcessing = true; 59 | return $output; 60 | } else { 61 | return true; 62 | } 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_compile_private_object_block_function.php: -------------------------------------------------------------------------------- 1 | $_value) { 33 | if (is_int($_key)) { 34 | $_paramsArray[] = "$_key=>$_value"; 35 | } else { 36 | $_paramsArray[] = "'$_key'=>$_value"; 37 | } 38 | } 39 | $callback = array("\$_smarty_tpl->smarty->registered_objects['{$tag}'][0]", "->{$method}"); 40 | return array($callback, $_paramsArray, "array(\$_block_plugin{$this->nesting}, '{$method}')"); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_compile_rdelim.php: -------------------------------------------------------------------------------- 1 | getAttributes($compiler, $args); 32 | if ($_attr[ 'nocache' ] === true) { 33 | $compiler->trigger_template_error('nocache option not allowed', null, true); 34 | } 35 | // this tag does not return compiled code 36 | $compiler->has_code = true; 37 | 38 | return $compiler->smarty->right_delimiter; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_compile_shared_inheritance.php: -------------------------------------------------------------------------------- 1 | _cache[ 'inheritanceInit' ])) { 28 | $compiler->registerPostCompileCallback(array('Smarty_Internal_Compile_Shared_Inheritance', 'postCompile'), 29 | array($initChildSequence), 'inheritanceInit', $initChildSequence); 30 | 31 | $compiler->_cache[ 'inheritanceInit' ] = true; 32 | } 33 | } 34 | 35 | /** 36 | * Compile inheritance initialization code as prefix 37 | * 38 | * @param \Smarty_Internal_TemplateCompilerBase $compiler 39 | * @param bool|false $initChildSequence if true force child template 40 | */ 41 | static function postCompile(Smarty_Internal_TemplateCompilerBase $compiler, $initChildSequence = false) 42 | { 43 | $compiler->prefixCompiledCode .= "ext->_inheritance->init(\$_smarty_tpl, " . 44 | var_export($initChildSequence, true) . ");\n?>\n"; 45 | } 46 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_adddefaultmodifiers.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 35 | if (is_array($modifiers)) { 36 | $smarty->default_modifiers = array_merge($smarty->default_modifiers, $modifiers); 37 | } else { 38 | $smarty->default_modifiers[] = $modifiers; 39 | } 40 | return $obj; 41 | } 42 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_appendbyref.php: -------------------------------------------------------------------------------- 1 | tpl_vars[ $tpl_var ])) { 32 | $data->tpl_vars[ $tpl_var ] = new Smarty_Variable(); 33 | } 34 | if (!is_array($data->tpl_vars[ $tpl_var ]->value)) { 35 | settype($data->tpl_vars[ $tpl_var ]->value, 'array'); 36 | } 37 | if ($merge && is_array($value)) { 38 | foreach ($value as $_key => $_val) { 39 | $data->tpl_vars[ $tpl_var ]->value[ $_key ] = &$value[ $_key ]; 40 | } 41 | } else { 42 | $data->tpl_vars[ $tpl_var ]->value[] = &$value; 43 | } 44 | if ($data->_objType == 2 && $data->scope) { 45 | $data->ext->_updateScope->_updateScope($data, $tpl_var); 46 | } 47 | } 48 | return $data; 49 | } 50 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_assignbyref.php: -------------------------------------------------------------------------------- 1 | tpl_vars[ $tpl_var ] = new Smarty_Variable(null, $nocache); 29 | $data->tpl_vars[ $tpl_var ]->value = &$value; 30 | if ($data->_objType == 2 && $data->scope) { 31 | $data->ext->_updateScope->_updateScope($data, $tpl_var); 32 | } 33 | } 34 | return $data; 35 | } 36 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_assignglobal.php: -------------------------------------------------------------------------------- 1 | _objType == 2) { 37 | $ptr->tpl_vars[ $varName ] = clone Smarty::$global_tpl_vars[ $varName ]; 38 | $ptr = $ptr->parent; 39 | } 40 | } 41 | return $data; 42 | } 43 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_clearallassign.php: -------------------------------------------------------------------------------- 1 | tpl_vars = array(); 34 | 35 | return $data; 36 | } 37 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_clearallcache.php: -------------------------------------------------------------------------------- 1 | _clearTemplateCache(); 36 | // load cache resource and call clearAll 37 | $_cache_resource = Smarty_CacheResource::load($smarty, $type); 38 | return $_cache_resource->clearAll($smarty, $exp_time); 39 | } 40 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_clearassign.php: -------------------------------------------------------------------------------- 1 | tpl_vars[ $curr_var ]); 37 | } 38 | } else { 39 | unset($data->tpl_vars[ $tpl_var ]); 40 | } 41 | 42 | return $data; 43 | } 44 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_clearcache.php: -------------------------------------------------------------------------------- 1 | _clearTemplateCache(); 40 | // load cache resource and call clear 41 | $_cache_resource = Smarty_CacheResource::load($smarty, $type); 42 | return $_cache_resource->clear($smarty, $template_name, $cache_id, $compile_id, $exp_time); 43 | } 44 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_clearconfig.php: -------------------------------------------------------------------------------- 1 | config_vars[ $name ]); 36 | } else { 37 | $data->config_vars = array(); 38 | } 39 | return $data; 40 | } 41 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_compileallconfig.php: -------------------------------------------------------------------------------- 1 | compileAll($smarty, $extension, $force_compile, $time_limit, $max_errors, true); 32 | } 33 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_createdata.php: -------------------------------------------------------------------------------- 1 | smarty) ? $this->smarty : $obj; 38 | $dataObj = new Smarty_Data($parent, $smarty, $name); 39 | if ($smarty->debugging) { 40 | Smarty_Internal_Debug::register_data($dataObj); 41 | } 42 | return $dataObj; 43 | } 44 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_getautoloadfilters.php: -------------------------------------------------------------------------------- 1 | array( 'filter1', 'filter2', … ) ) or array( 'filter1', 'filter2', …) if $type 26 | * was specified 27 | */ 28 | public function getAutoloadFilters(Smarty_Internal_TemplateBase $obj, $type = null) 29 | { 30 | $smarty = isset($obj->smarty) ? $obj->smarty : $obj; 31 | if ($type !== null) { 32 | $this->_checkFilterType($type); 33 | return isset($smarty->autoload_filters[ $type ]) ? $smarty->autoload_filters[ $type ] : array(); 34 | } 35 | return $smarty->autoload_filters; 36 | } 37 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_getconfigvars.php: -------------------------------------------------------------------------------- 1 | config_vars[ $varname ])) { 40 | return $_ptr->config_vars[ $varname ]; 41 | } 42 | } else { 43 | $var_array = array_merge($_ptr->config_vars, $var_array); 44 | } 45 | // not found, try at parent 46 | if ($search_parents) { 47 | $_ptr = $_ptr->parent; 48 | } else { 49 | $_ptr = null; 50 | } 51 | } 52 | if (isset($varname)) { 53 | return ''; 54 | } else { 55 | return $var_array; 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_getdebugtemplate.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 33 | return $smarty->debug_tpl; 34 | } 35 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_getdefaultmodifiers.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 33 | return $smarty->default_modifiers; 34 | } 35 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_getglobal.php: -------------------------------------------------------------------------------- 1 | value; 36 | } else { 37 | return ''; 38 | } 39 | } else { 40 | $_result = array(); 41 | foreach (Smarty::$global_tpl_vars AS $key => $var) { 42 | $_result[ $key ] = $var->value; 43 | } 44 | return $_result; 45 | } 46 | } 47 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_getregisteredobject.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 36 | if (!isset($smarty->registered_objects[ $object_name ])) { 37 | throw new SmartyException("'$object_name' is not a registered object"); 38 | } 39 | if (!is_object($smarty->registered_objects[ $object_name ][ 0 ])) { 40 | throw new SmartyException("registered '$object_name' is not an object"); 41 | } 42 | return $smarty->registered_objects[ $object_name ][ 0 ]; 43 | } 44 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_getstreamvariable.php: -------------------------------------------------------------------------------- 1 | smarty) ? $data->smarty : $data; 45 | if ($smarty->error_unassigned) { 46 | throw new SmartyException('Undefined stream variable "' . $variable . '"'); 47 | } else { 48 | return null; 49 | } 50 | } 51 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_mustcompile.php: -------------------------------------------------------------------------------- 1 | source->exists) { 34 | if (isset($_template->parent) && $_template->parent->_objType == 2) { 35 | $parent_resource = " in '$_template->parent->template_resource}'"; 36 | } else { 37 | $parent_resource = ''; 38 | } 39 | throw new SmartyException("Unable to load template {$_template->source->type} '{$_template->source->name}'{$parent_resource}"); 40 | } 41 | if ($_template->mustCompile === null) { 42 | $_template->mustCompile = (!$_template->source->handler->uncompiled && 43 | ($_template->smarty->force_compile || $_template->source->handler->recompiled || 44 | !$_template->compiled->exists || ($_template->smarty->compile_check && 45 | $_template->compiled->getTimeStamp() < 46 | $_template->source->getTimeStamp()))); 47 | } 48 | 49 | return $_template->mustCompile; 50 | } 51 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_registercacheresource.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 37 | $smarty->registered_cache_resources[ $name ] = $resource_handler; 38 | return $obj; 39 | } 40 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_registerclass.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 38 | // test if exists 39 | if (!class_exists($class_impl)) { 40 | throw new SmartyException("Undefined class '$class_impl' in register template class"); 41 | } 42 | // register the class 43 | $smarty->registered_classes[ $class_name ] = $class_impl; 44 | return $obj; 45 | } 46 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_registerdefaultconfighandler.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 35 | if (is_callable($callback)) { 36 | $smarty->default_config_handler_func = $callback; 37 | } else { 38 | throw new SmartyException("Default config handler not callable"); 39 | } 40 | return $obj; 41 | } 42 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_registerdefaultpluginhandler.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 36 | if (is_callable($callback)) { 37 | $smarty->default_plugin_handler_func = $callback; 38 | } else { 39 | throw new SmartyException("Default plugin handler '$callback' not callable"); 40 | } 41 | return $obj; 42 | } 43 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_registerresource.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 40 | $smarty->registered_resources[ $name ] = 41 | $resource_handler instanceof Smarty_Resource ? $resource_handler : array($resource_handler, false); 42 | return $obj; 43 | } 44 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_setdebugtemplate.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 35 | if (!is_readable($tpl_name)) { 36 | throw new SmartyException("Unknown file '{$tpl_name}'"); 37 | } 38 | $smarty->debug_tpl = $tpl_name; 39 | return $obj; 40 | } 41 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_setdefaultmodifiers.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 35 | $smarty->default_modifiers = (array) $modifiers; 36 | return $obj; 37 | } 38 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_unloadfilter.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 30 | $this->_checkFilterType($type); 31 | if (isset($smarty->registered_filters[ $type ])) { 32 | $_filter_name = "smarty_{$type}filter_{$name}"; 33 | if (isset($smarty->registered_filters[ $type ][ $_filter_name ])) { 34 | unset ($smarty->registered_filters[ $type ][ $_filter_name ]); 35 | if (empty($smarty->registered_filters[ $type ])) { 36 | unset($smarty->registered_filters[ $type ]); 37 | } 38 | } 39 | } 40 | return $obj; 41 | } 42 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_unregistercacheresource.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 35 | if (isset($smarty->registered_cache_resources[ $name ])) { 36 | unset($smarty->registered_cache_resources[ $name ]); 37 | } 38 | return $obj; 39 | } 40 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_unregisterfilter.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 30 | $this->_checkFilterType($type); 31 | if (isset($smarty->registered_filters[ $type ])) { 32 | $name = is_string($callback) ? $callback : $this->_getFilterName($callback); 33 | if (isset($smarty->registered_filters[ $type ][ $name ])) { 34 | unset($smarty->registered_filters[ $type ][ $name ]); 35 | if (empty($smarty->registered_filters[ $type ])) { 36 | unset($smarty->registered_filters[ $type ]); 37 | } 38 | } 39 | } 40 | return $obj; 41 | } 42 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_unregisterobject.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 35 | if (isset($smarty->registered_objects[ $object_name ])) { 36 | unset($smarty->registered_objects[ $object_name ]); 37 | } 38 | return $obj; 39 | } 40 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_unregisterplugin.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 36 | if (isset($smarty->registered_plugins[ $type ][ $name ])) { 37 | unset($smarty->registered_plugins[ $type ][ $name ]); 38 | } 39 | return $obj; 40 | } 41 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_method_unregisterresource.php: -------------------------------------------------------------------------------- 1 | smarty) ? $obj->smarty : $obj; 35 | if (isset($smarty->registered_resources[ $type ])) { 36 | unset($smarty->registered_resources[ $type ]); 37 | } 38 | return $obj; 39 | } 40 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_nocache_insert.php: -------------------------------------------------------------------------------- 1 | assign('{$_assign}' , {$_function} (" . var_export($_attr, true) . 41 | ",\$_smarty_tpl), true);?>"; 42 | } else { 43 | $_output .= "echo {$_function}(" . var_export($_attr, true) . ",\$_smarty_tpl);?>"; 44 | } 45 | $_tpl = $_template; 46 | while (isset($_tpl->parent) && $_tpl->parent->_objType == 2) { 47 | $_tpl = $_tpl->parent; 48 | } 49 | 50 | return "/*%%SmartyNocache:{$_tpl->compiled->nocache_hash}%%*/" . $_output . 51 | "/*/%%SmartyNocache:{$_tpl->compiled->nocache_hash}%%*/"; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_parsetree.php: -------------------------------------------------------------------------------- 1 | data = null; 49 | $this->subtrees = null; 50 | } 51 | 52 | } 53 | 54 | 55 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_parsetree_code.php: -------------------------------------------------------------------------------- 1 | data = $data; 29 | } 30 | 31 | /** 32 | * Return buffer content in parentheses 33 | * 34 | * @param \Smarty_Internal_Templateparser $parser 35 | * 36 | * @return string content 37 | */ 38 | public function to_smarty_php(Smarty_Internal_Templateparser $parser) 39 | { 40 | return sprintf("(%s)", $this->data); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_parsetree_dqcontent.php: -------------------------------------------------------------------------------- 1 | data = $data; 29 | } 30 | 31 | /** 32 | * Return content as double quoted string 33 | * 34 | * @param \Smarty_Internal_Templateparser $parser 35 | * 36 | * @return string doubled quoted string 37 | */ 38 | public function to_smarty_php(Smarty_Internal_Templateparser $parser) 39 | { 40 | return '"' . $this->data . '"'; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_parsetree_text.php: -------------------------------------------------------------------------------- 1 | data = $data; 27 | } 28 | 29 | /** 30 | * Return buffer content 31 | * 32 | * @param \Smarty_Internal_Templateparser $parser 33 | * 34 | * @return string text 35 | */ 36 | public function to_smarty_php(Smarty_Internal_Templateparser $parser) 37 | { 38 | return $this->data; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_internal_undefined.php: -------------------------------------------------------------------------------- 1 | cached->valid = false; 30 | } else { 31 | $tpl->mustCompile = true; 32 | } 33 | return false; 34 | } 35 | 36 | /** 37 | * Call error handler for undefined method 38 | * 39 | * @param string $name unknown method-name 40 | * @param array $args argument array 41 | * 42 | * @return mixed 43 | * @throws SmartyException 44 | */ 45 | public function __call($name, $args) 46 | { 47 | throw new SmartyException(get_class($args[ 0 ]) . "->{$name}() undefined method"); 48 | } 49 | } -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_resource_recompiled.php: -------------------------------------------------------------------------------- 1 | filepath = false; 44 | $compiled->timestamp = false; 45 | $compiled->exists = false; 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_resource_uncompiled.php: -------------------------------------------------------------------------------- 1 | filepath = $_template->source->filepath; 52 | $compiled->timestamp = $_template->source->timestamp; 53 | $compiled->exists = $_template->source->exists; 54 | $compiled->file_dependency[ $_template->source->uid ] = 55 | array($compiled->filepath, $compiled->timestamp, $_template->source->type,); 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smarty_undefined_variable.php: -------------------------------------------------------------------------------- 1 | value = $value; 35 | $this->nocache = $nocache; 36 | } 37 | 38 | /** 39 | * <> String conversion 40 | * 41 | * @return string 42 | */ 43 | public function __toString() 44 | { 45 | return (string) $this->value; 46 | } 47 | } 48 | 49 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smartycompilerexception.php: -------------------------------------------------------------------------------- 1 | Smarty Compiler: ' . $this->message . ' <-- '; 13 | } 14 | 15 | /** 16 | * The line number of the template error 17 | * 18 | * @type int|null 19 | */ 20 | public $line = null; 21 | 22 | /** 23 | * The template source snippet relating to the error 24 | * 25 | * @type string|null 26 | */ 27 | public $source = null; 28 | 29 | /** 30 | * The raw text of the error message 31 | * 32 | * @type string|null 33 | */ 34 | public $desc = null; 35 | 36 | /** 37 | * The resource identifier or template name 38 | * 39 | * @type string|null 40 | */ 41 | public $template = null; 42 | } 43 | -------------------------------------------------------------------------------- /app/lib/smarty/sysplugins/smartyexception.php: -------------------------------------------------------------------------------- 1 | Smarty: ' . (self::$escape ? htmlentities($this->message) : $this->message) . ' <-- '; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /app/model/.htaccess: -------------------------------------------------------------------------------- 1 | Require all denied 2 | -------------------------------------------------------------------------------- /app/model/app.php: -------------------------------------------------------------------------------- 1 | assign('THEME', APP_THEME) 13 | ->assign('SMARTY_TEMPLATES', SMARTY_DIR_TEMPLATES) 14 | ->assign('CSRF', $token, true) 15 | ->assign('ERROR', $error) 16 | ->assign('TITLE', 'Dashboard') 17 | ->assign('ADMIN', ($userinfo['acl'] > ACL_ADMIN_MAX || $userinfo['acl'] < ACL_ADMIN_MIN) ? false : true ) 18 | ->assign('USER', $userinfo) 19 | ->assign('NOTIFICATIONS', users::notifications($_SESSION['user'])) 20 | 21 | ->display(APP_THEME . '/app.tpl'); 22 | // redirect('authenticator?csrf=' . session::csrf()); 23 | 24 | } else { 25 | 26 | // this page requires the user to login 27 | redirect('login'); 28 | } -------------------------------------------------------------------------------- /app/model/error.php: -------------------------------------------------------------------------------- 1 | assign('THEME', APP_THEME) 12 | ->assign('SMARTY_TEMPLATES', SMARTY_DIR_TEMPLATES) 13 | ->assign('TITLE', $message) 14 | ->assign('CODE', $code) 15 | ->display(APP_THEME . '/error.tpl'); 16 | -------------------------------------------------------------------------------- /app/model/logout.php: -------------------------------------------------------------------------------- 1 | assign('THEME', APP_THEME) 13 | ->assign('SMARTY_TEMPLATES', SMARTY_DIR_TEMPLATES) 14 | ->assign('CSRF', $token, true) 15 | ->assign('ERROR', $error) 16 | ->assign('TITLE', 'Notifications') 17 | ->assign('USER', $userinfo) 18 | ->assign('ADMIN', ($userinfo['acl'] > ACL_ADMIN_MAX || $userinfo['acl'] < ACL_ADMIN_MIN) ? false : true ) 19 | ->assign('ALLNOTIFICATIONS', users::notifications($_SESSION['user'], true)) 20 | 21 | ->display(APP_THEME . '/notifications.tpl'); 22 | 23 | } else { 24 | 25 | // this page requires the user to login 26 | redirect('login'); 27 | } -------------------------------------------------------------------------------- /app/templates/gentelella/LICENSE.txt: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Aigars Silkalns & Colorlib 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /app/templates/gentelella/app.tpl: -------------------------------------------------------------------------------- 1 | {extends file="gentelella/layout.tpl"} 2 | {block name=right_col} 3 | 4 | 5 | 6 | 7 | {$TITLE} 8 | 9 | 10 | 11 | 12 | Welcome to the Dashboard. The template for this file is app.tpl 13 | 14 | 15 | 16 | 17 | 18 | {/block} 19 | -------------------------------------------------------------------------------- /app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/alpha-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/alpha-horizontal.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/alpha.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/alpha.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/hue-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/hue-horizontal.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/hue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/hue.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/saturation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/colorpicker/img/bootstrap-colorpicker/saturation.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/Sorting icons.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/Sorting icons.psd -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/back_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/back_disabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/back_enabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/back_enabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/back_enabled_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/back_enabled_hover.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/favicon.ico -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/forward_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/forward_disabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/forward_enabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/forward_enabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/forward_enabled_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/forward_enabled_hover.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/sort_asc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/sort_asc.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/sort_asc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/sort_asc_disabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/sort_both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/sort_both.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/sort_desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/sort_desc.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/datatables/images/sort_desc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/datatables/images/sort_desc_disabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/editor/external/google-code-prettify/prettify.css: -------------------------------------------------------------------------------- 1 | .pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} -------------------------------------------------------------------------------- /app/templates/gentelella/css/editor/index.css: -------------------------------------------------------------------------------- 1 | /* this CSS is not part of the widget, it is here just as an example of the demo page styling.... Don't copy this one, roll your own. One 2 | * of the key things about the widget is that it allows you to do your own styling! 3 | */ 4 | 5 | #editor { 6 | max-height: 250px; 7 | height: 250px; 8 | background-color: white; 9 | border-collapse: separate; 10 | border: 1px solid rgb(204, 204, 204); 11 | padding: 4px; 12 | box-sizing: content-box; 13 | -webkit-box-shadow: rgba(0, 0, 0, 0.0745098) 0px 1px 1px 0px inset; 14 | box-shadow: rgba(0, 0, 0, 0.0745098) 0px 1px 1px 0px inset; 15 | border-top-right-radius: 3px; border-bottom-right-radius: 3px; 16 | border-bottom-left-radius: 3px; border-top-left-radius: 3px; 17 | overflow: scroll; 18 | outline: none; 19 | } 20 | #voiceBtn { 21 | width: 20px; 22 | color: transparent; 23 | background-color: transparent; 24 | transform: scale(2.0, 2.0); 25 | -webkit-transform: scale(2.0, 2.0); 26 | -moz-transform: scale(2.0, 2.0); 27 | border: transparent; 28 | cursor: pointer; 29 | box-shadow: none; 30 | -webkit-box-shadow: none; 31 | } 32 | 33 | div[data-role="editor-toolbar"] { 34 | -webkit-user-select: none; 35 | -moz-user-select: none; 36 | -ms-user-select: none; 37 | user-select: none; 38 | } 39 | 40 | .dropdown-menu a { 41 | cursor: pointer; 42 | } 43 | -------------------------------------------------------------------------------- /app/templates/gentelella/css/floatexamples.css: -------------------------------------------------------------------------------- 1 | 2 | .demo-container { 3 | box-sizing: border-box; 4 | width: 100%; 5 | height: 350px; display: block; margin-bottom: 10px; 6 | } 7 | 8 | .demo-placeholder { 9 | width: 100%; 10 | height: 100%; 11 | font-size: 14px; 12 | line-height: 1.2em; 13 | } 14 | 15 | .legend table { 16 | border-spacing: 5px; 17 | } 18 | .pieLabel { 19 | border: 1px solid #CAC9C9; 20 | border-radius: 4px; 21 | padding: 1px 1px; 22 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/aero.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, aero 2 | ----------------------------------- */ 3 | .icheckbox_flat-aero, 4 | .iradio_flat-aero { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(aero.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-aero { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-aero.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-aero.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-aero.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-aero { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-aero.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-aero.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-aero.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-aero, 48 | .iradio_flat-aero { 49 | background-image: url(aero@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/aero.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/aero.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/aero@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/aero@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/blue.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, blue 2 | ----------------------------------- */ 3 | .icheckbox_flat-blue, 4 | .iradio_flat-blue { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(blue.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-blue { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-blue.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-blue.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-blue.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-blue { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-blue.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-blue.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-blue.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-blue, 48 | .iradio_flat-blue { 49 | background-image: url(blue@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/blue.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/blue@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/blue@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/flat.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin flat skin, black 2 | ----------------------------------- */ 3 | .icheckbox_flat, 4 | .iradio_flat { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(flat.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat, 48 | .iradio_flat { 49 | background-image: url(flat@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/flat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/flat.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/flat@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/flat@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/green.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, green 2 | ----------------------------------- */ 3 | .icheckbox_flat-green, 4 | .iradio_flat-green { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(green.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-green { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-green.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-green.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-green.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-green { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-green.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-green.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-green.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-green, 48 | .iradio_flat-green { 49 | background-image: url(green@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/green.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/green@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/green@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/grey.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, grey 2 | ----------------------------------- */ 3 | .icheckbox_flat-grey, 4 | .iradio_flat-grey { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(grey.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-grey { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-grey.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-grey.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-grey.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-grey { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-grey.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-grey.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-grey.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-grey, 48 | .iradio_flat-grey { 49 | background-image: url(grey@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/grey.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/grey@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/grey@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/orange.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, orange 2 | ----------------------------------- */ 3 | .icheckbox_flat-orange, 4 | .iradio_flat-orange { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(orange.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-orange { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-orange.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-orange.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-orange.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-orange { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-orange.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-orange.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-orange.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-orange, 48 | .iradio_flat-orange { 49 | background-image: url(orange@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/orange.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/orange.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/orange@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/orange@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/pink.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, pink 2 | ----------------------------------- */ 3 | .icheckbox_flat-pink, 4 | .iradio_flat-pink { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(pink.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-pink { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-pink.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-pink.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-pink.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-pink { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-pink.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-pink.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-pink.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-pink, 48 | .iradio_flat-pink { 49 | background-image: url(pink@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/pink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/pink.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/pink@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/pink@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/purple.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, purple 2 | ----------------------------------- */ 3 | .icheckbox_flat-purple, 4 | .iradio_flat-purple { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(purple.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-purple { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-purple.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-purple.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-purple.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-purple { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-purple.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-purple.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-purple.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-purple, 48 | .iradio_flat-purple { 49 | background-image: url(purple@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/purple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/purple.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/purple@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/purple@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/red.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, red 2 | ----------------------------------- */ 3 | .icheckbox_flat-red, 4 | .iradio_flat-red { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(red.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-red { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-red.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-red.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-red.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-red { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-red.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-red.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-red.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-red, 48 | .iradio_flat-red { 49 | background-image: url(red@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/red.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/red@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/red@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/yellow.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Flat skin, yellow 2 | ----------------------------------- */ 3 | .icheckbox_flat-yellow, 4 | .iradio_flat-yellow { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 20px; 11 | height: 20px; 12 | background: url(yellow.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_flat-yellow { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_flat-yellow.checked { 21 | background-position: -22px 0; 22 | } 23 | .icheckbox_flat-yellow.disabled { 24 | background-position: -44px 0; 25 | cursor: default; 26 | } 27 | .icheckbox_flat-yellow.checked.disabled { 28 | background-position: -66px 0; 29 | } 30 | 31 | .iradio_flat-yellow { 32 | background-position: -88px 0; 33 | } 34 | .iradio_flat-yellow.checked { 35 | background-position: -110px 0; 36 | } 37 | .iradio_flat-yellow.disabled { 38 | background-position: -132px 0; 39 | cursor: default; 40 | } 41 | .iradio_flat-yellow.checked.disabled { 42 | background-position: -154px 0; 43 | } 44 | 45 | /* HiDPI support */ 46 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 47 | .icheckbox_flat-yellow, 48 | .iradio_flat-yellow { 49 | background-image: url(yellow@2x.png); 50 | -webkit-background-size: 176px 22px; 51 | background-size: 176px 22px; 52 | } 53 | } -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/yellow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/yellow.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/icheck/flat/yellow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/css/icheck/flat/yellow@2x.png -------------------------------------------------------------------------------- /app/templates/gentelella/css/nprogress.css: -------------------------------------------------------------------------------- 1 | /* Make clicks pass-through */ 2 | #nprogress { 3 | pointer-events: none; 4 | } 5 | 6 | #nprogress .bar { 7 | background: #29d; 8 | 9 | position: fixed; 10 | z-index: 1031; 11 | top: 0; 12 | left: 0; 13 | 14 | width: 100%; 15 | height: 2px; 16 | } 17 | 18 | /* Fancy blur effect */ 19 | #nprogress .peg { 20 | display: block; 21 | position: absolute; 22 | right: 0px; 23 | width: 100px; 24 | height: 100%; 25 | box-shadow: 0 0 10px #29d, 0 0 5px #29d; 26 | opacity: 1.0; 27 | 28 | -webkit-transform: rotate(3deg) translate(0px, -4px); 29 | -ms-transform: rotate(3deg) translate(0px, -4px); 30 | transform: rotate(3deg) translate(0px, -4px); 31 | } 32 | 33 | /* Remove these to get rid of the spinner */ 34 | #nprogress .spinner { 35 | display: block; 36 | position: fixed; 37 | z-index: 1031; 38 | top: 15px; 39 | right: 15px; 40 | } 41 | 42 | #nprogress .spinner-icon { 43 | width: 18px; 44 | height: 18px; 45 | box-sizing: border-box; 46 | 47 | border: solid 2px transparent; 48 | border-top-color: #29d; 49 | border-left-color: #29d; 50 | border-radius: 50%; 51 | 52 | -webkit-animation: nprogress-spinner 400ms linear infinite; 53 | animation: nprogress-spinner 400ms linear infinite; 54 | } 55 | 56 | .nprogress-custom-parent { 57 | overflow: hidden; 58 | position: relative; 59 | } 60 | 61 | .nprogress-custom-parent #nprogress .spinner, 62 | .nprogress-custom-parent #nprogress .bar { 63 | position: absolute; 64 | } 65 | 66 | @-webkit-keyframes nprogress-spinner { 67 | 0% { -webkit-transform: rotate(0deg); } 68 | 100% { -webkit-transform: rotate(360deg); } 69 | } 70 | @keyframes nprogress-spinner { 71 | 0% { transform: rotate(0deg); } 72 | 100% { transform: rotate(360deg); } 73 | } 74 | 75 | -------------------------------------------------------------------------------- /app/templates/gentelella/css/switchery/switchery.min.css: -------------------------------------------------------------------------------- 1 | .switchery{background-color:#fff;border:1px solid #dfdfdf;border-radius:20px;cursor:pointer;display:inline-block;height:20px;position:relative;vertical-align:middle;width:32px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.switchery>small{background:#fff;border-radius:100%;box-shadow:0 1px 3px rgba(0,0,0,0.4);height:20px;position:absolute;top:0;width:20px} -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/mixins.less: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | .fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | .fa-icon-rotate(@degrees, @rotation) { 15 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation); 16 | -webkit-transform: rotate(@degrees); 17 | -ms-transform: rotate(@degrees); 18 | transform: rotate(@degrees); 19 | } 20 | 21 | .fa-icon-flip(@horiz, @vert, @rotation) { 22 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1); 23 | -webkit-transform: scale(@horiz, @vert); 24 | -ms-transform: scale(@horiz, @vert); 25 | transform: scale(@horiz, @vert); 26 | } 27 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/spinning.less: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | @mixin fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | @mixin fa-icon-rotate($degrees, $rotation) { 15 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 16 | -webkit-transform: rotate($degrees); 17 | -ms-transform: rotate($degrees); 18 | transform: rotate($degrees); 19 | } 20 | 21 | @mixin fa-icon-flip($horiz, $vert, $rotation) { 22 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 23 | -webkit-transform: scale($horiz, $vert); 24 | -ms-transform: scale($horiz, $vert); 25 | transform: scale($horiz, $vert); 26 | } 27 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_spinning.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /app/templates/gentelella/fonts/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | -------------------------------------------------------------------------------- /app/templates/gentelella/images/back_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/back_disabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/back_enabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/back_enabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/back_enabled_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/back_enabled_hover.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/bootstrap-colorpicker/alpha-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/bootstrap-colorpicker/alpha-horizontal.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/bootstrap-colorpicker/alpha.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/bootstrap-colorpicker/alpha.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/bootstrap-colorpicker/hue-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/bootstrap-colorpicker/hue-horizontal.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/bootstrap-colorpicker/hue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/bootstrap-colorpicker/hue.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/bootstrap-colorpicker/saturation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/bootstrap-colorpicker/saturation.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/forward_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/forward_disabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/forward_enabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/forward_enabled.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/forward_enabled_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/forward_enabled_hover.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/icons.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/loading.gif -------------------------------------------------------------------------------- /app/templates/gentelella/images/sprite-skin-flat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/sprite-skin-flat.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/sprite-skin-modern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/sprite-skin-modern.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/sprite-skin-nice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/sprite-skin-nice.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/sprite-skin-simple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/sprite-skin-simple.png -------------------------------------------------------------------------------- /app/templates/gentelella/images/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dkrusky/otp-thing/6e966cb2c82836778f1d65c5259f87dde7581ffb/app/templates/gentelella/images/user.png -------------------------------------------------------------------------------- /app/templates/gentelella/js/colorpicker/docs.js: -------------------------------------------------------------------------------- 1 | $(function () { 2 | $('.demo1').colorpicker(); 3 | $('.demo2').colorpicker(); 4 | 5 | // Horizontal mode 6 | $('#demo_forceformat').colorpicker({ 7 | format: 'rgba', // force this format 8 | horizontal: true 9 | }); 10 | // Horizontal mode 11 | $('#demo_forceformat3').colorpicker({ 12 | format: 'rgba', // force this format 13 | }); 14 | 15 | 16 | $('.demo-auto').colorpicker(); 17 | }); 18 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/datatables/buttons.bootstrap.min.css: -------------------------------------------------------------------------------- 1 | div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}ul.dt-button-collection.dropdown-menu{display:block;z-index:2002;-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}ul.dt-button-collection.dropdown-menu.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}ul.dt-button-collection.dropdown-menu.fixed.two-column{margin-left:-150px}ul.dt-button-collection.dropdown-menu.fixed.three-column{margin-left:-225px}ul.dt-button-collection.dropdown-menu.fixed.four-column{margin-left:-300px}ul.dt-button-collection.dropdown-menu>*{-webkit-column-break-inside:avoid;break-inside:avoid}ul.dt-button-collection.dropdown-menu.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}ul.dt-button-collection.dropdown-menu.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}ul.dt-button-collection.dropdown-menu.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2001}@media screen and (max-width: 767px){div.dt-buttons{float:none;width:100%;text-align:center;margin-bottom:0.5em}div.dt-buttons a.btn{float:none}} 2 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/datatables/buttons.bootstrap.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | Bootstrap integration for DataTables' Buttons 3 | ©2015 SpryMedia Ltd - datatables.net/license 4 | */ 5 | (function(c){"function"===typeof define&&define.amd?define(["jquery","datatables.net-bs","datatables.net-buttons"],function(a){return c(a,window,document)}):"object"===typeof exports?module.exports=function(a,b){a||(a=window);if(!b||!b.fn.dataTable)b=require("datatables.net-bs")(a,b).$;b.fn.dataTable.Buttons||require("datatables.net-buttons")(a,b);return c(b,a,a.document)}:c(jQuery,window,document)})(function(c){var a=c.fn.dataTable;c.extend(!0,a.Buttons.defaults,{dom:{container:{className:"dt-buttons btn-group"}, 6 | button:{className:"btn btn-default"},collection:{tag:"ul",className:"dt-button-collection dropdown-menu",button:{tag:"li",className:"dt-button"},buttonLiner:{tag:"a",className:""}}}});a.ext.buttons.collection.text=function(a){return a.i18n("buttons.collection",'Collection ')};return a.Buttons}); 7 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/datatables/buttons.print.min.js: -------------------------------------------------------------------------------- 1 | (function(d){"function"===typeof define&&define.amd?define(["jquery","datatables.net","datatables.net-buttons"],function(e){return d(e,window,document)}):"object"===typeof exports?module.exports=function(e,a){e||(e=window);if(!a||!a.fn.dataTable)a=require("datatables.net")(e,a).$;a.fn.dataTable.Buttons||require("datatables.net-buttons")(e,a);return d(a,e,e.document)}:d(jQuery,window,document)})(function(d,e,a){var i=d.fn.dataTable,g=a.createElement("a");i.ext.buttons.print={className:"buttons-print", 2 | text:function(c){return c.i18n("buttons.print","Print")},action:function(c,b,a,f){c=b.buttons.exportData(f.exportOptions);a=function(c,a){for(var b="",d=0,e=c.length;d"+c[d]+""+a+">";return b+""};b='';f.header&&(b+=""+a(c.header,"th")+"");for(var b=b+"",j=0,i=c.body.length;j";f.footer&&(b+=""+a(c.footer,"th")+"");var h=e.open("",""),c=f.title;"function"=== 3 | typeof c&&(c=c());-1!==c.indexOf("*")&&(c=c.replace("*",d("title").text()));h.document.close();var k=""+c+"";d("style, link").each(function(){var c=k,b=d(this).clone()[0],a;"link"===b.nodeName.toLowerCase()&&(g.href=b.href,a=g.host,-1===a.indexOf("/")&&0!==g.pathname.indexOf("/")&&(a+="/"),b.href=g.protocol+"//"+a+g.pathname+g.search);k=c+b.outerHTML});d(h.document.head).html(k);d(h.document.body).html(""+c+""+f.message+""+b);f.customize&&f.customize(h);setTimeout(function(){f.autoPrint&& 4 | (h.print(),h.close())},250)},title:"*",message:"",exportOptions:{},header:!0,footer:!1,autoPrint:!0,customize:null};return i.Buttons}); 5 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/datatables/dataTables.bootstrap.js: -------------------------------------------------------------------------------- 1 | /*! 2 | DataTables Bootstrap 3 integration 3 | ©2011-2015 SpryMedia Ltd - datatables.net/license 4 | */ 5 | (function(b){"function"===typeof define&&define.amd?define(["jquery","datatables.net"],function(a){return b(a,window,document)}):"object"===typeof exports?module.exports=function(a,d){a||(a=window);if(!d||!d.fn.dataTable)d=require("datatables.net")(a,d).$;return b(d,a,a.document)}:b(jQuery,window,document)})(function(b,a,d){var f=b.fn.dataTable;b.extend(!0,f.defaults,{dom:"<'row'<'col-sm-6'l><'col-sm-6'f>><'row'<'col-sm-12'tr>><'row'<'col-sm-5'i><'col-sm-7'p>>",renderer:"bootstrap"});b.extend(f.ext.classes, 6 | {sWrapper:"dataTables_wrapper form-inline dt-bootstrap",sFilterInput:"form-control input-sm",sLengthSelect:"form-control input-sm",sProcessing:"dataTables_processing panel panel-default"});f.ext.renderer.pageButton.bootstrap=function(a,h,r,m,j,n){var o=new f.Api(a),s=a.oClasses,k=a.oLanguage.oPaginate,t=a.oLanguage.oAria.paginate||{},e,g,p=0,q=function(d,f){var l,h,i,c,m=function(a){a.preventDefault();!b(a.currentTarget).hasClass("disabled")&&o.page()!=a.data.action&&o.page(a.data.action).draw("page")}; 7 | l=0;for(h=f.length;l",{"class":s.sPageButton+" "+g,id:0===r&&"string"===typeof c?a.sTableId+"_"+c:null}).append(b("",{href:"#", 8 | "aria-controls":a.sTableId,"aria-label":t[c],"data-dt-idx":p,tabindex:a.iTabIndex}).html(e)).appendTo(d),a.oApi._fnBindAction(i,{action:c},m),p++)}},i;try{i=b(h).find(d.activeElement).data("dt-idx")}catch(u){}q(b(h).empty().html('').children("ul"),m);i&&b(h).find("[data-dt-idx="+i+"]").focus()};return f}); 9 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/datatables/fixedHeader.bootstrap.min.css: -------------------------------------------------------------------------------- 1 | table.dataTable.fixedHeader-floating,table.dataTable.fixedHeader-locked{background-color:white;margin-top:0 !important;margin-bottom:0 !important}table.dataTable.fixedHeader-floating{position:fixed !important}table.dataTable.fixedHeader-locked{position:absolute !important}@media print{table.fixedHeader-floating{display:none}} 2 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/datatables/responsive.bootstrap.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | Bootstrap integration for DataTables' Responsive 3 | ©2015 SpryMedia Ltd - datatables.net/license 4 | */ 5 | (function(c){"function"===typeof define&&define.amd?define(["jquery","datatables.net-bs","datatables.net-responsive"],function(a){return c(a,window,document)}):"object"===typeof exports?module.exports=function(a,b){a||(a=window);if(!b||!b.fn.dataTable)b=require("datatables.net-bs")(a,b).$;b.fn.dataTable.Responsive||require("datatables.net-responsive")(a,b);return c(b,a,a.document)}:c(jQuery,window,document)})(function(c){var a=c.fn.dataTable,b=a.Responsive.display,f=b.modal;b.modal=function(a){return function(b, 6 | d,e){c.fn.modal?d||(d=c('×'),a&&a.header&&d.find("div.modal-header").append(''+a.header(b)+""),d.find("div.modal-body").append(e()),d.appendTo("body").modal()):f(b,d,e)}}; 7 | return a.Responsive}); 8 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/datatables/scroller.bootstrap.min.css: -------------------------------------------------------------------------------- 1 | div.DTS{display:block !important}div.DTS tbody th,div.DTS tbody td{white-space:nowrap}div.DTS div.DTS_Loading{z-index:1}div.DTS div.dataTables_scrollBody{background:repeating-linear-gradient(45deg, #edeeff, #edeeff 10px, #fff 10px, #fff 20px)}div.DTS div.dataTables_scrollBody table{z-index:2}div.DTS div.dataTables_paginate,div.DTS div.dataTables_length{display:none}div.DTS tbody tr.even{background-color:white} 2 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-apollo.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["com",/^#[^\n\r]*/,null,"#"],["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["str",/^"(?:[^"\\]|\\[\S\s])*(?:"|$)/,null,'"']],[["kwd",/^(?:ADS|AD|AUG|BZF|BZMF|CAE|CAF|CA|CCS|COM|CS|DAS|DCA|DCOM|DCS|DDOUBL|DIM|DOUBLE|DTCB|DTCF|DV|DXCH|EDRUPT|EXTEND|INCR|INDEX|NDX|INHINT|LXCH|MASK|MSK|MP|MSU|NOOP|OVSK|QXCH|RAND|READ|RELINT|RESUME|RETURN|ROR|RXOR|SQUARE|SU|TCR|TCAA|OVSK|TCF|TC|TS|WAND|WOR|WRITE|XCH|XLQ|XXALQ|ZL|ZQ|ADD|ADZ|SUB|SUZ|MPY|MPR|MPZ|DVP|COM|ABS|CLA|CLZ|LDQ|STO|STQ|ALS|LLS|LRS|TRA|TSQ|TMI|TOV|AXT|TIX|DLY|INP|OUT)\s/, 2 | null],["typ",/^(?:-?GENADR|=MINUS|2BCADR|VN|BOF|MM|-?2CADR|-?[1-6]DNADR|ADRES|BBCON|[ES]?BANK=?|BLOCK|BNKSUM|E?CADR|COUNT\*?|2?DEC\*?|-?DNCHAN|-?DNPTR|EQUALS|ERASE|MEMORY|2?OCT|REMADR|SETLOC|SUBRO|ORG|BSS|BES|SYN|EQU|DEFINE|END)\s/,null],["lit",/^'(?:-*(?:\w|\\[!-~])(?:[\w-]*|\\[!-~])[!=?]?)?/],["pln",/^-*(?:[!-z]|\\[!-~])(?:[\w-]*|\\[!-~])[!=?]?/],["pun",/^[^\w\t\n\r "'-);\\\xa0]+/]]),["apollo","agc","aea"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-basic.js: -------------------------------------------------------------------------------- 1 | var a=null; 2 | PR.registerLangHandler(PR.createSimpleLexer([["str",/^"(?:[^\n\r"\\]|\\.)*(?:"|$)/,a,'"'],["pln",/^\s+/,a," \r\n\t\u00a0"]],[["com",/^REM[^\n\r]*/,a],["kwd",/^\b(?:AND|CLOSE|CLR|CMD|CONT|DATA|DEF ?FN|DIM|END|FOR|GET|GOSUB|GOTO|IF|INPUT|LET|LIST|LOAD|NEW|NEXT|NOT|ON|OPEN|OR|POKE|PRINT|READ|RESTORE|RETURN|RUN|SAVE|STEP|STOP|SYS|THEN|TO|VERIFY|WAIT)\b/,a],["pln",/^[a-z][^\W_]?(?:\$|%)?/i,a],["lit",/^(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?/i,a,"0123456789"],["pun", 3 | /^.[^\s\w"$%.]*/,a]]),["basic","cbm"]); 4 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-clj.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (C) 2011 Google Inc. 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | var a=null; 17 | PR.registerLangHandler(PR.createSimpleLexer([["opn",/^[([{]+/,a,"([{"],["clo",/^[)\]}]+/,a,")]}"],["com",/^;[^\n\r]*/,a,";"],["pln",/^[\t\n\r \xa0]+/,a,"\t\n\r \u00a0"],["str",/^"(?:[^"\\]|\\[\S\s])*(?:"|$)/,a,'"']],[["kwd",/^(?:def|if|do|let|quote|var|fn|loop|recur|throw|try|monitor-enter|monitor-exit|defmacro|defn|defn-|macroexpand|macroexpand-1|for|doseq|dosync|dotimes|and|or|when|not|assert|doto|proxy|defstruct|first|rest|cons|defprotocol|deftype|defrecord|reify|defmulti|defmethod|meta|with-meta|ns|in-ns|create-ns|import|intern|refer|alias|namespace|resolve|ref|deref|refset|new|set!|memfn|to-array|into-array|aset|gen-class|reduce|map|filter|find|nil?|empty?|hash-map|hash-set|vec|vector|seq|flatten|reverse|assoc|dissoc|list|list?|disj|get|union|difference|intersection|extend|extend-type|extend-protocol|prn)\b/,a], 18 | ["typ",/^:[\dA-Za-z-]+/]]),["clj"]); 19 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-css.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\f\r ]+/,null," \t\r\n\u000c"]],[["str",/^"(?:[^\n\f\r"\\]|\\(?:\r\n?|\n|\f)|\\[\S\s])*"/,null],["str",/^'(?:[^\n\f\r'\\]|\\(?:\r\n?|\n|\f)|\\[\S\s])*'/,null],["lang-css-str",/^url\(([^"')]+)\)/i],["kwd",/^(?:url|rgb|!important|@import|@page|@media|@charset|inherit)(?=[^\w-]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*)\s*:/i],["com",/^\/\*[^*]*\*+(?:[^*/][^*]*\*+)*\//], 2 | ["com",/^(?:<\!--|--\>)/],["lit",/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],["lit",/^#[\da-f]{3,6}\b/i],["pln",/^-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*/i],["pun",/^[^\s\w"']+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[["kwd",/^-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[["str",/^[^"')]+/]]),["css-str"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-dart.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"]],[["com",/^#!.*/],["kwd",/^\b(?:import|library|part of|part|as|show|hide)\b/i],["com",/^\/\/.*/],["com",/^\/\*[^*]*\*+(?:[^*/][^*]*\*+)*\//],["kwd",/^\b(?:class|interface)\b/i],["kwd",/^\b(?:assert|break|case|catch|continue|default|do|else|finally|for|if|in|is|new|return|super|switch|this|throw|try|while)\b/i],["kwd",/^\b(?:abstract|const|extends|factory|final|get|implements|native|operator|set|static|typedef|var)\b/i], 2 | ["typ",/^\b(?:bool|double|dynamic|int|num|object|string|void)\b/i],["kwd",/^\b(?:false|null|true)\b/i],["str",/^r?'''[\S\s]*?[^\\]'''/],["str",/^r?"""[\S\s]*?[^\\]"""/],["str",/^r?'('|[^\n\f\r]*?[^\\]')/],["str",/^r?"("|[^\n\f\r]*?[^\\]")/],["pln",/^[$_a-z]\w*/i],["pun",/^[!%&*+/:<-?^|~-]/],["lit",/^\b0x[\da-f]+/i],["lit",/^\b\d+(?:\.\d*)?(?:e[+-]?\d+)?/i],["lit",/^\b\.\d+(?:e[+-]?\d+)?/i],["pun",/^[(),.;[\]{}]/]]), 3 | ["dart"]); 4 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-erlang.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t-\r ]+/,null,"\t\n\u000b\u000c\r "],["str",/^"(?:[^\n\f\r"\\]|\\[\S\s])*(?:"|$)/,null,'"'],["lit",/^[a-z]\w*/],["lit",/^'(?:[^\n\f\r'\\]|\\[^&])+'?/,null,"'"],["lit",/^\?[^\t\n ({]+/,null,"?"],["lit",/^(?:0o[0-7]+|0x[\da-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)/i,null,"0123456789"]],[["com",/^%[^\n]*/],["kwd",/^(?:module|attributes|do|let|in|letrec|apply|call|primop|case|of|end|when|fun|try|catch|receive|after|char|integer|float,atom,string,var)\b/], 2 | ["kwd",/^-[_a-z]+/],["typ",/^[A-Z_]\w*/],["pun",/^[,.;]/]]),["erlang","erl"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-go.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["pln",/^(?:"(?:[^"\\]|\\[\S\s])*(?:"|$)|'(?:[^'\\]|\\[\S\s])+(?:'|$)|`[^`]*(?:`|$))/,null,"\"'"]],[["com",/^(?:\/\/[^\n\r]*|\/\*[\S\s]*?\*\/)/],["pln",/^(?:[^"'/`]|\/(?![*/]))+/]]),["go"]); 2 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-hs.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t-\r ]+/,null,"\t\n\u000b\u000c\r "],["str",/^"(?:[^\n\f\r"\\]|\\[\S\s])*(?:"|$)/,null,'"'],["str",/^'(?:[^\n\f\r'\\]|\\[^&])'?/,null,"'"],["lit",/^(?:0o[0-7]+|0x[\da-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)/i,null,"0123456789"]],[["com",/^(?:--+[^\n\f\r]*|{-(?:[^-]|-+[^}-])*-})/],["kwd",/^(?:case|class|data|default|deriving|do|else|if|import|in|infix|infixl|infixr|instance|let|module|newtype|of|then|type|where|_)(?=[^\d'A-Za-z]|$)/, 2 | null],["pln",/^(?:[A-Z][\w']*\.)*[A-Za-z][\w']*/],["pun",/^[^\d\t-\r "'A-Za-z]+/]]),["hs"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-lisp.js: -------------------------------------------------------------------------------- 1 | var a=null; 2 | PR.registerLangHandler(PR.createSimpleLexer([["opn",/^\(+/,a,"("],["clo",/^\)+/,a,")"],["com",/^;[^\n\r]*/,a,";"],["pln",/^[\t\n\r \xa0]+/,a,"\t\n\r \u00a0"],["str",/^"(?:[^"\\]|\\[\S\s])*(?:"|$)/,a,'"']],[["kwd",/^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/,a], 3 | ["lit",/^[+-]?(?:[#0]x[\da-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[de][+-]?\d+)?)/i],["lit",/^'(?:-*(?:\w|\\[!-~])(?:[\w-]*|\\[!-~])[!=?]?)?/],["pln",/^-*(?:[_a-z]|\\[!-~])(?:[\w-]*|\\[!-~])[!=?]?/i],["pun",/^[^\w\t\n\r "'-);\\\xa0]+/]]),["cl","el","lisp","lsp","scm","ss","rkt"]); 4 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-llvm.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["str",/^!?"(?:[^"\\]|\\[\S\s])*(?:"|$)/,null,'"'],["com",/^;[^\n\r]*/,null,";"]],[["pln",/^[!%@](?:[$\-.A-Z_a-z][\w$\-.]*|\d+)/],["kwd",/^[^\W\d]\w*/,null],["lit",/^\d+\.\d+/],["lit",/^(?:\d+|0[Xx][\dA-Fa-f]+)/],["pun",/^[(-*,:<->[\]{}]|\.\.\.$/]]),["llvm","ll"]); 2 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-lua.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["str",/^(?:"(?:[^"\\]|\\[\S\s])*(?:"|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$))/,null,"\"'"]],[["com",/^--(?:\[(=*)\[[\S\s]*?(?:]\1]|$)|[^\n\r]*)/],["str",/^\[(=*)\[[\S\s]*?(?:]\1]|$)/],["kwd",/^(?:and|break|do|else|elseif|end|false|for|function|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,null],["lit",/^[+-]?(?:0x[\da-f]+|(?:\.\d+|\d+(?:\.\d*)?)(?:e[+-]?\d+)?)/i], 2 | ["pln",/^[_a-z]\w*/i],["pun",/^[^\w\t\n\r \xa0][^\w\t\n\r "'+=\xa0-]*/]]),["lua"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-ml.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["com",/^#(?:if[\t\n\r \xa0]+(?:[$_a-z][\w']*|``[^\t\n\r`]*(?:``|$))|else|endif|light)/i,null,"#"],["str",/^(?:"(?:[^"\\]|\\[\S\s])*(?:"|$)|'(?:[^'\\]|\\[\S\s])(?:'|$))/,null,"\"'"]],[["com",/^(?:\/\/[^\n\r]*|\(\*[\S\s]*?\*\))/],["kwd",/^(?:abstract|and|as|assert|begin|class|default|delegate|do|done|downcast|downto|elif|else|end|exception|extern|false|finally|for|fun|function|if|in|inherit|inline|interface|internal|lazy|let|match|member|module|mutable|namespace|new|null|of|open|or|override|private|public|rec|return|static|struct|then|to|true|try|type|upcast|use|val|void|when|while|with|yield|asr|land|lor|lsl|lsr|lxor|mod|sig|atomic|break|checked|component|const|constraint|constructor|continue|eager|event|external|fixed|functor|global|include|method|mixin|object|parallel|process|protected|pure|sealed|trait|virtual|volatile)\b/], 2 | ["lit",/^[+-]?(?:0x[\da-f]+|(?:\.\d+|\d+(?:\.\d*)?)(?:e[+-]?\d+)?)/i],["pln",/^(?:[_a-z][\w']*[!#?]?|``[^\t\n\r`]*(?:``|$))/i],["pun",/^[^\w\t\n\r "'\xa0]+/]]),["fs","ml"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-mumps.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["str",/^"(?:[^"]|\\.)*"/,null,'"']],[["com",/^;[^\n\r]*/,null,";"],["dec",/^\$(?:d|device|ec|ecode|es|estack|et|etrap|h|horolog|i|io|j|job|k|key|p|principal|q|quit|st|stack|s|storage|sy|system|t|test|tl|tlevel|tr|trestart|x|y|z[a-z]*|a|ascii|c|char|d|data|e|extract|f|find|fn|fnumber|g|get|j|justify|l|length|na|name|o|order|p|piece|ql|qlength|qs|qsubscript|q|query|r|random|re|reverse|s|select|st|stack|t|text|tr|translate|nan)\b/i, 2 | null],["kwd",/^(?:[^$]b|break|c|close|d|do|e|else|f|for|g|goto|h|halt|h|hang|i|if|j|job|k|kill|l|lock|m|merge|n|new|o|open|q|quit|r|read|s|set|tc|tcommit|tre|trestart|tro|trollback|ts|tstart|u|use|v|view|w|write|x|xecute)\b/i,null],["lit",/^[+-]?(?:\.\d+|\d+(?:\.\d*)?)(?:e[+-]?\d+)?/i],["pln",/^[a-z][^\W_]*/i],["pun",/^[^\w\t\n\r"$%;^\xa0]|_/]]),["mumps"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-n.js: -------------------------------------------------------------------------------- 1 | var a=null; 2 | PR.registerLangHandler(PR.createSimpleLexer([["str",/^(?:'(?:[^\n\r'\\]|\\.)*'|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,a,'"'],["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,a,"#"],["pln",/^\s+/,a," \r\n\t\u00a0"]],[["str",/^@"(?:[^"]|"")*(?:"|$)/,a],["str",/^<#[^#>]*(?:#>|$)/,a],["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,a],["com",/^\/\/[^\n\r]*/,a],["com",/^\/\*[\S\s]*?(?:\*\/|$)/, 3 | a],["kwd",/^(?:abstract|and|as|base|catch|class|def|delegate|enum|event|extern|false|finally|fun|implements|interface|internal|is|macro|match|matches|module|mutable|namespace|new|null|out|override|params|partial|private|protected|public|ref|sealed|static|struct|syntax|this|throw|true|try|type|typeof|using|variant|virtual|volatile|when|where|with|assert|assert2|async|break|checked|continue|do|else|ensures|for|foreach|if|late|lock|new|nolate|otherwise|regexp|repeat|requires|return|surroundwith|unchecked|unless|using|while|yield)\b/, 4 | a],["typ",/^(?:array|bool|byte|char|decimal|double|float|int|list|long|object|sbyte|short|string|ulong|uint|ufloat|ulong|ushort|void)\b/,a],["lit",/^@[$_a-z][\w$@]*/i,a],["typ",/^@[A-Z]+[a-z][\w$@]*/,a],["pln",/^'?[$_a-z][\w$@]*/i,a],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,a,"0123456789"],["pun",/^.[^\s\w"-$'./@`]*/,a]]),["n","nemerle"]); 5 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-pascal.js: -------------------------------------------------------------------------------- 1 | var a=null; 2 | PR.registerLangHandler(PR.createSimpleLexer([["str",/^'(?:[^\n\r'\\]|\\.)*(?:'|$)/,a,"'"],["pln",/^\s+/,a," \r\n\t\u00a0"]],[["com",/^\(\*[\S\s]*?(?:\*\)|$)|^{[\S\s]*?(?:}|$)/,a],["kwd",/^(?:absolute|and|array|asm|assembler|begin|case|const|constructor|destructor|div|do|downto|else|end|external|for|forward|function|goto|if|implementation|in|inline|interface|interrupt|label|mod|not|object|of|or|packed|procedure|program|record|repeat|set|shl|shr|then|to|type|unit|until|uses|var|virtual|while|with|xor)\b/i,a], 3 | ["lit",/^(?:true|false|self|nil)/i,a],["pln",/^[a-z][^\W_]*/i,a],["lit",/^(?:\$[\da-f]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)/i,a,"0123456789"],["pun",/^.[^\s\w$'./@]*/,a]]),["pascal"]); 4 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-proto.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.sourceDecorator({keywords:"bytes,default,double,enum,extend,extensions,false,group,import,max,message,option,optional,package,repeated,required,returns,rpc,service,syntax,to,true",types:/^(bool|(double|s?fixed|[su]?int)(32|64)|float|string)\b/,cStyleComments:!0}),["proto"]); 2 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-r.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["str",/^"(?:[^"\\]|\\[\S\s])*(?:"|$)/,null,'"'],["str",/^'(?:[^'\\]|\\[\S\s])*(?:'|$)/,null,"'"]],[["com",/^#.*/],["kwd",/^(?:if|else|for|while|repeat|in|next|break|return|switch|function)(?![\w.])/],["lit",/^0[Xx][\dA-Fa-f]+([Pp]\d+)?[Li]?/],["lit",/^[+-]?(\d+(\.\d+)?|\.\d+)([Ee][+-]?\d+)?[Li]?/],["lit",/^(?:NULL|NA(?:_(?:integer|real|complex|character)_)?|Inf|TRUE|FALSE|NaN|\.\.(?:\.|\d+))(?![\w.])/], 2 | ["pun",/^(?:<-|->>?|-|==|<=|>=|<|>|&&?|!=|\|\|?|[!*+/^]|%.*?%|[$=@~]|:{1,3}|[(),;?[\]{}])/],["pln",/^(?:[A-Za-z]+[\w.]*|\.[^\W\d][\w.]*)(?![\w.])/],["str",/^`.+`/]]),["r","s","R","S","Splus"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-rd.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["com",/^%[^\n\r]*/,null,"%"]],[["lit",/^\\(?:cr|l?dots|R|tab)\b/],["kwd",/^\\[@-Za-z]+/],["kwd",/^#(?:ifn?def|endif)/],["pln",/^\\[{}]/],["pun",/^[()[\]{}]+/]]),["Rd","rd"]); 2 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-scala.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["str",/^"(?:""(?:""?(?!")|[^"\\]|\\.)*"{0,3}|(?:[^\n\r"\\]|\\.)*"?)/,null,'"'],["lit",/^`(?:[^\n\r\\`]|\\.)*`?/,null,"`"],["pun",/^[!#%&(--:-@[-^{-~]+/,null,"!#%&()*+,-:;<=>?@[\\]^{|}~"]],[["str",/^'(?:[^\n\r'\\]|\\(?:'|[^\n\r']+))'/],["lit",/^'[$A-Z_a-z][\w$]*(?![\w$'])/],["kwd",/^(?:abstract|case|catch|class|def|do|else|extends|final|finally|for|forSome|if|implicit|import|lazy|match|new|object|override|package|private|protected|requires|return|sealed|super|throw|trait|try|type|val|var|while|with|yield)\b/], 2 | ["lit",/^(?:true|false|null|this)\b/],["lit",/^(?:0(?:[0-7]+|x[\da-f]+)l?|(?:0|[1-9]\d*)(?:(?:\.\d+)?(?:e[+-]?\d+)?f?|l?)|\\.\d+(?:e[+-]?\d+)?f?)/i],["typ",/^[$_]*[A-Z][\d$A-Z_]*[a-z][\w$]*/],["pln",/^[$A-Z_a-z][\w$]*/],["com",/^\/(?:\/.*|\*(?:\/|\**[^*/])*(?:\*+\/?)?)/],["pun",/^(?:\.+|\/)/]]),["scala"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-sql.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["str",/^(?:"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*')/,null,"\"'"]],[["com",/^(?:--[^\n\r]*|\/\*[\S\s]*?(?:\*\/|$))/],["kwd",/^(?:add|all|alter|and|any|apply|as|asc|authorization|backup|begin|between|break|browse|bulk|by|cascade|case|check|checkpoint|close|clustered|coalesce|collate|column|commit|compute|connect|constraint|contains|containstable|continue|convert|create|cross|current|current_date|current_time|current_timestamp|current_user|cursor|database|dbcc|deallocate|declare|default|delete|deny|desc|disk|distinct|distributed|double|drop|dummy|dump|else|end|errlvl|escape|except|exec|execute|exists|exit|fetch|file|fillfactor|following|for|foreign|freetext|freetexttable|from|full|function|goto|grant|group|having|holdlock|identity|identitycol|identity_insert|if|in|index|inner|insert|intersect|into|is|join|key|kill|left|like|lineno|load|match|matched|merge|natural|national|nocheck|nonclustered|nocycle|not|null|nullif|of|off|offsets|on|open|opendatasource|openquery|openrowset|openxml|option|or|order|outer|over|partition|percent|pivot|plan|preceding|precision|primary|print|proc|procedure|public|raiserror|read|readtext|reconfigure|references|replication|restore|restrict|return|revoke|right|rollback|rowcount|rowguidcol|rows?|rule|save|schema|select|session_user|set|setuser|shutdown|some|start|statistics|system_user|table|textsize|then|to|top|tran|transaction|trigger|truncate|tsequal|unbounded|union|unique|unpivot|update|updatetext|use|user|using|values|varying|view|waitfor|when|where|while|with|within|writetext|xml)(?=[^\w-]|$)/i, 2 | null],["lit",/^[+-]?(?:0x[\da-f]+|(?:\.\d+|\d+(?:\.\d*)?)(?:e[+-]?\d+)?)/i],["pln",/^[_a-z][\w-]*/i],["pun",/^[^\w\t\n\r "'\xa0][^\w\t\n\r "'+\xa0-]*/]]),["sql"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-tcl.js: -------------------------------------------------------------------------------- 1 | var a=null; 2 | PR.registerLangHandler(PR.createSimpleLexer([["opn",/^{+/,a,"{"],["clo",/^}+/,a,"}"],["com",/^#[^\n\r]*/,a,"#"],["pln",/^[\t\n\r \xa0]+/,a,"\t\n\r \u00a0"],["str",/^"(?:[^"\\]|\\[\S\s])*(?:"|$)/,a,'"']],[["kwd",/^(?:after|append|apply|array|break|case|catch|continue|error|eval|exec|exit|expr|for|foreach|if|incr|info|proc|return|set|switch|trace|uplevel|upvar|while)\b/,a],["lit",/^[+-]?(?:[#0]x[\da-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[de][+-]?\d+)?)/i],["lit", 3 | /^'(?:-*(?:\w|\\[!-~])(?:[\w-]*|\\[!-~])[!=?]?)?/],["pln",/^-*(?:[_a-z]|\\[!-~])(?:[\w-]*|\\[!-~])[!=?]?/i],["pun",/^[^\w\t\n\r "'-);\\\xa0]+/]]),["tcl"]); 4 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-tex.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"],["com",/^%[^\n\r]*/,null,"%"]],[["kwd",/^\\[@-Za-z]+/],["kwd",/^\\./],["typ",/^[$&]/],["lit",/[+-]?(?:\.\d+|\d+(?:\.\d*)?)(cm|em|ex|in|pc|pt|bp|mm)/i],["pun",/^[()=[\]{}]+/]]),["latex","tex"]); 2 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-vb.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0\u2028\u2029]+/,null,"\t\n\r \u00a0\u2028\u2029"],["str",/^(?:["\u201c\u201d](?:[^"\u201c\u201d]|["\u201c\u201d]{2})(?:["\u201c\u201d]c|$)|["\u201c\u201d](?:[^"\u201c\u201d]|["\u201c\u201d]{2})*(?:["\u201c\u201d]|$))/i,null,'"\u201c\u201d'],["com",/^['\u2018\u2019](?:_(?:\r\n?|[^\r]?)|[^\n\r_\u2028\u2029])*/,null,"'\u2018\u2019"]],[["kwd",/^(?:addhandler|addressof|alias|and|andalso|ansi|as|assembly|auto|boolean|byref|byte|byval|call|case|catch|cbool|cbyte|cchar|cdate|cdbl|cdec|char|cint|class|clng|cobj|const|cshort|csng|cstr|ctype|date|decimal|declare|default|delegate|dim|directcast|do|double|each|else|elseif|end|endif|enum|erase|error|event|exit|finally|for|friend|function|get|gettype|gosub|goto|handles|if|implements|imports|in|inherits|integer|interface|is|let|lib|like|long|loop|me|mod|module|mustinherit|mustoverride|mybase|myclass|namespace|new|next|not|notinheritable|notoverridable|object|on|option|optional|or|orelse|overloads|overridable|overrides|paramarray|preserve|private|property|protected|public|raiseevent|readonly|redim|removehandler|resume|return|select|set|shadows|shared|short|single|static|step|stop|string|structure|sub|synclock|then|throw|to|try|typeof|unicode|until|variant|wend|when|while|with|withevents|writeonly|xor|endif|gosub|let|variant|wend)\b/i, 2 | null],["com",/^rem\b.*/i],["lit",/^(?:true\b|false\b|nothing\b|\d+(?:e[+-]?\d+[dfr]?|[dfilrs])?|(?:&h[\da-f]+|&o[0-7]+)[ils]?|\d*\.\d+(?:e[+-]?\d+)?[dfr]?|#\s+(?:\d+[/-]\d+[/-]\d+(?:\s+\d+:\d+(?::\d+)?(\s*(?:am|pm))?)?|\d+:\d+(?::\d+)?(\s*(?:am|pm))?)\s+#)/i],["pln",/^(?:(?:[a-z]|_\w)\w*(?:\[[!#%&@]+])?|\[(?:[a-z]|_\w)\w*])/i],["pun",/^[^\w\t\n\r "'[\]\xa0\u2018\u2019\u201c\u201d\u2028\u2029]+/],["pun",/^(?:\[|])/]]),["vb","vbs"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-vhdl.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\r \xa0]+/,null,"\t\n\r \u00a0"]],[["str",/^(?:[box]?"(?:[^"]|"")*"|'.')/i],["com",/^--[^\n\r]*/],["kwd",/^(?:abs|access|after|alias|all|and|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|disconnect|downto|else|elsif|end|entity|exit|file|for|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|mod|nand|new|next|nor|not|null|of|on|open|or|others|out|package|port|postponed|procedure|process|pure|range|record|register|reject|rem|report|return|rol|ror|select|severity|shared|signal|sla|sll|sra|srl|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with|xnor|xor)(?=[^\w-]|$)/i, 2 | null],["typ",/^(?:bit|bit_vector|character|boolean|integer|real|time|string|severity_level|positive|natural|signed|unsigned|line|text|std_u?logic(?:_vector)?)(?=[^\w-]|$)/i,null],["typ",/^'(?:active|ascending|base|delayed|driving|driving_value|event|high|image|instance_name|last_active|last_event|last_value|left|leftof|length|low|path_name|pos|pred|quiet|range|reverse_range|right|rightof|simple_name|stable|succ|transaction|val|value)(?=[^\w-]|$)/i,null],["lit",/^\d+(?:_\d+)*(?:#[\w.\\]+#(?:[+-]?\d+(?:_\d+)*)?|(?:\.\d+(?:_\d+)*)?(?:e[+-]?\d+(?:_\d+)*)?)/i], 3 | ["pln",/^(?:[a-z]\w*|\\[^\\]*\\)/i],["pun",/^[^\w\t\n\r "'\xa0][^\w\t\n\r "'\xa0-]*/]]),["vhdl","vhd"]); 4 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-wiki.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\d\t a-gi-z\xa0]+/,null,"\t \u00a0abcdefgijklmnopqrstuvwxyz0123456789"],["pun",/^[*=[\]^~]+/,null,"=*~^[]"]],[["lang-wiki.meta",/(?:^^|\r\n?|\n)(#[a-z]+)\b/],["lit",/^[A-Z][a-z][\da-z]+[A-Z][a-z][^\W_]+\b/],["lang-",/^{{{([\S\s]+?)}}}/],["lang-",/^`([^\n\r`]+)`/],["str",/^https?:\/\/[^\s#/?]*(?:\/[^\s#?]*)?(?:\?[^\s#]*)?(?:#\S*)?/i],["pln",/^(?:\r\n|[\S\s])[^\n\r#*=A-[^`h{~]*/]]),["wiki"]); 2 | PR.registerLangHandler(PR.createSimpleLexer([["kwd",/^#[a-z]+/i,null,"#"]],[]),["wiki.meta"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/editor/external/google-code-prettify/lang-yaml.js: -------------------------------------------------------------------------------- 1 | var a=null; 2 | PR.registerLangHandler(PR.createSimpleLexer([["pun",/^[:>?|]+/,a,":|>?"],["dec",/^%(?:YAML|TAG)[^\n\r#]+/,a,"%"],["typ",/^&\S+/,a,"&"],["typ",/^!\S*/,a,"!"],["str",/^"(?:[^"\\]|\\.)*(?:"|$)/,a,'"'],["str",/^'(?:[^']|'')*(?:'|$)/,a,"'"],["com",/^#[^\n\r]*/,a,"#"],["pln",/^\s+/,a," \t\r\n"]],[["dec",/^(?:---|\.\.\.)(?:[\n\r]|$)/],["pun",/^-/],["kwd",/^\w+:[\n\r ]/],["pln",/^\w+/]]),["yaml","yml"]); 3 | -------------------------------------------------------------------------------- /app/templates/gentelella/js/gauge/gauge_demo.js: -------------------------------------------------------------------------------- 1 | var opts = { 2 | lines: 12, // The number of lines to draw 3 | angle: 0, // The length of each line 4 | lineWidth: 0.4, // The line thickness 5 | pointer: { 6 | length: 0.75, // The radius of the inner circle 7 | strokeWidth: 0.042, // The rotation offset 8 | color: '#1D212A' // Fill color 9 | }, 10 | limitMax: 'false', // If true, the pointer will not go past the end of the gauge 11 | colorStart: '#1ABC9C', // Colors 12 | colorStop: '#1ABC9C', // just experiment with them 13 | strokeColor: '#F0F3F3', // to see which ones work best for you 14 | generateGradient: true 15 | }; 16 | var target = document.getElementById('foo'); // your canvas element 17 | var gauge = new Gauge(target).setOptions(opts); // create sexy gauge! 18 | gauge.maxValue = 6000; // set max gauge value 19 | gauge.animationSpeed = 32; // set animation speed (32 is default value) 20 | gauge.set(3200); // set actual value 21 | gauge.setTextField(document.getElementById("gauge-text")); 22 | -------------------------------------------------------------------------------- /app/templates/gentelella/notifications.tpl: -------------------------------------------------------------------------------- 1 | {extends file="gentelella/layout.tpl"} 2 | {block name=right_col} 3 | 4 | 5 | 6 | 7 | {$TITLE} {$SHOW|ucfirst} 8 | 9 | 10 | 11 | {if isset($ALLNOTIFICATIONS) && !empty($ALLNOTIFICATIONS)} 12 | 13 | {foreach from=$ALLNOTIFICATIONS item=notification} 14 | 15 | 16 | 17 | {$notification['time']|date_format:"%d"} 18 | {$notification['time']|date_format:"%b"} 19 | 20 | 21 | {$notification['name']} 22 | {$notification['message']} 23 | 24 | 25 | 26 | {$notification['time']} 27 | 28 | 29 | 30 | {/foreach} 31 | 32 | {else} 33 | 34 | You have no notifications waiting. 35 | 36 | {/if} 37 | 38 | 39 | 40 | 41 | {/block} 42 | -------------------------------------------------------------------------------- /app/templates/gentelella/settings.tpl: -------------------------------------------------------------------------------- 1 | {extends file="gentelella/layout.tpl"} 2 | {block name=right_col} 3 | 4 | 5 | 6 | 7 | {$TITLE} {$SHOW|ucfirst} 8 | 9 | 10 | 11 | 12 | 13 | Name 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | Email 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | Password * 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | Save & Update 41 | 42 | 43 | 44 | 45 | 46 | 47 | {/block} 48 | -------------------------------------------------------------------------------- /app/templates_c/.htaccess: -------------------------------------------------------------------------------- 1 | Require all denied 2 | --------------------------------------------------------------------------------
{$notification['time']|date_format:"%b"}
{$notification['message']}
25 | 26 | {$notification['time']} 27 |