Hooks / advancedform_xh

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
Post Reply
Eddy
Posts: 37
Joined: Wed Oct 19, 2011 1:42 am

Hooks / advancedform_xh

Post by Eddy » Fri Sep 20, 2019 4:27 pm

Hallo zusammen,

Ich bin leider nicht so bewandert im Programmieren.
Wenn ich es richtig verstanden habe, gibt es die Möglichkeit z.B. "Listen" zu definieren und sie per include in das Mailformlar mit Verwendung von einem Radio-Button über "include" einzubinden. Leider habe nicht verstanden wie dies richtig funktioniert.
Ich würde gerne mehrere Bestellformulare für verschiedene personalisierte Objekte erstellen (soweit so gut), aber nicht in jedem unbedingt alle registrierte Vereine (Logo und Farben sind bereits hinterlegt) mühselig einzeln pro Formular im Radio-Button zur Auswahl eintippen. Ich denke, dass der gewählte Verein dann auch in der Bestätigungsmail des Absenders auch erscheinen wird.

Dies würde so aussehen:

Name
Vorname
Mailadresse
.
.
.
etc.
.
.


Wählen Sie ihr Verein:
- Liste per Radio-Button (Hook)

Pin (Artikelnummer)
.
.
.



Ich würde mich über Hilfe diesbezüglich freuen! :)

Dank und Gruß,
Eddy

Eddy
Posts: 37
Joined: Wed Oct 19, 2011 1:42 am

Re: Hooks / advancedform_xh

Post by Eddy » Wed Sep 25, 2019 6:35 pm

Hallo zusammen,

Unter CMSimple_XH 1.6.5 und mit dem Wrapper Plugin funkionierte ein etwas altes (übernomenes) System unter PHP 5.6.36 einwandfrei.

Jetzt, mit einem Upgrade zu CMSimple_XH 1.7.2 und unter PHP Version 7.2.15-1+0~20190209065123.16+stretch~1.gbp3ad8c0 mit dem jekyllandhyde Template funkioniert es nicht, auch nicht das Wrapper Plugin.

Bisher sah es so aus:

Code: Select all

<html>

	<head>
		<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
		<title>Bestellung Pins</title>
		<script language="JavaScript" src="../../validation.js"></script>
		<script language="JavaScript"><!--
function init() {
define('Vorname', 'string', 'Vorname');
define('Nachname', 'string', 'Nachname');
define('Adresse', 'string', 'Adresse');
define('PLZ', 'num', 'PLZ');
define('Ort', 'string', 'Ort');
define('Telefon', 'string', 'Telefon');
define('Email', 'email', 'Email');
}
// -->
		</script>
		<script language="JavaScript"><!--
var win = null;
function NewWindow(mypage,myname,w,h,scroll){
LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
settings =
'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable'
win = window.open(mypage,myname,settings)
}
// -->
		</script>
		<link href="../../form.css" rel="styleSheet" type="text/css">
	</head>

	<body bgcolor="#ffffff" onLoad="init()">
		<center>
			<form name="order" action="http://www.example.com/cgi-bin/soupermail.pl" method="post">
				<table border="0" cellpadding="0" cellspacing="2" width="600">
					<tr>
						<td>
							<div class="title">
								<input type="hidden" value="/cgi-bin/produkt/produkt_config.con" name="SoupermailConf">Bestellung Pins</div>
						</td>
					</tr>
					<tr height="20">
						<td height="20"></td>
					</tr>
					<tr>
						<td><select size="1" name="Verbindung">
								  :!:  :!: <!--#include virtual="formulare/popup.html"-->  :!:  :!:  
							</select></td>
					</tr>
					<tr height="20">
						<td height="20"></td>
					</tr>
					<tr>
						<td>
							<table border="0" cellpadding="0" cellspacing="2">
								<tr>
									<td align="center" width="60"><img src="../../katalog/nadeln-pins/media/pin1.gif" width="39" height="41" border="0"></td>
								</tr>
							</table>
							<p>&nbsp;</p>
Im der popup.html Datei ist die Liste der Vereine hinterlegt.

Hat jemand eine Ahnung wie ich dies lösen kann, evtl. mit advancedform 1.2 und einem Hook??

Dank und Gruß,
Eddy
Last edited by cmb on Wed Sep 25, 2019 10:11 pm, edited 1 time in total.
Reason: Mark up code for better readability

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Hooks / advancedform_xh

Post by cmb » Wed Sep 25, 2019 10:39 pm

Die Advancedform-Hooks helfen hier wohl nicht weiter; eventuell aber das Template-System. Damit könnte man ähnlich wie in deinem bisherigen Code einfach popup.html "inkludieren". Aber einfacher könnte es sein, wenn du einfach einmal ein Musterformular erstellst (v.a. mit den registrierten Vereinen), und diese dann nach Bedarf kopierst (geht per Mausklick in der Formularverwaltung). Das ist natürlich nicht sinnvoll, falls sich die registrierten Vereine ändern, und dies in den einzelnen Formularen auch immer aktualisiert werden muss. In diesem Fall also vielleicht doch das Template-System (schau dir diesbezüglich auf jeden Fall den entsprechenden Abschnitt in der Hilfedatei an). Die Idee ist, dass man im Formulareditor einfach nur minimale Radiobuttons anlegt (plus den Rest des Formulars), und das Formular eben als Template exportiert. In der exportierten Datei könnte man dann manuell etwa an der richtigen Stelle einfach popup.html "inkludieren":

Code: Select all

<?php include "{$pth['folder']['plugins']}/advancedform/data/popup.html"?>
popup.html müsste dann in plugins/advancedform/data/ abgelegt werden.

Hilft dir das etwas weiter?

Zu deiner bisherigen Lösung kann ich nicht viel sagen, außer dass ich nicht glaube, dass diese wegen eines PHP Updates nicht mehr funktioniert. Dort sehe ich nämlich nur JavaScript, Server-Side-Includes und Referenzen zu Perl-Skripten. Möglicherweise liegt es einfach daran, dass der Hoster Perl und/oder SSI abgeschaltet hat.
Christoph M. Becker – Plugins for CMSimple_XH

Eddy
Posts: 37
Joined: Wed Oct 19, 2011 1:42 am

Re: Hooks / advancedform_xh

Post by Eddy » Fri Sep 27, 2019 11:11 am

Hallo Christoph,

Danke für die Antwort! :)

Ich probiere es demnächst aus und berichte danach wie es lief.

Gruß,
Eddy

Post Reply