163 lines
5.2 KiB
Plaintext
163 lines
5.2 KiB
Plaintext
include mixins
|
|
|
|
form.form-horizontal.subroot#form-involvededitor
|
|
.new_flex_zero(style="padding-bottom: 20px;")
|
|
.container-fluid
|
|
h4 Beteiligten aus manuellen Angaben hinzufügen
|
|
|
|
button(class="btn btn-success btn-sm", type="submit", id="submit_button")
|
|
span(class="glyphicon glyphicon-ok", aria-hidden="true")
|
|
span
|
|
span Übernehmen
|
|
|
|
button(class="btn btn-warning btn-sm", type="button", onclick="history.back();")
|
|
span(class="glyphicon glyphicon-remove-circle", aria-hidden="true")
|
|
span
|
|
span Abbrechen
|
|
|
|
.new_flex_one(style="padding-bottom: 200px;")
|
|
.container-fluid
|
|
.form-group
|
|
label(for='edit_group', class="col-sm-2 control-label") Gruppe
|
|
.col-sm-10
|
|
input(id='edit_group', type="text", class="form-control noEnterSubmit", value="#{involved.group}")
|
|
.help-block.with-errors
|
|
|
|
.form-group
|
|
label(for='edit_surname', class="col-sm-2 control-label") Nachname
|
|
.col-sm-10
|
|
input(id='edit_surname', type="text", class="form-control noEnterSubmit", value="#{involved.surname}", required)
|
|
.help-block.with-errors
|
|
|
|
.form-group
|
|
label(for='edit_forename', class="col-sm-2 control-label") Vorname
|
|
.col-sm-10
|
|
input(id='edit_forename', type="text", class="form-control noEnterSubmit", value="#{involved.forename}")
|
|
.help-block.with-errors
|
|
|
|
.form-group
|
|
label(for='edit_street', class="col-sm-2 control-label") Straße
|
|
.col-sm-10
|
|
input(id='edit_street', type="text", class="form-control noEnterSubmit", value="#{involved.street}")
|
|
.help-block.with-errors
|
|
|
|
.form-group
|
|
label(for='edit_street_nr', class="col-sm-2 control-label") Hausnummer
|
|
.col-sm-3
|
|
input(id='edit_street_nr', type="text", class="form-control noEnterSubmit", value="#{involved.street_nr}")
|
|
.help-block.with-errors
|
|
|
|
.form-group
|
|
label(for='edit_postalcode', class="col-sm-2 control-label") Postleitzahl
|
|
.col-sm-3
|
|
input(id='edit_postalcode', type="text", class="form-control noEnterSubmit", value="#{involved.postalcode}")
|
|
.help-block.with-errors
|
|
|
|
.form-group
|
|
label(for='edit_location', class="col-sm-2 control-label") Ort
|
|
.col-sm-10
|
|
input(id='edit_location', type="text", class="form-control noEnterSubmit", value="#{involved.location}")
|
|
.help-block.with-errors
|
|
|
|
.form-group
|
|
label(for='edit_email', class="col-sm-2 control-label") eMail
|
|
.col-sm-10
|
|
input(id='edit_email', type="email", class="form-control noEnterSubmit", value="#{involved.email}")
|
|
.help-block.with-errors
|
|
|
|
.form-group
|
|
label(for='edit_telephonenumber', class="col-sm-2 control-label") Telefonnummer
|
|
.col-sm-10
|
|
input(id='edit_telephonenumber', type="tel", class="form-control noEnterSubmit", value="#{involved.telephonenumber}", required)
|
|
.help-block.with-errors
|
|
|
|
|
|
script.
|
|
var all_locations = [
|
|
{plz: "96050", loc: "Bamberg"},
|
|
{plz: "96450", loc: "Coburg"},
|
|
{plz: "96465", loc: "Neustadt bei Coburg"},
|
|
{plz: "96472", loc: "Rödental"},
|
|
{plz: "96487", loc: "Dörfles-Esbach"}
|
|
];
|
|
|
|
var locationMatcher = function(locations) {
|
|
return function findMatches(q, cb) {
|
|
var matches, substringRegex;
|
|
|
|
// an array that will be populated with substring matches
|
|
matches = [];
|
|
|
|
// regex used to determine if a string contains the substring `q`
|
|
substrRegex = new RegExp(q, 'i');
|
|
|
|
// iterate through the pool of strings and for any string that
|
|
// contains the substring `q`, add it to the `matches` array
|
|
$.each(locations, function(i, loc) {
|
|
console.log('location: ', loc);
|
|
if (substrRegex.test(loc.plz)) {
|
|
matches.push(loc);
|
|
}
|
|
});
|
|
|
|
cb(matches);
|
|
};
|
|
};
|
|
|
|
$("#edit_postalcode").typeahead({
|
|
hint: true,
|
|
highlight: true,
|
|
minLength: 2
|
|
},
|
|
{
|
|
name: 'locations',
|
|
source: locationMatcher(all_locations),
|
|
display: 'plz',
|
|
limit: 15
|
|
}).bind('typeahead:select typeahead:autocomplete', function(ev, suggestion) {
|
|
console.log(suggestion);
|
|
$("#edit_location").val(suggestion.loc);
|
|
});
|
|
|
|
// KEEP IN SYNC WITH involved.cpp 'construct_name'
|
|
function construct_involved_name(data) {
|
|
var group_given = data.group.length > 0;
|
|
|
|
return (group_given ? data.group + " [" : "") +
|
|
data.surname + (data.surname.length === 0 || data.forename.length === 0 ? "" : ", ") + data.forename +
|
|
(group_given ? "]" : "");
|
|
}
|
|
|
|
$('#form-involvededitor').validator().on('submit', function(e) {
|
|
if( ! e.isDefaultPrevented() )
|
|
{
|
|
e.preventDefault();
|
|
|
|
var data = {
|
|
for_role: "#{for_role}",
|
|
id : "other",
|
|
group : $("#edit_group").val(),
|
|
forename: $("#edit_forename").val(),
|
|
surname : $("#edit_surname").val(),
|
|
street : $("#edit_street").val(),
|
|
street_nr: $("#edit_street_nr").val(),
|
|
postalcode: $("#edit_postalcode").val(),
|
|
location: $("#edit_location").val(),
|
|
email: $("#edit_email").val(),
|
|
telephonenumber: $("#edit_telephonenumber").val()
|
|
};
|
|
|
|
data.name = construct_involved_name(data);
|
|
|
|
switch("#{type}") {
|
|
case "add":
|
|
pcal_pentry_edit_manager.add_involved(data);
|
|
break;
|
|
case "edit":
|
|
data.uid = "#{involved.uid}";
|
|
pcal_pentry_edit_manager.edit_involved(data);
|
|
break;
|
|
}
|
|
}
|
|
});
|