2016-06-18 4 views
0

Wir haben einen benutzerdefinierten Zahlungsanbieter erstellt, siehe http://pmc.digital/pt/blogue/junho-2016/integracao-mb-way-com-kentico-cms/ (nur PT Entschuldigung, siehe https://translate.google.com/translate?hl=en&sl=pt&tl=en&u=http%3A%2F%2Fpmc.digital%2Fpt%2Fblogue%2Fjunho-2016%2Fintegracao-mb-way-com-kentico-cms%2F für Google übersetzte Version).Interner Auftrag erkennen/in der Verwaltung erstellt

Es funktioniert gut, einschließlich mit internen Bestellungen von Website-Redakteuren, jedoch, weil der Besucher (am Front-End) auf eine "Pending Order Page" (mit Anweisungen zur Annahme der Zahlung in der APP des Providers) umgeleitet werden muss Es leitet auch Benutzer in admin um.

Ich hatte gehofft, einen ViewMode für die Verwaltung zu haben, aber bei einer internen Bestellung ist die PortalContext.ViewMode Live-Site (ich denke, so kann es die Warenkorb Schritte/Methoden, etc) verwenden.

Reicht es aus, zu überprüfen, ob der aktuell angemeldete Benutzer nicht der Benutzer des Einkaufswagens ist und über die erforderlichen Berechtigungen für das E-Commerce-Modul verfügt?

In Anbetracht Usability, was ist die beste Methode, um auf die Bestellungen APP von der CMSPaymentGatewayProvider ProcessPayment-Methode umleiten?

Antwort

1

Sie können die folgenden auch verwenden:

if(!string.IsNullOrEmpty(DocumentContext.CurrentAliasPath)) 
{ 
//do front end code 
} 
else 
{ 
//do back end code 
} 

ich habe diesen Lauf in einem Gatew individuelle Zahlungs ay ohne Probleme überhaupt.

+0

Schön, danke für den Hack: D –

1

Die Seite, die für die Erstellung neuer Aufträge über Administrationsoberfläche hat folgende URL verwendet wird:

/CMSModules/Ecommerce/Pages/Tools/Orders/Order_New.aspx 

So können Sie entweder überprüfen, ob die Bestellung über diese Seite platzieren oder Sie können es anpassen und einige benutzerdefinierte Variable das würde sagen, wo Sie die Bestellung aufgeben.

Wenn Sie den Menschen Orders Anwendung erhalten umgeleitet wollen, dann ist die url:

/Admin/CMSAdministration.aspx#b72ad042-31bf-4ff2-8436-25a647bba548 

Wenn Sie nur das Netz von Aufträgen wollen, dann ist dies die URL die Sie suchen:

/CMSModules/Ecommerce/Pages/Tools/Orders/Order_List.aspx 
+0

Ich bevorzugte @ Joshs Antwort, wie es direkt auf den Punkt, und ziemlich clever war, aber deins vervollständigt das andere Bit der Frage. Gibt es jedoch eine Möglichkeit, diese URLs programmatisch zu erhalten? kein Fan von Hardcoding-URLs in Providern: D –

+0

Ja für die Anwendung mit dem GUID-Anker, aber nicht für alle anderen URL-Formate. Diese GUIDs der Standardanwendung sollten jedoch in allen Kentico-Versionen unverändert bleiben, da das Upgrade-Skript auf ihnen basiert. – JanH