Das würde ich mal mit Simple Caddy versuchen...
Beiträge von Elfangor93
-
-
Ich möchte mir ein schlankes Modul erstellen, mit welchem ich Komponenten-Ansichten in Modulpositionen anzeigen lassen kann. Ich habe mir dazu bereits das Plugin Components Anywhere angeschaut. Jedoch müsste sowas doch auch schlanker möglich sein...
Hier habe ich einen Beitrag gefunden, welcher genau mein Anliegen beschreibt:
https://joomla.stackexchange.c…omponent-view-in-a-moduleFolgender Code (basierend auf dem Code aus obigem Link) für eine Formular-Ansicht (ALFContact Komponente) liefert mir den Fehler (kompletter Call Stack im Anhang):
500 Layout „default“ nicht gefunden!
/opt/bitnami/apache2/htdocs/joomla/libraries/src/MVC/View/HtmlView.php:706
Code
Alles anzeigen// No direct access defined('_JEXEC') or die; $basePath = dirname(__FILE__); $jinput = JFactory::getApplication()->input; // Get variables from request $option = $jinput->get('option',null); $view = $jinput->get('view',null); $layout = $jinput->get('layout',null); $task = $jinput->get('task',null); // Set component specific request variables $myoption = $jinput->set('option', 'com_alfcontact'); $myview = $jinput->set('view', 'alfcontact'); $mylayout = $jinput->set('layout', 'default'); $mytask = $jinput->set('task', 'display'); $mymenuid = $jinput->set('Itemid', '230'); // load language files $lang = JFactory::getLanguage(); $lang->load('com_alfcontact', JPATH_SITE); // load component controller if (!class_exists('AlfcontactController')) { require_once (JPATH_SITE . '/components/com_alfcontact/controller.php'); } $controller = new AlfcontactController(); $controller->addModelPath(JPATH_SITE . '/components/com_alfcontact/models/'); $controller->addViewPath(JPATH_SITE . '/components/com_alfcontact/views/'); $controller->setProperties(array( '_basePath' => JPATH_SITE . '/components/com_alfcontact', 'default_view' => JPATH_SITE . '/components/com_alfcontact/views/alfcontact/tmpl', '_path' => array( 'view' => array( JPATH_SITE . '/components/com_alfcontact/views' ), 'model' => array( JPATH_SITE . '/components/com_alfcontact/models' ) ) )); // render the view $controller->execute($jinput->get('task','display')); // Redirect if set by the controller $controller->redirect(); // revert request variables to previous state if($option != null) { $jinput->set('option', $option); } if($view != null) { $jinput->set('view', $view); } if($layout != null) { $jinput->set('layout', $layout); } if($task != null) { $jinput->set('task', $task); }
Hat jemand eine Ahnung, was an diesem Code noch falsch ist?
Danke für eure Hilfe...
Manuel
-
Ich habe gute Erfahrungen mit Turn.js gemacht.
Es gibt sogar ein Joomla-Modul, welches mit turn.js arbeitet. Dies ist sicher ein Versuch wert...Lg
-
Zitat
Ich habe in der Nextcloud ein paar Bilderordner angelegt. Wäre cool wenn meine Joomla Seite drauf zugreifen würde und aus den Ordnern eine Bildergalerie erstellt.
Nach dieser Funktion habe ich auch schon mal gesucht. Das wäre tatsächlich eine tolle Möglichkeit. Soweit ich weiss gibt es sowas jedoch (noch) nicht...
-
Das ist einer von den Fällen, bei dem das kostenlos bedeutet:"Gebe mir erst Deine Daten."
Du kannst das ganze auch ohne Registrierung bei GitHub herunterladen:
-
Phoca Download und sein Search Plugin sind das einzige, was mir dazu einfällt...
-
Das vielleicht?
https://www.renekreijveld.nl/extensies/tags-filter-moduleMit kleinen Modifikationen ist es auch möglich, dass nur vordefinierte Tags in der Liste der Filter erscheinen...
-
Ich nehme an, du redest von einer javascript funktion...
Von wo willst du den Wert denn auslesen? Aus dem DOM? Oder aus einer anderen Funktion? Sind irgendwelche Klassen vorhanden?
Wie sieht es mit dem Scope der Variable aus? Ist die Variable X überhaupt im Sichtbarkeitsbereich der Funktion?
-
Hallo,
Das Stichwort dazu heisst ExifOrientation. Aufnahmen mit dem Smartphone oder neueren Kameras wird in die Exif-Metadaten eine Orientierung verpasst. Anhand dieser Informationen kann dann das Bild beim upload gedreht werden.
Ich würde hierfür ImageMagick verwenden. Die Funktionen rotateImage und flopImage eignen sich hierzu super. Ich habe für die JoomGallery schonmal sowas gemacht:
Code
Alles anzeigen/** * Method to rotate the images (thumb,detail,original) based on exif data * * @param img the current processed image * @return image the processed image (desinationIMG) on success the original one (img) on failure * @since 3.4 * */ protected function reflectImage($img) { $with = imagesx($img); $height = imagesy($img); $originOfX = $with-1; $originOfY = 0; $with_original = -$with; $height_original = $height; $desinationIMG = imagecreatetruecolor ($with, $height); if (imagecopyresampled ($desinationIMG, $img, 0, 0, $originOfX, $originOfY, $with, $height, $with_original, $height_original)) { return $desinationIMG; } return $img; } /** * Method to rotate the images (thumb,detail,original) based on exif data * * @param transMethod will it be transformed by imagick (im) or GD (gd) * @param exifData exif header of the uploaded image * @param imgType image format type of the uploaded image * @param imgOrient imagik: orientation of image * @param imgPaths array of the three images (original, detail, thumbnail) * @return boolean True on success, false otherwise. * @since 3.4 * */ protected function adjustImageOrientation($transMethod, $exifData, $imgType, $imgOrient, $imgPaths) { if($exifData && isset($exifData['Orientation'])) { $orientation = $exifData['Orientation']; if ($orientation != 1) { // rotate the images one by one foreach ($imgPaths as $key => $path) { // check, if imagemagick is available if ($transMethod == 'im' && extension_loaded('imagick')) { // use imagemagick to rotate the image JLog::add('rotate image with imagick', JLog::DEBUG, 'joomgallery'); $imgToProcess = new imagick($path); $imgToProcess->setResourceLimit(imagick::RESOURCETYPE_MEMORY, 1); switch ($imgOrient) { case imagick::ORIENTATION_TOPLEFT: break; case imagick::ORIENTATION_TOPRIGHT: $imgToProcess->flopImage(); break; case imagick::ORIENTATION_BOTTOMRIGHT: $imgToProcess->rotateImage("#000", 180); break; case imagick::ORIENTATION_BOTTOMLEFT: $imgToProcess->flopImage(); $imgToProcess->rotateImage("#000", 180); break; case imagick::ORIENTATION_LEFTTOP: $imgToProcess->flopImage(); $imgToProcess->rotateImage("#000", -90); break; case imagick::ORIENTATION_RIGHTTOP: $imgToProcess->rotateImage("#000", 90); break; case imagick::ORIENTATION_RIGHTBOTTOM: $imgToProcess->flopImage(); $imgToProcess->rotateImage("#000", 90); break; case imagick::ORIENTATION_LEFTBOTTOM: $imgToProcess->rotateImage("#000", -90); break; default: // Invalid orientation break; } $imgToProcess->setImageOrientation(imagick::ORIENTATION_TOPLEFT); $imgToProcess->writeImage(); } else { // use GD 2 to rotate the image !!needs lots of memory!! JLog::add('rotate image with GD', JLog::DEBUG, 'joomgallery'); // select image type if ($imgType == IMAGETYPE_JPEG) { $imgToProcess = imagecreatefromjpeg($path); // jpg } elseif ($imgType == IMAGETYPE_PNG) { $imgToProcess = imagecreatefrompng($path); // png } elseif ($imgType == IMAGETYPE_GIF) { $imgToProcess = imagecreatefromgif($path); // gif } else { $imgToProcess = imagecreatefrombmp($path); // bmp } if ($imgToProcess == false) { return false; } // choose operations based on exif orientation $reflection = false; $angle = 0; switch ($orientation) { case 2: $reflection = true; break; case 3: $angle = 180; break; case 4: $angle = 180; $reflection = true; break; case 5: $angle = 270; $reflection = true; break; case 6: $angle = 270; break; case 7: $angle = 90; $reflection = true; break; case 8: $angle = 90; break; } // Rotate the image with the given angle if ($angle) $imgToProcess = imagerotate($imgToProcess, $angle, 0); if ($imgToProcess == false){ return false; } // Reflect the image if necessary if ($reflection) $imgToProcess = $this->reflectImage($imgToProcess); // write the rotated image if ($imgType == IMAGETYPE_JPEG){ if (imagejpeg($imgToProcess, $path) == false){ // jpg return false; } } elseif ($imgType == IMAGETYPE_PNG) { if (imagepng($imgToProcess, $path) ==false){ // png return false; } } elseif ($imgType == IMAGETYPE_GIF) { if (imagegif($imgToProcess, $path) == false){ // gif return false; } } else { if (imagebmp($imgToProcess, $path) == false){ // bmp return false; } } } } } } return true; }
Mit diesem Script wird geprüft, ob ImageMagick auf dem Server verfügbar ist. Wenn ja, wird die Drehung mit ImageMagick gemacht, ansonsten mit GD.
Vielleicht hilft dir das...
-
In deinem Fall würde es reichen, diese CSS Regeln in deinem Template zu ergänzen (z.B mit einer custom.css):
Code
Alles anzeigen.sppb-addon-image-content .sppb-image-holder { background-repeat:no-repeat; -webkit-background-size:contain; -moz-background-size:contain; -o-background-size:contain; background-size:contain; background-position:center; width: 200px; height:0; padding-top: 200px; } .sppb-addon-image-content.aligment-left .sppb-content-holder { padding: 0px 0 50px 50px; } h3.sppb-image-content-title { padding: 0px 0 50px 50px; } @media screen and (min-width: 768px) { .sppb-col-sm-offset-6 { margin-left: 200px; } }
Wenn also alle Bilder die gleiche Grösse haben sollen, reicht eine einfache CSS-Lösung für dein Problem
Ansonsten müsste man die Zeilen, welche 200px (also die Bildergrösse) beinhalten per Overwrite, inline im php berechnen...
Lg
-
Oft werden Bilder als Hintergrundbilder gesetzt, damit man das Bild weniger einfach lokal abspeichern kann. Dies macht aber nur mit einer zusätzlichen blockierung des Kontext-Menüs sinn:
Um trotzdem das Verhalten eines echten img-Elements zu erhalten kann man folgende CSS-Styles dem element verpassen:
Code
Alles anzeigen// CSS Code .image1 { background-image: url('img/image1.jpg'); background-repeat:no-repeat; -webkit-background-size:contain; -moz-background-size:contain; -o-background-size:contain; background-size:contain; background-position:center; width:100%; height:0; padding-top: 69%; // padding-top: (Höhe / Breite * 100) }
eventuell klappt es mit diesem CSS auch bei dir
-
Ja, damit erteile ich aber dieser Gruppe die Berechtigung in allen Beiträgen den Status bearbeiten zu können.
Naja, vorübergehend wird das reichen...
-
-
Auch das ist mit particle.js möglich. probier es aus. Einstellungen unter particles.js wiefolgt vornehmen:
Eine jommla extension, welche particles.js verwendet, kann also mit minimalem Aufwand im Code diese Funktion ergänzen...
-
Das Codewort heisst particles.js
Nach kurzem googeln nach "joomla slideshow particles" habe ich folgendes gefunden:
http://demo.inspiretheme.com/p…php/particles/hero-slider
Ich bin sicher, du findest noch mehr...
Lg
-
Grundsätzlich verwende ich unter Joomla statt dem $ direkt jQuery. d.h:
Ich habe auch schon festgestellt, dass die ready-function unter Joomla nicht "korrekt" funktioniert. Der Code innerhalb von "jQuery(document).ready(function) {" wird ausgeführt, obwohl das DOM nich nicht bereit ist. Als Quick&Dirty-Abhilfe half mir ein zusätzlicher Timer innerhalb der ready-function:
Diese Lösung ist alles andere als schön, jedoch war es die einzige Möglichkeit, den Code zum laufen zu bringen.
Wenn jemand eine Antwort hat, warum die jQuery ready-function in Joomla nicht korrekt funktioniert, wäre ich sehr interessiert...
-
Hallo zusammen,
Soweit ich das sehe, bin ich mit einem Joomla-Bug konfrontiert worden. So wird er hervorgerufen:
1. neue Benutzergruppe direkt an Public untergeordnet erstellen
2. In der Konfiguration/Beiträge/Berechtigungen alle Einstellungen für diese Benutzergruppe auf verebt belassen (somit ist die errechnete Berechtigung in allen Punkten "Nicht erlaubt (vererbt)")
3. In einer bestimmten Beitrags-Kategorie dieser Benutzergruppe alle Berechtigungen erteilen (insbesondere Status bearbeiten)
4. Einem bestimmten Benutzer diese Benutzergruppe zuweisen
5. Im Frontend ein Menüeintrag "Beitrag erstellen" und in den Optionen die Kategorie auswählen, bei welcher der Benutzergruppe (3.) alle Berechtigungen erteilt wurden
6. Mit diesem Benutzer im Frontend einen Beitrag erstellen
Es zeigt sich nun, dass im Beitrag-Erstellen-Formular unter Veröffentlichen die Einstellungen zum Status nicht getätigt werden können. Wird der Beitrag gespeichert ist sein Status nicht veröffentlicht. Man kann nun jedoch den Beitrag nochmals bearbeiten und nun die Einstellungen zum Status bearbeiten...
Meiner Meinung nach sollte es in diesem Fall möglich sein, beim Erstellen des Beitrages die Status Einstellungen zu tätigen. Schliesslich eröffnet man einen Beitrag in einer Kategorie, in welcher man sämtliche Berechtigungen hat.
Habe ich da eine Einstellung übersehen, oder ist das tatsächlich ein Joomla-Bug? Dass dies von Joomla so gewollt ist, kann ich mir nicht vorstellen!
Um das Problem zu beheben, muss ich dem Benutzer global die Berechtigung zum bearbeiten des Status in allen Beiträgen einräumen. Nur dann ist es dem Benutzer möglich, in seiner Kategorie bereits bei der Erstellung des Beitrags den Status auf veröffentlicht zu setzen.
Hatte bereits jemand mit gleichem Problem zu kämpfen? Sieht da jemand eine schnelle Lösung?
Lg
Manuel
-
Damit lässt sich, soweit ich das sehe, nur die Sichtbarkeit der Schlagworte in den Beitragsansichten steuern. Einem Besucher werden dann nur die Schlagworte angezeigt, bei welchen er gemäss Zugrifssebene die Berechtigung hat diese zu sehen. Ein Schlagwort, welches gesetzt ist, er jedoch nicht sehen darf bekommt er in der Beitragsansicht somit nicht mehr zu Gesicht.
--> Dies hat leider nicht die gewünschte Wirkung. -
Gibt es eine Möglichkeit in Joomla, dass ein bestimmtes Schlagwort nur von Usern einer bestimmten Benutzergruppe verwendet werden kann?
Sodass nur Benutzer mit der notwendigen Berechtigung das Schlagwort in ihrem Beitrag verwenden dürfen?
-
Zitat
TCPDF ERROR: Unable to create output file: /homepages/26/d282879161/htdocs/dehag2015/invoices/anmeldebestätigung_1500.pdf
Hier scheint es ein Problem mit dem Pfad zu geben, in welchem TCPDF die pdf Datei zwischenspeichert. Kontrollier mal, ob der Pfad auf dem Server existiert und ob die Berechtigungen stimmen...