Posts mit dem Label JavaScript werden angezeigt. Alle Posts anzeigen
Posts mit dem Label JavaScript werden angezeigt. Alle Posts anzeigen

Freitag, 7. Mai 2021

APEX: Vergrößern der Navigationsbar bei einem Seitenmenü per Javascript

Moin allerseits,

heute wieder ein kurzer Beitrag zu Oracle APEX. Was will ich machen? Das seitliche Navigationsmenü soll verbreitert werden. Die übliche Option ist natürlich über den Theme Roller.

Das ging in unserem Projekt nicht, denn das Universal Theme war noch bei einer älteren Version und sollte auch dabei bleiben.

Wir hatten ein paar längere Menüeinträge, daher sollte das Menü breiter werden.

Funktioniert hat dieser Wunsch mit dem Einsatz von Javascript auf der Page 0, der Global Page - Desktop mit einer Dynamic Action beim Page Load.




Javascript Source: Link zum File auf Github.

Screenshot vom eingeklappten Menü:



Screenshot vom ausgeklappten Menü:



Die Herausforderung bestand darin, dass manchmal nicht alle Menüs und Pages korrekt dargestellt wurden, sondern so ein Zwitter entstand. Dann haben auch die Abstände nicht gestimmt.

Wir haben in dem Javascript File ein Initial Setting bei Applikationsstart sowie weitere Zweige, wenn des Menü auf expanded bzw. collapsed geht oder auf einen Navigationseintrag geklickt wird.

Viel Spass beim Ausprobieren wünscht Holger.

Donnerstag, 11. Februar 2021

Submit einer Custom APEX Login Page mit der Enter Taste

Hier kommt der nächste neue APEX Post von mir. Thema heute: Submit einer Custom APEX Login Page mit der Enter Taste.

Der Login Screen ist nicht der Standard APEX Login Screen, sondern eine selbst entwickelte Page.



Der Login mit der Maus geht hervorragend, aber es soll auch ein Login mit der Enter Taste möglich sein, wenn man im Item "password" ist.

Ein einfaches Submit when Enter pressed 



reicht leider nicht, da die Login Logik hinter dem Button "Log In" liegt.

Also wird eine neue Dynamic Action auf dem Item "password" angelegt und mit etwas JavaScript gefüttert.


Hier kommt der JavaScript Code für die True-Action.

Und schon führt die Betätigung der Enter Taste die Login-Prozedur aus.


Cheers,

Holger



Dienstag, 2. Februar 2021

Einen modalen Dialog in APEX nach dem Login Vorgang anzeigen

Hallo allerseits,

heute kommt mein 1. Post zum Thema Oracle APEX, mit dem ich nun auch unterwegs bin.

Meine Aufgabe war es, einen modalen Dialog in APEX nach dem Login anzeigen, natürlich nur unter gewissen Bedingungen.

Die PageId des modalen Dialog ist 340.

Zuerst habe ich versucht das Ganze mit einem Branch und einem Page Redirect anzuzeigen.




Aber da das Ganze ja ein modaler Dialog ist, ist nichts passiert. Dann ein wenig im Internet gesucht und die Lösung mit JavaScript gefunden.

Ich habe dazu ein Item PX_URL und eine Dynamic Action beim Page Load angelegt.


Bei Set Value wird die URL für den modalen Dialog zusammengebaut.



Zum Start des Dialoges wird JavaScript aufgerufen.




Und die gesamte Dynamic Action hat noch eine Prüfung in der Datenbank, ob der Dialog angezeigt werden soll.


Nun wird nach einem Login unter gewissen Rollenbedingungen dieser modale Dialog angezeigt.


Viel Spaß damit,

Holger


Update einen Tag später nach einem Hinweis von einem Kollegen: eval ist bdeneklich wegen Sicherheitsbedenken und Malicious Code.

Die Lösung besser apex.navigation.redirect verwenden:

apex.navigation.redirect(apex.item('MY_ITEM').getValue());

Man lernt so viel als #orclapex APEX Rookie :-)