Commit e4140e2a by Tuomas Riihimäki

Merge branch 'ui_fixes' into 'master'

Ui fixes

Muista vetää maven update ennen tän iskemistä tuotantoon, niin saadaan ehjät 2d viivakoodit

See merge request !156
2 parents b8430ab6 bb006657
......@@ -256,6 +256,10 @@ public class BootstrapBean implements BootstrapBeanLocal {
"ALTER TABLE place_slots ADD CONSTRAINT FK_place_slots_PRODUCT_id FOREIGN KEY (PRODUCT_id) REFERENCES products (id)"
});
dbUpdates.add(new String[] {
"ALTER TABLE maps ADD COLUMN mime_type TEXT default 'image/png'",
});
} // start_time timestamp without time zone,
@EJB
......
......@@ -136,9 +136,11 @@ public class MenuBean implements MenuBeanLocal {
MenuNavigation userkauppa = usermenu.addPage(null, null);
userkauppa.setKey("topnavi.usershop");
userkauppa.addPage(menuitemfacade.findOrCreate("/shop/createBill"), BillPermission.CREATE_BILL);
userkauppa.addPage(menuitemfacade.findOrCreate("/neomap/view"), MapPermission.BUY_PLACES);
userkauppa.addPage(menuitemfacade.findOrCreate("/foodwave/list"), ShopPermission.SHOP_FOODWAVE);
userkauppa.addPage(menuitemfacade.findOrCreate("/foodwave/listProducts"), ShopPermission.SHOP_FOODWAVE).setVisible(false);
userkauppa.addPage(menuitemfacade.findOrCreate("/foodwave/ThanksForOrderingFromCounter"), ShopPermission.SHOP_FOODWAVE).setVisible(false);
userkauppa.addPage(menuitemfacade.findOrCreate("/svm/success"), UserPermission.ANYUSER).setVisible(false); // landingpages are always "anyuser"
userkauppa.addPage(menuitemfacade.findOrCreate("/bill/list"), BillPermission.VIEW_OWN);
userkauppa.addPage(menuitemfacade.findOrCreate("/bill/edit"), BillPermission.VIEW_OWN).setVisible(false);
......@@ -147,8 +149,9 @@ public class MenuBean implements MenuBeanLocal {
MenuNavigation userPlaces = usermenu.addPage(null, null);
userPlaces.setKey("topnavi.userplaces");
userPlaces.addPage(menuitemfacade.findOrCreate("/neomap/view"), MapPermission.VIEW);
userPlaces.addPage(menuitemfacade.findOrCreate("/place/myGroups"), MapPermission.BUY_PLACES);
userPlaces.addPage(menuitemfacade.findOrCreate("/place/viewplacemap"), MapPermission.VIEW);
userPlaces.addPage(menuitemfacade.findOrCreate("/place/myEtickets"), MapPermission.BUY_PLACES).setVisible(false);
userPlaces.addPage(menuitemfacade.findOrCreate("/place/edit"), MapPermission.MANAGE_OTHERS).setVisible(false);
......@@ -167,6 +170,7 @@ public class MenuBean implements MenuBeanLocal {
userprofile.addPage(menuitemfacade.findOrCreate("/user/changePassword"), UserPermission.VIEW_SELF);
userprofile.addPage(menuitemfacade.findOrCreate("/user/gameids"), UserPermission.MODIFY_OWN_GAMEIDS);
userprofile.addPage(menuitemfacade.findOrCreate("/auth/logout"), UserPermission.LOGOUT);
userprofile.addPage(menuitemfacade.findOrCreate("/user/created"), UserPermission.ANYUSER).setVisible(false); // landingpages are always "anyuser"
MenuNavigation tournaments = usermenu.addPage(null, null);
tournaments.setKey("tournaments.menutitle");
......
......@@ -52,6 +52,9 @@ public class EventMap extends GenericEntity {
this.event = event;
}
@Column(name = "mime_type")
private String mimeType;
@Lob
@Column(name = "map_data")
private byte[] mapData;
......@@ -160,4 +163,11 @@ public class EventMap extends GenericEntity {
this.height = height;
}
public String getMimeType() {
return mimeType;
}
public void setMimeType(String mimeType) {
this.mimeType = mimeType;
}
}
......@@ -25,11 +25,10 @@
<ui:fragment rendered="#{billEditView.bill.paid}">
<h:outputText value="#{i18n['bill.billIsPaid']}" />
<br />
<br /><br />
<h:outputText value="#{i18n['bill.billPaidDate']}" />:
<h:outputText value="#{billEditView.bill.paidDate}">
<f:convertDateTime pattern="#{sessionHandler.datetimeFormat}"
timeZone="#{sessionHandler.timezone}" />
<f:convertDateTime pattern="#{sessionHandler.datetimeFormat}" timeZone="#{sessionHandler.timezone}" />
</h:outputText>
</ui:fragment>
<br />
......
......@@ -57,7 +57,8 @@
<h:outputText value="#{i18n['etickets.user']}"/>
</f:facet>
<h:outputText value="#{member.user.wholeName} (#{member.user.nick})"/>
<h:outputText rendered="#{!empty member.user}" value="#{member.user.wholeName} (#{member.user.nick})"/>
<h:outputText rendered="#{empty member.user}" value="#{member.placeGroup.creator.firstnames} #{member.placeGroup.creator.lastname} (#{member.placeGroup.creator.nick})" />
</p:column>
</p:dataTable>
</p:fieldset>
......
......@@ -32,7 +32,15 @@
</f:facet>
<h:outputText value="#{member.placeReservation.product.name}" />
</p:column>
<p:column>
<p:column rendered="#{placeGroupView.printOnlyOwn}">
<f:facet name="header">
<h:outputText value="#{i18n['placegroupview.owner']}" />
</f:facet>
<h:outputText rendered="#{empty member.user}" value="#{member.placeGroup.creator.firstnames} #{member.placeGroup.creator.lastname} (#{member.placeGroup.creator.nick})" />
<h:outputText rendered="#{(!empty member.user) and placeGroupView.canModifyCurrent}" value="#{member.user.firstnames} #{member.user.lastname} (#{member.user.nick})" />
<h:outputText rendered="#{(!empty member.user) and !placeGroupView.canModifyCurrent}" value="#{i18n['placegroupview.placetransferred']}" />
</p:column>
<p:column rendered="#{!placeGroupView.printOnlyOwn}">
<f:facet name="header">
<h:outputText value="#{i18n['placegroupview.token']}" />
</f:facet>
......@@ -52,11 +60,11 @@
<h:commandButton rendered="#{placeGroupView.currentReleaseAllowed}" action="#{placeGroupView.releasePlace()}" value="#{i18n['placegroupview.releasePlace']}" />
<p:inputText id="inviteEmail" immediate="true" rendered="#{placeGroupView.canSendInviteCurrent}" value="#{placeGroupView.inviteMail}" />
<p:commandButton rendered="#{placeGroupView.canSendInviteCurrent}" value="#{i18n['user.invite']}" actionListener="#{placeGroupView.sendInvite}" update=":messages placestable" />
<p:commandButton rendered="#{placeGroupView.canSendInviteCurrent}" value="#{i18n['place.send']}" actionListener="#{placeGroupView.sendInvite}" update=":messages placestable" />
<p:watermark for="inviteEmail" rendered="#{placeGroupView.canSendInviteCurrent}" value="#{i18n['user.email']}" id="inviteEmailWatermark" />
<h:outputText rendered="#{placeGroupView.showCancelInviteCurrent}" value="#{member.inviteEmail}" />&nbsp;&nbsp;
<p:commandButton rendered="#{placeGroupView.showCancelInviteCurrent}" value="#{i18n['user.cancelInvite']}" actionListener="#{placeGroupView.cancelInvite}" update=":messages placestable" />
<p:commandButton rendered="#{placeGroupView.showCancelInviteCurrent}" value="#{i18n['place.cancelSend']}" actionListener="#{placeGroupView.cancelInvite}" update=":messages placestable" />
</p:column>
......@@ -78,7 +86,7 @@
</p:outputPanel>
<h2>#{i18n['placetoken.pageHeader']}</h2>
<p>#{i18n['placetoken.topText']}</p>
<h:form id="placeTokenForm">
<h:form id="placeTokenForm" rendered="#{!placeGroupView.printOnlyOwn}">
<h:outputLabel value="#{i18n['placetoken.token']}:" />
<h:inputText value="#{tokenView.token}" />
......
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"
xmlns:map="http://java.sun.com/jsf/composite/cditools/map" xmlns:tools="http://java.sun.com/jsf/composite/cditools"
xmlns:c="http://java.sun.com/jsp/jstl/core"
>
<h:body>
<ui:composition template="#{sessionHandler.template}">
<f:metadata>
<f:event type="preRenderView" listener="#{mapView.initViewMap()}" />
<f:viewParam name="userid" value="#{userView.userid}" />
</f:metadata>
<ui:param name="thispage" value="page.place.placemap" />
<ui:define name="content">
<map:viewMap />
</ui:define>
</ui:composition>
</h:body>
</html>
\ No newline at end of file
......@@ -18,8 +18,11 @@
<h:form rendered="#{billListView.bills.rowCount gt 0}">
<p:dataTable styleClass="bordertable" id="billList" value="#{billListView.bills}" var="bill" rowStyleClass="#{bill.expired ? 'expired' : (bill.paidDate != null ? 'paid' : null)}">
<p:dataTable styleClass="bordertable" id="billList" value="#{billListView.bills}" var="bill" rowStyleClass="#{bill.expired ? 'expired' : (bill.paidDate != null ? 'paid' : null)}" expandedRow="true">
<p:column style="width:16px" rendered="#{billListView.bills.rowCount lt 20}">
<p:rowToggler />
</p:column>
<p:column rendered="#{billListView.canWriteBill}">
<f:facet name="header">
<h:outputText value="#{i18n['bill.payer']}" />
......@@ -61,7 +64,7 @@
<h:outputText value="${i18n['bill.vat']}" />
</f:facet>
<h:outputText value="#{bill.totalVat()}">
<f:convertNumber currencyCode="EUR" maxFractionDigits="2" minFractionDigits="2" type="currency" />
<f:convertNumber currencyCode="EUR" maxFractionDigits="2" minFractionDigits="2" type="currency" locale="#{sessionHandler.locale}" />
</h:outputText>
</p:column>
<p:column>
......@@ -69,7 +72,7 @@
<h:outputText value="${i18n['bill.totalPrice']}" />
</f:facet>
<h:outputText value="#{bill.totalPrice()}">
<f:convertNumber currencyCode="EUR" maxFractionDigits="2" minFractionDigits="2" type="currency" />
<f:convertNumber currencyCode="EUR" maxFractionDigits="2" minFractionDigits="2" type="currency" locale="#{sessionHandler.locale}" />
</h:outputText>
</p:column>
<p:column rendered="#{(!bill.expired and sessionHandler.isEventBoolProperty('ALLOW_BILLING')) or billListView.canWriteBill}">
......@@ -88,13 +91,23 @@
</h:link>
</p:column>
<p:column rendered="#{billListView.canWriteBill}">
<p:commandButton onerror="location.reload(true)" rendered="#{bill.paidDate == null and billListView.showPayButtons}" action="#{billListView.markPaid()}" value="#{i18n['bill.markPaid']}" />
<p:commandButton update="billList" onerror="location.reload(true)" rendered="#{bill.paidDate == null and billListView.showPayButtons}" action="#{billListView.markPaid()}" value="#{i18n['bill.markPaid']}" />
<h:outputText rendered="#{bill.paidDate != null}" value="#{i18n['bill.isPaid']}" />
<h:outputText rendered="#{bill.paidDate == null and !billListView.showPayButtons}" value="#{i18n['bill.isNotPaid']}" />
</p:column>
<p:column rendered="#{!billListView.canWriteBill}">
<h:outputText rendered="#{bill.paidDate != null}" value="#{i18n['bill.isPaid']}" />
<h:outputText rendered="#{bill.paidDate == null}" value="#{i18n['bill.isNotPaid']}" />
</p:column>
<p:rowExpansion rendered="#{billListView.bills.rowCount lt 20}">
<p:dataList value="#{bill.billLines}" var="line">
<h:outputText value="#{line.name}" />:
<h:outputText value="#{line.quantity}">
<f:convertNumber minFractionDigits="0" maxFractionDigits="0" />
</h:outputText>
</p:dataList >
</p:rowExpansion>
</p:dataTable>
</h:form>
......
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core"
xmlns:composite="http://java.sun.com/jsf/composite" xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:tools="http://java.sun.com/jsf/composite/tools"
xmlns:role="http://java.sun.com/jsf/composite/tools/role"
xmlns:p="http://primefaces.org/ui"
>
<composite:interface>
</composite:interface>
<composite:implementation>
<h:form id="placeselectform">
<div>
<p:graphicImage url="/PlaceMap?mapid=#{mapView.activeMap.id}"/>
</div>
<h:panelGrid columns="3" cellpadding="10">
<h:panelGrid columns="2">
<div style="border-color: black; border-style: solid; border-width: 1px; background-color: grey; width: 10px; height: 10px;" >&nbsp;</div>
<h:outputText value="#{i18n['placeSelect.legend.grey']}" />
<div style="border-color: black; border-style: solid; border-width: 1px; background-color: white; width: 10px; height: 10px;">&nbsp;</div>
<h:outputText value="#{i18n['placeSelect.legend.white']}" />
<div style="border-color: black; border-style: solid; border-width: 1px; background-color: red; width: 10px; height: 10px;">&nbsp;</div>
<h:outputText value="#{i18n['placeSelect.legend.red']}" />
<div style="border-color: black; border-style: solid; border-width: 1px; background-color: green; width: 10px; height: 10px;" >&nbsp;</div>
<h:outputText value="#{i18n['placeSelect.legend.green']}" />
<div style="border-color: black; border-style: solid; border-width: 1px; background-color: blue; width: 10px; height: 10px;">&nbsp;</div>
<h:outputText value="#{i18n['placeSelect.legend.blue']}" />
</h:panelGrid>
<h:panelGrid columnClasses=",rightalign" columns="2">
<h:outputLabel value="#{i18n['placeSelect.totalPlaces']}:" />
<h:outputText value="#{mapView.availablePlaces}" />
<h:outputLabel value="#{i18n['placeSelect.placesleft']}:" />
<h:outputText value="#{mapView.placesLeftToSelect}" />
</h:panelGrid>
</h:panelGrid>
</h:form>
<div>
<h:outputText escape="false" value="#{mapView.activeMap.notes}" />
</div>
</composite:implementation>
</html>
......@@ -27,7 +27,7 @@
id="billcart" value="#{cc.attrs.items}" var="cart">
<p:column>
<f:facet name="header">
<h:outputText id="name" value="${i18n['product.name']}" />
<h:outputText id="name" value="${i18n['shop.product.name']}" />
</f:facet>
<h:outputText value="#{cart.product.name}" />
</p:column>
......@@ -36,7 +36,7 @@
<h:outputText value="${i18n['product.price']}" />
</f:facet>
<h:outputText id="price" value="#{cart.product.price.abs()}">
<f:convertNumber maxFractionDigits="2" minFractionDigits="2" />
<f:convertNumber maxFractionDigits="2" minFractionDigits="2" currencyCode="EUR" type="currency" locale="#{sessionHandler.locale}" />
</h:outputText>
</p:column>
......@@ -87,7 +87,7 @@
<h:outputText value="${i18n['product.totalPrice']}" />
</f:facet>
<h:outputText id="total" value="#{cart.price}">
<f:convertNumber maxFractionDigits="2" minFractionDigits="2" />
<f:convertNumber maxFractionDigits="2" minFractionDigits="2" currencyCode="EUR" type="currency" locale="#{sessionHandler.locale}" />
</h:outputText>
</p:column>
<p:columnGroup type="footer">
......@@ -98,7 +98,7 @@
<p:column>
<f:facet name="footer">
<h:outputText value="#{productShopView.cartPrice}">
<f:convertNumber maxFractionDigits="2" minFractionDigits="2" />
<f:convertNumber maxFractionDigits="2" minFractionDigits="2" currencyCode="EUR" type="currency" locale="#{sessionHandler.locale}" />
</h:outputText>
</f:facet>
</p:column>
......
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
......@@ -15,7 +14,10 @@
<f:event type="preRenderView" listener="#{svmView.validateSuccess}" />
</f:metadata>
<ui:define name="title">
<h1>#{i18n['page.svm.success.header']}</h1>
<h1>
<h:outputText rendered="#{svmView.validationResult}" value="#{i18n['page.svm.success.header']}" />
<h:outputText rendered="#{!svmView.validationResult}" value="#{i18n['page.svm.error.header']}" />
</h1>
</ui:define>
<ui:define name="content">
<p>
......
......@@ -80,10 +80,14 @@ public class SessionHandler {
public String getLocale() {
Locale ret = sessionStore.getLocale();
String retStr = "fi_FI";
String retStr = "";
if (ret != null) {
retStr = ret.toLanguageTag();
}
if(retStr.trim().equals(""))
retStr = "fi_FI";
return retStr;
}
......
......@@ -120,8 +120,16 @@ public class PlaceMapServlet extends HttpServlet {
ostream.print("Map error!");
} else {
response.setContentType("image/png");
printPlaceMapToStream(ostream, "png", map,userId);
String[] splittype = map.getMimeType().split("/");
String type = "png";
if(splittype.length > 0)
type = splittype[splittype.length-1];
response.setContentType(map.getMimeType());
printPlaceMapToStream(ostream, type, map,userId);
logger.debug("Flushing ostream");
ostream.flush();
}
......@@ -165,7 +173,7 @@ public class PlaceMapServlet extends HttpServlet {
// logger.debug("Got map object {}", map);
List<Place> places = map.getPlaces();
List<Place> userplaces = new ArrayList<>();
List<Place> userplaces = null;
if(userid != null && userid != 0) {
......@@ -183,9 +191,7 @@ public class PlaceMapServlet extends HttpServlet {
Graphics2D g2d = image.createGraphics();
for (Place place : places) {
if(userplaces.size() > 0) {
if(userplaces != null) {
if(userplaces.contains(place)) {
drawPlace(place, g2d, user, true, true);
} else {
......@@ -276,7 +282,6 @@ public class PlaceMapServlet extends HttpServlet {
private static final Color OWNED_COLOR = Color.GREEN;
private static final Color BORDER_COLOR = Color.BLACK;
private static final Color LOCKED_COLOR = Color.DARK_GRAY;
private static final int BORDER_WIDTH = 2;
private static void drawPlace(Place p, Graphics2D g, EventUser user, boolean onlyFrame, boolean hilight) {
if (p.isDisabled()) {
......@@ -305,7 +310,6 @@ public class PlaceMapServlet extends HttpServlet {
// logger.debug("Setting place Reserved {}", p);
} else if (p.getProduct() != null && p.getProduct() != null && p.getProduct().getColor() != null && !p.getProduct().getColor().isEmpty()) {
try {
color = Color.decode(p.getProduct().getColor());
} catch (NumberFormatException x) {
......@@ -322,16 +326,13 @@ public class PlaceMapServlet extends HttpServlet {
color = OWNED_COLOR;
}
g.setColor(BORDER_COLOR);
g.draw(new Rectangle(p.getMapX(), p.getMapY(), p.getWidth(), p
.getHeight()));
if (color != null) {
//logger.debug("Setting fill color: {} for p", color, p);
g.setColor(color);
g.fill(new Rectangle(p.getMapX() + BORDER_WIDTH, p.getMapY()
+ BORDER_WIDTH, p.getWidth() - BORDER_WIDTH, p.getHeight()
- BORDER_WIDTH));
g.fill(new Rectangle(p.getMapX()+1, p.getMapY()+1, p.getWidth()-1, p.getHeight()-1));
}
g.setColor(BORDER_COLOR);
g.draw(new Rectangle(p.getMapX(), p.getMapY(), p.getWidth(), p.getHeight()));
}
}
......@@ -88,6 +88,10 @@ public class PlacegroupView extends GenericCDIView {
return eventBean.getPropertyBoolean(LanEventPropertyKey.USE_ETICKET);
}
public boolean isPrintOnlyOwn() {
return eventBean.getPropertyBoolean(LanEventPropertyKey.PLACECODE_PRINT_ONLY_OWN);
}
public boolean isCanModifyCurrent() {
GroupMembership row = memberlist.getRowData();
......@@ -161,14 +165,22 @@ public class PlacegroupView extends GenericCDIView {
return false;
// if it's your own place, and you are sitting on it, you can free it
if(permbean.isCurrentUser(row.getPlaceGroup().getCreator()) && permbean.isCurrentUser(row.getUser()))
return true;
// change for assembly
// TODO: kun lantrekit on ohi niin kato tää logiikka niin että koko "vapauta" -napin konseptista luovutaan ja pelkästään maililla paikansiirto.
if(isPrintOnlyOwn())
return false;
// And ofcourse you can free it, if you are superadmin
if(permbean.hasPermission(MapPermission.MANAGE_OTHERS))
return true;
// if it's your own place, and you are sitting on it, you can free it
if(permbean.isCurrentUser(row.getPlaceGroup().getCreator()) && permbean.isCurrentUser(row.getUser()))
return true;
return false;
}
......
......@@ -27,8 +27,8 @@ adduser.update = Update profile picture
adduser.welcome = Welcome
adduser.welcometext = Here you can add new user or update your current user profile image. Please select desired action below.
bill.billAmount = Amount
bill.billNumber = Number
bill.billAmount = Tilauksen summa (sis. alv)
bill.billNumber = Tilausnumero
bill.cancel = Cancel bill
bill.expires = Expires
bill.isExpired = Bill is expired
......@@ -311,7 +311,7 @@ page.bill.edit.header = Edit bill
page.bill.list.header = Bills
page.bill.listAll.header = Bills
page.bill.placemap.header = Place map
page.bill.show.header = Bill info
page.bill.show.header = Tilauksen tiedot
pagegroup.auth.login = frontpage
......@@ -381,7 +381,6 @@ submenu.info.shop = Kauppa
submenu.lectureadmin.lectureParticipants = Tarkastele osallistujia
submenu.lectureadmin.manageLectureGroups = Hallinnoi
submenu.lectures.viewLectures = Ilmoittaudu
submenu.neomap.view = Paikkakartta
submenu.reports.basicStatistics = Tilastoja
subnavi.cards = \u0009\u0009
......@@ -446,6 +445,15 @@ invite.permissionDenied=Sinulla ei ole oikeutta luovuttaa paikkaa eteenp\u00E4in
invite.userLoginSuccessfull=Kutsu vastaanotettu onnistuneesti
invite.userLoginUnSuccessfull=Kirjautuminen ep\u00E4onnistui
placegroupview.placetransferred=Paikka annettu eteenp\u00E4in
shop.create=
submenu.shop.createBill=Osta lippuja
submenu.shop.listReaders=
submenu.shop.shopToUser=
submenu.shop.showReaderEvents=
submenu.tournaments.admin.index=
submenu.bill.billSummary=
placegroupview.reservationProduct=
bill.isNoPaid=Maksamatta
product.expired=Vanhentuneet
product.edit=
etickets.title=Lippusi
......@@ -458,3 +466,52 @@ etickets.placemap=Paikat kartalla
placegroup.showEticket=N\u00E4yt\u00E4 lippu
mapView.enterQueue=Liity jonoon
mapView.check=P\u00E4ivit\u00E4 jonopaikka
submenu.place.placemap=Paikkakartta
submenu.poll.index=
submenu.product.create=
submenu.product.list=
product.name=Tuotteen nimi
placeSelect.placeName=
shop.product.name=Lippu
placeSelect.placePrice=
printedCard.cardState=
product.cashed=
product.shopInstant=
productshop.billCreated=
shop.cartPrice=
shop.product=
product.price=Hinta (sis. alv)
billine.name=Lippu
bill.receiverAddress=
bill.referencenumber=
billine.linePrice=
bortalApplication.networkauthentication.OVERRIDE_PLACE_REQUIREMENT=
submenu.place.viewplacemap=Paikkatilanne
svm.success.successMessage=Verkkomaksu onnistui.
template.loggedInAs=
page.svm.error.header=Verkkomaksu ep\u00E4onnistui
bill.isNotPaid=Maksamatta
bill.isPaid=Maksettu
bill.addr3=
bill.addr4=
bill.billIsPaid=
page.account.edit.header=
page.auth.login.loginerror.pagegroup=
page.product.create.pagegroup=
page.product.validateBillProducts.header=
page.role.create.pagegroup=
page.role.edit.pagegroup=
page.role.list.pagegroup=
page.shop.readerevents.header=
page.product.list.pagegroup=
page.tests.placemap.pagegroup=
place.groupremove=
placegroupView.editplace=
placegroupview.owner=Omistaja
placegroupview.groupCreator=Tilaaja
placegroupview.placeReleased=
place.mapX=
place.send=Siirr\u00E4 paikka
place.mapY=
place.cancelSend=Peruuta siirto
place.buyable=
......@@ -64,12 +64,12 @@ bill.addr4 = Address 4
bill.addr5 = Address 5
bill.address = Payers address
bill.allowStatistics = My information can be used in statistics
bill.billAmount = Bill amount (inc. vat)
bill.billIsPaid = Bill is paid
bill.billAmount = Order amount (inc. vat)
bill.billIsPaid = Order is paid
bill.billLines = Products
bill.billMarkedPaidMail.message = Your deposit number {0} has been marked as paid.
bill.billMarkedPaidMail.subject = Bill marked paid
bill.billNumber = Number
bill.billNumber = Order number
bill.billPaidDate = Paid date
bill.cancel = Cancel bill
bill.deliveryTerms = Delivery terms
......@@ -114,8 +114,8 @@ billLine.time = Order Date
billedit.billnotfound = Bill not found. Select again.
billine.linePrice = Total (inc. vat)
billine.name = Product
billine.quantity = Quantity
billine.name = Ticket
billine.quantity = Quantityicket
billine.referencedProduct = Referenced product
billine.save = Save
billine.unitName = Unit
......@@ -797,7 +797,7 @@ page.bill.edit.header = Edit bill
page.bill.list.header = Bills
page.bill.listAll.header = Bills
page.bill.placemap.header = Place map
page.bill.show.header = Bill info
page.bill.show.header = Order info
page.checkout.cancel.header = Payment cancelled!
page.checkout.delayed.header = Delayed payment
page.checkout.reject.header = Payment rejected!
......@@ -819,7 +819,7 @@ page.product.createBill.header = Buy products
page.product.createBill.pagegroup = shop
page.product.edit.pagegroup = admin
page.product.list.pagegroup = admin
page.product.validateBillProducts.header = Bill created
page.product.validateBillProducts.header = Order created
page.role.create.pagegroup = admin
page.role.edit.pagegroup = admin
page.role.list.pagegroup = admin
......@@ -908,14 +908,14 @@ placegroup.printPdf = Print tickets
placegroupView.editplace = Edit place
placegroupview.groupCreator = Reserver
placegroupview.groupCreator = Orderer
placegroupview.header = My places
placegroupview.noMemberships = No places
placegroupview.placeReleaseFailed = Releasing of place failed!
placegroupview.placeReleased = Place {0} released
placegroupview.releasePlace = Release
placegroupview.reservationName = Place
placegroupview.reservationProduct = Product
placegroupview.reservationProduct = Ticket
placegroupview.token = Placecode / user
placetoken.commit = Associate token
......@@ -946,7 +946,7 @@ product.barcode = Barcode
product.billed = Billed
product.boughtTotal = Products billed
product.buyInPrice = Buy in price
product.cart.count = To shoppingcart
product.cart.count = Count
product.cashed = Cashpaid
product.color = Color in UI
product.create = Create product
......@@ -955,11 +955,11 @@ product.createLimit = Create product limitation
product.description = Description
product.edit = edit
product.inventoryQuantity = Inventory count
product.name = Name of product
product.name = Product name
product.paid = Paid
product.prepaid = Prepaid
product.prepaidInstant = Created when prepaid is paid
product.price = Price of product (inc. vat)
product.price = Price (inc. vat)
product.providedRole = Product defines role
product.returnProductEdit = Return to product:
product.save = Save
......@@ -1181,7 +1181,7 @@ submenu.auth.logout = Logout
submenu.auth.logoutResponse = Logout successfull
submenu.auth.sendResetMail = Password reset
submenu.bill.billSummary = Bill summary
submenu.bill.list = My bills
submenu.bill.list = My orders
submenu.bill.listAll = All bills
submenu.eventorg.editEvent = Edit event
submenu.eventorg.list = Manage Event
......@@ -1203,7 +1203,6 @@ submenu.license.manageCodes = Manage codes
submenu.license.viewCodes = View codes
submenu.map.create = Create map
submenu.map.list = List maps
submenu.neomap.view = Map
submenu.networkassociation.index = Associations
submenu.orgrole.create = Create organisationrole
submenu.orgrole.list = Organisation roles
......@@ -1221,7 +1220,7 @@ submenu.product.list = List products
submenu.reports.basicStatistics = Statistics
submenu.role.create = Create role
submenu.role.list = Show Roles
submenu.shop.createBill = Purchase
submenu.shop.createBill = Purchase tickets
submenu.shop.listReaders = List readers
submenu.shop.shopToUser = Shop to user
submenu.shop.showReaderEvents = Reader events
......@@ -1279,7 +1278,7 @@ svm.notification.successMessage = Payment notification received
svm.pending.errorMessage = Unknown error! If payment was successfull email will be sent after verification.
svm.pending.successMessage = Payment pending. You will receive email after payment verification.
svm.success.errorMessage = Payment could not be verified!
svm.success.successMessage = Payment was successfull. You can now your credits in the system.
svm.success.successMessage = Payment was successfull.
template.loggedInAs = Logged in as
......@@ -1644,6 +1643,7 @@ invite.permissionDenied=You don't have permission to regive this place.
invite.userLoginSuccessfull=Invite accepted successfully
invite.userLoginUnSuccessfull=Login unsuccessfull
placegroupview.placetransferred=Place is transferred
bill.isNoPaid=Not paid
product.expired=Expired
etickets.title=Your ticket
etickets.place=Place
......@@ -1655,3 +1655,10 @@ etickets.placemap=Places on map
placegroup.showEticket=Show eticket
mapView.enterQueue=Enter queue
mapView.check=Check own queuestatus
shop.product.name=Ticket
submenu.place.viewplacemap=Places status
page.svm.error.header=Payment failed
bill.isNotPaid=Not paid
placegroupview.owner=Owner
place.send=Transfer place
place.cancelSend=Cancel transfer
......@@ -64,12 +64,12 @@ bill.addr4 = Osoite 4
bill.addr5 = Osoite 5
bill.address = Maksajan osoite
bill.allowStatistics = Tietoni saa julkaista tilastoissa
bill.billAmount = Laskun summa (sis. alv)
bill.billIsPaid = Lasku on maksettu
bill.billAmount = Tilauksen summa (sis. alv)
bill.billIsPaid = Tilaus on maksettu
bill.billLines = Tuotteet
bill.billMarkedPaidMail.message = Laskusi numero {0} on merkitty maksetuksi. Voit nyt siirty\u00E4 lippukauppaan varamaan haluamasi paikat. Tervetuloa tapahtumaan!
bill.billMarkedPaidMail.message = Laskusi numero {0} on merkitty maksetuksi. Voit nyt siirty\u00E4 lippukauppaan varamaan haluamasi paikat. Tervetuloa tapahtumaan\!
bill.billMarkedPaidMail.subject = Lasku merkitty maksetuksi
bill.billNumber = Numero
bill.billNumber = Tilausnumero
bill.billPaidDate = Maksup\u00E4iv\u00E4
bill.cancel = Peruuta lasku
bill.deliveryTerms = Toimitusehdot
......@@ -115,7 +115,7 @@ billLine.time = Tilausaika
billedit.billnotfound = Laskua ei l\u00F6ytynyt. Ole hyv\u00E4 ja valitse uudelleen.
billine.linePrice = Yhteens\u00E4 (sis. alv)
billine.name = Tuote
billine.name = Lippu
billine.quantity = Lukum\u00E4\u00E4r\u00E4
billine.referencedProduct = Tuoteviittaus
billine.save = Tallenna
......@@ -806,7 +806,7 @@ page.bill.edit.header = Muokkaa laskua
page.bill.list.header = Laskut
page.bill.listAll.header = Laskut
page.bill.placemap.header = Paikkakartta
page.bill.show.header = Laskun tiedot
page.bill.show.header = Tilauksen tiedot
page.checkout.cancel.header = Maksu peruutettu.
page.checkout.delayed.header = Viiv\u00E4stetty maksu
page.checkout.reject.header = Maksu hyl\u00E4tty!
......@@ -815,7 +815,7 @@ page.place.insertToken.header = Sy\u00F6t\u00E4 paikkakoodi
page.place.mygroups.header = Paikkaryhm\u00E4t
page.place.placemap.header = Paikkakartta
page.product.createBill.header = Osta tuotteita
page.product.validateBillProducts.header = Lasku luotu
page.product.validateBillProducts.header = Tilaus luotu
page.svm.failure.header = Verkkomaksuvirhe
page.svm.notification.header = Maksutapahtuman rekister\u00F6inti
page.svm.pending.header = Maksukuittausta odotetaan
......@@ -891,14 +891,14 @@ placegroup.printPdf = Tulosta lipputositteet
placegroupView.editplace = Muokkaa paikkaa
placegroupview.groupCreator = Varaaja
placegroupview.groupCreator = Tilaaja
placegroupview.header = Omat paikat
placegroupview.noMemberships = Ei omia paikkoja
placegroupview.placeReleaseFailed = Paikan vapauttaminen ep\u00E4onnistui!
placegroupview.placeReleased = Paikka {0} vapautettu
placegroupview.releasePlace = Vapauta
placegroupview.reservationName = Paikka
placegroupview.reservationProduct = Tuote
placegroupview.reservationProduct = Lippu
placegroupview.token = Paikkakoodi / k\u00E4ytt\u00E4j\u00E4
placetoken.commit = Liit\u00E4
......@@ -929,7 +929,7 @@ product.barcode = Viivakoodi
product.billed = Laskutettu
product.boughtTotal = Tuotteita laskutettu
product.buyInPrice = Sis\u00E4\u00E4nostohinta
product.cart.count = Ostoskoriin
product.cart.count = M\u00E4\u00E4r\u00E4
product.cashed = Ostettu k\u00E4teisell\u00E4
product.color = V\u00E4ri k\u00E4ytt\u00F6liittym\u00E4ss\u00E4
product.create = Luo tuote
......@@ -942,7 +942,7 @@ product.name = Tuotteen nimi
product.paid = Maksettu
product.prepaid = Prepaid
product.prepaidInstant = Luodaan kun prepaid maksetaan
product.price = Tuotteen hinta (sis. alv)
product.price = Hinta (sis. alv)
product.providedRole = Tuote tarjoaa roolin
product.returnProductEdit = Palaa tuotteeseen:
product.save = Tallenna
......@@ -1161,7 +1161,7 @@ submenu.auth.logout = Kirjaudu ulos
submenu.auth.logoutResponse = Uloskirjautuminen onnistui
submenu.auth.sendResetMail = Salasanan palautus
submenu.bill.billSummary = Laskujen yhteenveto
submenu.bill.list = N\u00E4yt\u00E4 omat laskut
submenu.bill.list = N\u00E4yt\u00E4 omat tilaukset
submenu.bill.listAll = Kaikki laskut
submenu.eventorg.editEvent = Tapahtuman tiedot
submenu.eventorg.list = Organisaation hallinta
......@@ -1183,7 +1183,7 @@ submenu.license.manageCodes = Hallinnoi lisenssej\u00E4
submenu.license.viewCodes = N\u00E4yt\u00E4 koodit
submenu.map.create = Uusi kartta
submenu.map.list = N\u00E4yt\u00E4 kartat
submenu.neomap.view = Paikkakartta
submenu.neomap.view = Varaa paikkasi
submenu.networkassociation.index = Assosiaatiot
submenu.orgrole.create = Luo j\u00E4rjest\u00E4j\u00E4rooli
submenu.orgrole.list = J\u00E4rjest\u00E4j\u00E4roolit
......@@ -1201,7 +1201,7 @@ submenu.product.list = Listaa tuotteet
submenu.reports.basicStatistics = Tilastoja
submenu.role.create = Luo rooli
submenu.role.list = N\u00E4yt\u00E4 roolit
submenu.shop.createBill = Osta tuotteita
submenu.shop.createBill = Osta lippuja
submenu.shop.listReaders = N\u00E4yt\u00E4 lukijat
submenu.shop.shopToUser = Osta k\u00E4ytt\u00E4j\u00E4lle
submenu.shop.showReaderEvents = Lukijan tapahtumat
......@@ -1617,7 +1617,6 @@ user.emailtooshortmessage=S\u00E4hk\u00F6postin tarvitsee olla v\u00E4hint\u00E4
user.emailsunmatch=S\u00E4hk\u00F6postiosoitteet eiv\u00E4t t\u00E4sm\u00E4\u00E4.
user.emailAgain=S\u00E4hk\u00F6posti (uudelleen)
required=Vaaditaan
submenu.neomap.view=Paikkakartta
user.cancelInvite=Peruuta kutsu
user.invite.placeInvite.header=Vastaanota l\u00E4hetetty paikka
userview.userExistsByEmail=S\u00E4hk\u00F6posti on jo olemassa. Sinulla saattaa jo olla tunnus j\u00E4rjestelm\u00E4ss\u00E4.
......@@ -1625,6 +1624,7 @@ invite.permissionDenied=Sinulla ei ole oikeutta luovuttaa paikkaa eteenp\u00E4in
invite.userLoginSuccessfull=Kutsu vastaanotettu onnistuneesti
invite.userLoginUnSuccessfull=Kirjautuminen ep\u00E4onnistui
placegroupview.placetransferred=Paikka on annettu eteenp\u00E4in.
bill.isNoPaid=Maksamatta
product.expired=Vanhentuneet
etickets.title=Lippusi
etickets.place=Paikka
......@@ -1636,3 +1636,10 @@ etickets.placemap=Paikat kartalla
placegroup.showEticket=N\u00E4yt\u00E4 lippu
mapView.enterQueue=Liity jonoon
mapView.check=P\u00E4ivit\u00E4 jonopaikka
shop.product.name=Lippu
submenu.place.viewplacemap=Paikkatilanne
page.svm.error.header=Verkkomaksu ep\u00E4onnistui
bill.isNotPaid=Maksamatta
placegroupview.owner=Omistaja
place.send=Siirr\u00E4 paikka
place.cancelSend=Peruuta siirto
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!