itflow/vendor/datepicker/docs/Extras/index.html

210 lines
9.1 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="shortcut icon" href="../favicon.ico">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/manifest.json">
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#144287">
<meta name="theme-color" content="#ffffff">
<title>Extras - Tempus Dominus - Bootstrap 4</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.1/css/bootstrap.min.css" integrity="sha256-Md8eaeo67OiouuXAi8t/Xpd8t2+IaJezATVTWbZqSOw=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.css" />
<link href="../theme/css/base.css" rel="stylesheet">
<link href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/styles/github.min.css" rel="stylesheet">
<link href="../theme/css/tempusdominus-bootstrap-4.css" rel="stylesheet">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
<![endif]-->
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha256-98vAGjEDGN79TjHkYWVD4s87rvWkdWLHPs5MC3FvFX4=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.1/js/bootstrap.min.js" integrity="sha256-xaF9RpdtRxzwYMWg4ldJoyPWqyDPCRD0Cv7YEEe6Ie8=" crossorigin="anonymous"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment-with-locales.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.21/moment-timezone-with-data-2012-2022.min.js"></script>
<script>var base_url = '..';</script>
<script src="../theme/js/base.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/highlight.min.js"></script>
<script src="../theme/js/tempusdominus-bootstrap-4.js"></script>
</head>
<body>
<header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar">
<a class="navbar-brand" href="https://tempusdominus.github.io/bootstrap-4/"><img src="https://tempusdominus.github.io/bootstrap-4/favicon-32x32.png" alt="home" /></a>
<div class="navbar-nav-scroll">
<ul class="navbar-nav bd-navbar-nav flex-row">
<li class="nav-item">
<a class="nav-link " href="..">Tempus Dominus Bootstrap 4</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../Usage/">Usage</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../Installing/">Installing</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../Functions/">Functions</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../Options/">Options</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../Events/">Events</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../Changelog/">Change Log</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../ContributorsGuide/">Dev Guide</a>
</li>
<li class="nav-item">
<a class="nav-link active" href="./">Extras</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../FAQ/">FAQs</a>
</li>
</ul>
</div>
<ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex">
<li class="nav-item">
<a class="nav-link p-2" href="https://github.com/tempusdominus/bootstrap-4" target="_blank" rel="noopener" aria-label="GitHub">
<span class="fa fa-github"></span>
</a>
</li>
</ul>
</header>
<div class="container-fluid">
<div class="row">
<div class="col-12 col-md-3 col-xl-2 bd-sidebar"><script async type="text/javascript" src="//cdn.carbonads.com/carbon.js?serve=CK7DC5QN&placement=eonasdangithubio" id="_carbonads_js"></script>
<nav class="bd-links" id="docsNavbarContent">
<div class="bd-toc-item active">
<ul class="nav bd-sidenav">
<li class="active bd-sidenav-active"><a href="#extras">Extras</a></li>
<li><a href="#rails-3">Rails 3</a></li>
</ul>
</div>
</nav></div>
<div class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main">
<h1 class="bd-title">Extras</h1>
<h1 id="extras">Extras</h1>
<p>Guides for making the picker work better with rails, IE, etc. <strong>Note:</strong> I have no idea if these guides still apply for v5 or not.</p>
<h2 id="rails-3">Rails 3</h2>
<p>by <a href="https://github.com/dhulihan">dhulihan</a></p>
<p>You can easily override the default rails form helpers (<code>date_select</code> and <code>datetime_select</code>) with bootstrap-datetimepicker for a much nicer experience. </p>
<pre><code class="rb"># Add to config/initializers/form.rb or the end of app/helpers/application_helper.rb
module ActionView
module Helpers
class FormBuilder
def date_select(method, options = {}, html_options = {})
existing_date = @object.send(method)
formatted_date = existing_date.to_date.strftime(&quot;%F&quot;) if existing_date.present?
@template.content_tag(:div, :class =&gt; &quot;input-group&quot;) do
text_field(method, :value =&gt; formatted_date, :class =&gt; &quot;form-control datepicker&quot;, :&quot;data-date-format&quot; =&gt; &quot;YYYY-MM-DD&quot;) +
@template.content_tag(:span, @template.content_tag(:span, &quot;&quot;, :class =&gt; &quot;glyphicon glyphicon-calendar&quot;) ,:class =&gt; &quot;input-group-addon&quot;)
end
end
def datetime_select(method, options = {}, html_options = {})
existing_time = @object.send(method)
formatted_time = existing_time.to_time.strftime(&quot;%F %I:%M %p&quot;) if existing_time.present?
@template.content_tag(:div, :class =&gt; &quot;input-group&quot;) do
text_field(method, :value =&gt; formatted_time, :class =&gt; &quot;form-control datetimepicker&quot;, :&quot;data-date-format&quot; =&gt; &quot;YYYY-MM-DD hh:mm A&quot;) +
@template.content_tag(:span, @template.content_tag(:span, &quot;&quot;, :class =&gt; &quot;glyphicon glyphicon-calendar&quot;) ,:class =&gt; &quot;input-group-addon&quot;)
end
end
end
end
end
</code></pre>
<p>The time format used here is ActiveRecord-friendly, which means it will be parsed correctly when passed in through <code>params</code> to your record.</p>
<p>That's all there is to it! Now all of your forms that use <code>datetime_select</code> or <code>date_select</code> will be automatically updated:</p>
<pre><code class="erb">&lt;% form_for @post do |f| %&gt;
&lt;div class=&quot;form-group&quot;&gt;
&lt;label&gt;Published At&lt;/label&gt;
&lt;%= f.datetime_select :published_at %&gt;
&lt;/div&gt;
&lt;% end %&gt;
</code></pre>
</div>
</div>
</div>
<script>
if (top !== self) { top.location.replace(self.location.href); }
if (location.hostname !== "localhost" && location.hostname !== "127.0.0.1") {
(function (i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
i[r] = i[r] ||
function () {
(i[r].q = i[r].q || []).push(arguments);
}, i[r].l = 1 * new Date();
a = s.createElement(o),
m = s.getElementsByTagName(o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m);
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-47462200-1', 'eonasdan.github.io');
ga('send', 'pageview');
}
</script>
</body>
</html>