-
Posts
1,517 -
Joined
-
Last visited
-
Days Won
21
Everything posted by elabx
-
If you have command line access, try: locale -a This lets you know the available locales in the server. There might also be a PHP way I guess. If the ones you need are missing, you are going to have to install them. Not an expert on this field but I've done it on a few servers and it's not very complicated googling a little bit (also asumming you're not on shared hosting and have shell access to the server to make this installation).
-
Dynamic parent for creating new page with page reference field
elabx replied to bbb's topic in General Support
Oh you are very right! I see that InputfieldPage has a $pagesAdded property that seems to be filled only when pages are added, WHAT IF, you check both fields for this property on a hook right before saving the page. This way you can see if a brand has been added in the request, and if any new created model also, change its parent accordingly. -
Dynamic parent for creating new page with page reference field
elabx replied to bbb's topic in General Support
Doesn't it work like that straight out of the box like that? I'd think it would, from the logic leading to this setAttribute. My first approach would be to try just that inside the hook: $event->object->setAttribute('value', $newCreatedPage); But honestly haven't tried! -
Woah nice! Have thought of doing this since using Less parsing on PHP in some projects, what Less parser are you using? I imagine something like this that lets you create an admin theme on the fly (with a UI), maybe you just want to change a couple colors, set through color pickers, save, preview and enable it. 10 min job!
-
Dynamic parent for creating new page with page reference field
elabx replied to bbb's topic in General Support
$wire->addHookBefore('InputfieldPage::processInputAddPages', function($event) { $field = $event->object; $page = $field->hasPage; if($field->name == "model"){ $brand = $page->brand; if($brand){ $dynamicParent = $page->brand; $field->set("parent_id", $dynamicParent->id); } } }); I think this should work! Let me know if it does ? -
I think if they exist as image variations they have to be rebuilt.
-
I think $event->arguments is a method not an Array/WireArray. EDIT: Also I think you might just want to set your hook before save not after and or you might get into a recursive loop with setAndSave, and just reassign the $page as an argument. $page->pad_discount = $discount; $event->arguments(0, $page);
-
Is it possible to enable to select the parent property as a subfield inside an InputfieldSelector? See? No parent ?
-
Could you give us a more concrete code example of what you are trying to do? Maybe you can reuse the module functions and you are rather trying to extract the functions from the module into your template files.
-
Is there a way to allow certain users to have a reduced session timeout? Maybe through a hook?
-
Working with PW located on remote server; git, etc.
elabx replied to John W.'s topic in General Support
I normally develop in a remote server and connect with my text editor through SSH. (using emacs, ironically haha) Normally on the dev server, I install the things needed to compile frontend stuff (if needed) and just run the tasks either on a background process or run them everytime I'm developing in a terminal window. If I need sync with live, I use git and manually push (have yet to look into fancy hooks integration) On this thread you can take a look at some comments that talk about a very nice VSCode extension that mounts remote file systems through SSH: -
Does anyone know if it' s possible for file field to show the uploaded files whole names, and not abbreviate it with three dots.
-
I think somethin's wrong with my browser, I´m happily browsing the forum on my laptop.
-
I honestly don't have much examples to pick from, but managed servers from LiquidWeb have worked really well for me, as others have also pointed out about other companies, support is great. Need a PHP extension installed? Just raise a ticket and done! Maybe watch out on those who don't have good support opinions ?
-
My account gets locked by 15 minutes after failing to log in. It would seem to randomly fail and sessions last very little too. Is anyone experiencing this recently? Normally I would suspect my browser but I just can't find that could affect login, except LastPass extension, and already tried disabling it before logging into the forum.
-
I'd love if someone could come and give an opinion on why InputfieldPage has a getInputfield() method? I though that object was an InputfieldPage, not a Fieldtype. I'll have to take a look with Tracy Debugger later.
-
Hahah of course! This is super valid, maybe set the value field with the addOption() removeOption() methods (I think what is actually being rendered is an InputfieldSelect, sorry for the misguidance? https://github.com/processwire/processwire/blob/341342dc5b1c58012ae7cb26cffe2c57cd915552/wire/modules/Inputfield/InputfieldSelect.module#L173
-
Form buiilder is awesome because it does all it's heavy lifting with the same Inputfield classes you use in page edits, so it is indeed an InputfieldPage! Assuming this is renderd in an iframe try this code (try it in ready.php, I'm really not sure if its the same as doing it on init.php): $wire->addHookAfter('InputfieldPage::getSelectablePages', function($event) { $log = wire('log'); //The default PageArray getting selected through your field config $defaultSelection = $event->return; //This is passed through a parameter! //$forms->embed('form-name', ['contextPage' => $page]) $contextPage = $input->get->contextPage; //This would be form-builder page, where it actually renders! //which is not the place the iframe is rendered :) $page = $event->arguments('page'); $log->save("debug-pagefield", $page->name); $log->save("debug-pagefield", $defaultSelection); });
-
I don't think anything has changed since.
-
Check this out my friend: https://processwire.com/docs/tutorials/how-to-use-url-segments/ It's basically a way to not follow the routing of the page tree, so you can make up any possible route, and prepare your template's code for it, imagine this exist in the template file branch.php: <?php if($page->urlSegment1 == "es"){ $user->language = $languages->get('es'); // field output will be in spanish! }elseif($page->urlSemgent1 == "en"){ $user->language = $languages->get('en'); // fields will output in english! } I'm just not sure how multilang works without the root language segment.
-
I think you are going to have to use url segments on branch1, branch2 and the segments being the language names.
-
You can probably do this within the InputfieldPage::getSelectablePages hook, that way you can tweak the selectable pages, I'd also try tweaking the value attribute through another field, honestly can't think of the details right now but hope I have given you a hint on a possible solution.
-
[NOOB QUESTION] How to select a page in multi language environment?
elabx replied to Gadgetto's topic in Getting Started
You can do it multiple ways and that really depends on you! I will assume for now, that sidebar content wants to bring in some info from the articles section of your website. Lets say you get the idea to use the structure of the page tree to organise content and make it easy to get those articles to show on home page. So, you could pull something like this to get ten articles which are identified with the template "article" (that has title and summary fields!): $pages->find("template=article, limit=10"); Another way, could be to get all pages, whose parent has the template articles (for convenience, this template is used once throughout the whole site, to handle this parent page): $pages->find("parent.template=articles, limit=10") And another one to ask for the first page found with the template articles, and then get the first 10 children: $pages->get("template=articles")->children("limit=10"); Which is the best? It's your call! Will depend on a lot of things, just to give an example, on the last option to get the articles, I am assuming all pages under Articles, are actually articles. What if a page that is not an article exists under there?? Maybe something like: -
You could check ahead for a variable like this: $sliders = $page->blocks->find('slider=true') //Check if sliders are active if($sliders->count){ //Echo css/js } //Continue rendering
-
Could you show us a little bit more of code? I'm having a hard time understanding how the site is rendering.