Use datatables by default for each table.

For the main tables, we use datatables now anyways.
Also use it for datatables fields within forms (needs some visual
optimization and positioning of error messages, as well as
validation code).
agranig/1_0_subfix
Andreas Granig 12 years ago
parent 4b22a492df
commit 3b2523473b

@ -32,7 +32,7 @@ sub list :Chained('/') :PathPart('reseller') :CaptureArgs(0) {
{id => 6, 'contract.id' => 6, name => 'reseller 6', status => 'terminated'},
];
$c->stash(resellers => $resellers);
$c->stash(template => 'reseller/listdt.tt');
$c->stash(template => 'reseller/list.tt');
NGCP::Panel::Utils::check_redirect_chain(c => $c);
}

@ -2,13 +2,16 @@ package NGCP::Panel::Field::Contact;
use HTML::FormHandler::Moose;
extends 'HTML::FormHandler::Field::Compound';
has_field 'contact' => (
has_field 'id' => (
type => '+NGCP::Panel::Field::DataTable',
label => 'Contact',
required => 1,
do_label => 0,
do_wrapper => 0,
required => 1,
template => 'share/templates/helpers/datatables_field.tt',
ajax_src => '/contact/ajax',
table_fields => ['#', 'First Name', 'Last Name', 'Email'],
table_titles => ['#', 'First Name', 'Last Name', 'Email'],
table_fields => ['id', 'firstname', 'lastname', 'email'],
);
has_field 'create' => (

@ -1,21 +0,0 @@
package NGCP::Panel::Field::ContactSelect;
use Moose;
extends 'HTML::FormHandler::Field::Select';
sub build_options {
my ($self) = @_;
return [
{ label => 'Select...', value => '' },
{ label => '1', value => 1 },
{ label => '2', value => 2 },
{ label => '3', value => 3 },
{ label => '4', value => 4 },
{ label => '5', value => 5 },
{ label => '6', value => 6 },
];
}
1;
# vim: set tabstop=4 expandtab:

@ -1,21 +0,0 @@
package NGCP::Panel::Field::ContractSelect;
use Moose;
extends 'HTML::FormHandler::Field::Select';
sub build_options {
my ($self) = @_;
return [
{ label => 'Select...', value => '' },
{ label => '1', value => 1 },
{ label => '2', value => 2 },
{ label => '3', value => 3 },
{ label => '4', value => 4 },
{ label => '5', value => 5 },
{ label => '6', value => 6 },
];
}
1;
# vim: set tabstop=4 expandtab:

@ -29,6 +29,8 @@
<script src="/js/libs/jquery-ui-1.8.21.custom.min.js"></script>
<script src="/js/libs/jquery.ui.touch-punch.min.js"></script>
<script src="/js/libs/bootstrap/bootstrap.min.js"></script>
<script src="/js/libs/jquery.dataTables.min.js"></script>
<script src="/js/libs/datatables-bootstrap-paging.js"></script>
</head>
[% content %]
</html>

@ -11,6 +11,6 @@
helper.edit_object = contract;
helper.form_object = form;
PROCESS 'helpers/table_form.tt';
PROCESS 'helpers/datatables.tt';
-%]
[% # vim: set tabstop=4 syntax=html expandtab: -%]

@ -1,7 +1,3 @@
[% PROCESS "helpers/defines.tt" %]
[% ifndef_include_dt %]
<script src="/js/libs/datatables-bootstrap-paging.js"></script>
<style>
div.modal {

@ -1,4 +1,3 @@
<script type="text/javascript" language="javascript" src="/js/libs/jquery.dataTables.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {

@ -1,8 +0,0 @@
[% MACRO ifndef_include_dt BLOCK -%]
[% # UNLESS global.ifndef_include_dt_flag ;
# global.ifndef_include_dt_flag="true" %]
<script type="text/javascript" language="javascript" src="[% c.uri_for('/js/libs/jquery.dataTables.min.js') %]"></script>
[% # END %]
[%- END %]

@ -1,67 +0,0 @@
[% PROCESS "helpers/defines.tt" %]
<div class="row">
<a class="btn btn-primary btn-large" href="[% c.uri_for(c.action, c.req.captures, 'create') %]"><i class="icon-star"></i> Create [% helper.name %]</a>
<a class="btn btn-primary btn-large" href="[% c.uri_for(c.action, c.req.captures, 'search') %]"><i class="icon-search"></i> Search [% helper.name %]</a>
</div>
[% IF helper.messages -%]
<div class="row">
[% FOREACH m IN helper.messages -%]
<div class="alert alert-[% m.type %]">[% m.text %]</div>
[% END -%]
</div>
[% END -%]
<div class="row">
<table class="table table-bordered table-striped table-highlight table-hover">
<thead>
<tr>
[% FOREACH t IN helper.column_titles -%]
<th>[% t %]</th>
[% END -%]
[% # one for actions -%]
<th></th>
</tr>
</thead>
<tbody>
[% FOREACH set IN helper.data -%]
<tr class="sw_action_row">
[% FOREACH field IN helper.column_fields -%]
<td>[% set.$field %]</td>
[% END -%]
<td class="span3">
<div class="sw_actions pull-right">
<a class="btn btn-small btn-primary" href="[% c.uri_for(set.id, 'edit') %]" style="display:inline;line-height:16px;"><i class="icon-edit" style="line-height:1em;margin-top:2px"></i> Edit</a>
<a class="btn btn-small btn-secondary" href="[% c.uri_for(set.id, 'delete') %]" data-confirm="Delete" style="display:inline;line-height:16px;"><i class="icon-trash" style="line-height:1em;margin-top:2px"></i> Delete</a>
</div>
</td>
</tr>
[% END -%]
</tbody>
</table>
</div>
[% IF helper.edit_object || helper.create_flag == 1 -%]
<div id="mod_edit" class="modal hide" style="display:block">
<div class="modal-header">
<button id="mod_close" type="button" class="close">×</button>
<h3>[% helper.create_flag == 1 ? 'Create' : 'Edit' %] [% helper.name %]</h3>
</div>
[% helper.form_object.render -%]
</div>
<script>
$(function () {
$('#mod_edit').modal({keyboard: false, backdrop: 'static'});
$('#mod_close').click(function(event) {
window.location.href="[% helper.close_target ? helper.close_target : c.uri_for() %]";
});
// on clicking a button within the form, add a hidden field "submitid"
// determining the name of the button being clicked
$('input[type=button]').click(function() {
$(this).parents('form').find('#submitid').attr('value', $(this).attr('name'));
$(this).parents('form').submit();
});
});
</script>
[% END -%]
[% # vim: set tabstop=4 syntax=html expandtab: -%]

@ -11,6 +11,6 @@
helper.edit_object = reseller;
helper.form_object = form;
PROCESS 'helpers/table_form.tt';
PROCESS 'helpers/datatables.tt';
-%]
[% # vim: set tabstop=4 syntax=html expandtab: -%]

@ -1,16 +0,0 @@
[% META title = 'Resellers' -%]
[%
helper.name = 'Reseller';
helper.data = resellers;
helper.messages = messages;
helper.column_titles = [ '#', 'Name', 'Contract #', 'Status' ];
helper.column_fields = [ 'id', 'name', 'contract.id', 'status' ];
helper.close_target = close_target;
helper.create_flag = create_flag;
helper.edit_object = reseller;
helper.form_object = form;
PROCESS 'helpers/datatables.tt';
-%]
[% # vim: set tabstop=4 syntax=html expandtab: -%]
Loading…
Cancel
Save