Jump to content

torf

Members
  • Posts

    36
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

torf's Achievements

Jr. Member

Jr. Member (3/6)

8

Reputation

  1. Thanks @teppo!! Sometimes taking a second look helps. The Domain "view" is pointing to has a "www", while the backend I used has not. Now I know where I need to make adjustments.
  2. I have a strange issue when previewing unpublished pages, and need some advice how processwire is supposed to work: When I add a new page in my tree a logged in user can preview the page even when it is unpublished via the view button. On my production site this is no problem and would of course be the desired behaviour. But on my live site clicking on "view" ends in a 404 every time as long as the page is unpublished. That even happens when I'm logged in as superuser. What is the "normal" behaviour" and does anyone know what could cause that effect?
  3. If anyone stumbles over that again - deleting $this->message($event); did the trick. Now it works.
  4. Sorry, I've been offline shortly. Mostly the Error occurs in wire/core/sanitizer.php on line 2555: public function entities($str, $flags = ENT_QUOTES, $encoding = 'UTF-8', $doubleEncode = true) { if(!is_string($str)) $str = $this->string($str); return htmlentities($str, $flags, $encoding, $doubleEncode); //<-- Thats line 2555 } sometimes in wire/core/Notices.php Line 523 protected function formatNotice(Notice $item) { $text = $item->text; if(is_array($text)) { $item->text = "<pre>" . trim(print_r($this->sanitizeArray($text), true)) . "</pre>"; $item->flags = $item->flags | Notice::allowMarkup; } else if(is_object($text) && $text instanceof Wire) { $item->text = "<pre>" . $this->wire()->sanitizer->entities(print_r($text, true)) . "</pre>"; //<-- Line 523 $item->flags = $item->flags | Notice::allowMarkup; } else if(is_object($text)) { $item->text = (string) $text; } if($item->hasFlag('allowMarkdown')) { $item->text = $this->wire()->sanitizer->entitiesMarkdown($text, array('allowBrackets' => true)); $item->addFlag('allowMarkup'); $item->removeFlag('allowMarkdown'); } }
  5. I stumble upon a strange problem regarding images in rich text fields. For a section I use CKEditor for the Content. Additionally there is a imagefield for each page where inline images for this article can be uploaded. then the editor can take those images and embed them in CKEditor. In the Frontend the images are shown inline with a additional lightbox which is preformatted via ready.php: $wire->addHookAfter('TextformatterProcessImages::processImg', function(HookEvent $event) { $this->message($event); $pageimage = $event->arguments(1); $img = $event->arguments(0); if($pageimage) { $img->outertext = "<figure class='figure'><a data-fancybox='gallery' data-caption='{$pageimage->description}' class='lightboxclass' href='{$pageimage->url}'><img src='{$pageimage->size(600,0)->url}' class='figure-img img-fluid rounded' alt='{$pageimage->description}'/></a><figcaption class='figure-caption text-end'>{$pageimage->description}</figcaption></figure>"; } }); There is no Problem embedding and saving those images, but the moment a new article is published, and it has more than one image inline, the frontend gives me an "out of memory" php-error. PHP memory is set to 512MB which I think should be enough. Has anybody an idea if there is a problem that creates a loop in my script, or is it just not enough memory? Thanks for any help. PS: the problem occurs regardless of image size. If I take 12KB images or 12MB. It's always the same.
  6. Thanks, but what permission is it? If I knew I could just give this permission to my userrole, but only superuser seems to get the "choose parent" page. And I cannot give superuser rights to my users.
  7. I have a strange behaviour that I cannot fully understand. In my page there are child pages who themselves have subpages. Home Child 1 Child 2 Sub 2.1 Child 3 Sub 3.1 Sub 3.2 A couple of my roles have the right to add new subpages to any of the childpages. Works great if I use the treen navigation and "new" beside one Child. But if I use the "add new" button on the right, or the "add new" link from dropdown in the header, only the superuser is shown a page to choose the parent before adding the subpage. For any other user it directly creates a subpage in one of the children. Does anyone know which right is needed to get the selector for other roles than superuser?
  8. Thanks for this wonderful and extremely helpful module, but I was wondering if there is a possibility to assign more than one role to a user with this module? I have 4 roles with basically the same rights but access to different branches of my site (access is granted by role). Now if I give a user more than one of this roles Admin Restrict Branch gives them access to only the first branch but not the other ones. I'm aware that it is not possible to have multiple branches in one role, but is it somehow possible to mix branches with multiple roles for one user?
  9. Thanks. Yes I've read this one and I already use it. But the SU has the right to empty the Trash completely, while any non superuser has to go the whole way edit->delete->confirm for every single page in trash. What I try to achieve is making this button available for users below superuser.
  10. Maybe I'm missing a point here, but I could not get my users to empty the trash. In my site I've got a Couple of user roles with limited rights for different parts of my page. Above them all there is one role with access to the whole page, users and form entries but not superuser (due to the nature of my clients I do not want them to fiddle around with forms or modules). So some users have the right to delete pages, but cannot access the trash, while the "master role" is supposed to empty it from time to time. What rights do I need for this role to empty the trash without opening every page manually? Or is the "empty trash" button strictly for superusers?
  11. I have a page that has frontend and backend users. So frontend users register themself via the old Login/Register module and get assigned a special guest role, while backend users are made by the site-admin in backend. My problem is that frontend users have a lot of required fields (from name, phone number and address up to specific company information), while backend only need login, email, password and their role. If I mark all those extra fields as required, the site admin would have to fill them out in the backend as well when adding a new user. Is there any hook for adding the required status of those extra fields only in the frontend? Or seperate frontend and backend users in another way?
  12. I was trying to set up a workflow so a specific role receives an email when another role marks a page as "ready for publishing" via checkbox. Seems like this module does exactly that, but it's listed as not compatible with PW3.0. Has anybody tried it already or knows if it works?
  13. Thanks a lot - both of you. It works, and again I am a bit nearer to understanding how processwire works.
  14. Hi, I really got Stuck on a quite common Task, but cannot find the problem. The Idea was to have a checkbox in my backend, and set another integer field to 0 upon save if this checkbox is not checked. So I added the following code to my ready.php $wire->addHookBefore('Pages::saved', function($event){ $page = $event->arguments(0); if($page->hasField("my_checkbox")) { if($page->my_checkbox == 0) { $page->another_integer_field = 0; $this->message("This should have worked"); //for debugging only } } }); Everything works great, the debugging message shows up, but the value in "another__integer_field" does not change. Can anybody tell me where my mistake is?
  15. I see. Thanks for the clarification @Robin S I use a German backend translation and it seems the filter for showing only valid options does not show up in German... Sadly the selector is a bit more complicated in reality. Pages are chosen based on a value in another page selector field they hold. So the original selection is $wire->addHookAfter('InputfieldPage::getSelectablePages', function($event) { if($event->object->hasField == "choose_page") { $page = $event->arguments(0); $zv = $page->parent->title; $event->return = $event->pages->find("template=my_Template, field_in_my_Template=$zv"); } }); I do not think that can be achieved without php.
×
×
  • Create New...