kongondo

Dynamic Selects (Commercial Module)

35 posts in this topic

Hi there,

I was just testing the module out, very cool. I wonder, Is there any way to redirect the latest selection to it's page (on frontend using MarkupDynamicSelects)? For example you select continent, then country, then city and you click on "Go" button which redirects you to the city page you have selected. 

Share this post


Link to post
Share on other sites

Hi @Maverick.

Thanks for you custom.

Currently, not out of the box. but should be very easy to achieve using your own JavaScript. It would go something like this

  1. Render your DynamicSelects form
  2. Next to it, in your template file, add your Go button or link
  3. Using JavaScript (e.g. jQuery) disable that button or link
  4. Once a 'last' selection is made, using JavaScript, change the value of your Go button/link to the URL of the last selection. For instance, if a link, we would change its href. 
  5. On click, the user gets redirected to the selected 'URL'.

Initially, I was thinking the developer could build in the 'URL' themselves, i.e. build it client-side using JavaScript, from the select option's label. For instance, if we have a city Berlin, we would build our ProcessWire URL off that. But that is not very friendly. I think it will be better if a I added a third $options argument to MarkupDynamicSelect's render() method. You can then specify what extra info for the results to return, e.g. url was passed in the options, it would result in:

<select>
  <option value='1234' data-url='/continent/country/city-page-1/'>City 1</option>
  <option value='1235' data-url='/continent/country/city-page-2/'>City 2</option>
  <option value='1236' data-url='/continent/country/city-page-3/'>City 3</option>
</select>
   

You would then grab the selected option's data-parameter, e.g. in the case above, data-url, and do whatever you want with it. 

Is there any other value you think would be useful to return other than url? i.e. what other data-xxx would be useful?

Thanks.

Share this post


Link to post
Share on other sites

Hi,

Nice module, but I'd like to be sure.
If a value isn't available, there's no way to input into the database, right? [cfr autocomplete].

Kind regards.

Share this post


Link to post
Share on other sites

Hi @videokid,

Thanks for your interest in the module. Dynamic Selects only works with existing values. So, no, there's no way to input new values. Given that values can be anything from a list of users, to fields, to page titles, file or image names, such a feature will be quite the task to pull off. What did you have in mind?

Share this post


Link to post
Share on other sites

Hi @kongondo,

well, currently I have this set-up:

- brands
 |--> Alfa Romeo
     |-> 159

 |--> Volkswagen
     |-> Golf

in the back-end two page-reference fields, option autocomplete:

  [ brand ] [ brand_type ]

So, I was thinking, after choosing the eg VW,  a list of models would come up.... and if there's a new model, just type it in [autocomplete] and it would be added as child under the brand....
Does it make any sense what I'm trying to explain here?

In my case ' page title ' would be sufficient.

Thank you already for your answer!

Share this post


Link to post
Share on other sites

@videokid. I see what you mean. This would probably only work for parent > child relationships. Obviously it would be limited to the backend (FieldtypeDynamicSelects) only. I'll have a think.

Share this post


Link to post
Share on other sites

@kongondo

Thanks for the response.... Back-end, sure, I'm not looking for a front-end solution.... 
Of course I haven't used your module, but my gut feeling says that indeed the 'relationships'-thing might be it... 

Thanks already for putting some thought into it....

Share this post


Link to post
Share on other sites

Hi @kongondo, I have just purchased the module and started testing it. One thing I ran into immediately is that it does not seem to support multilanguage text fields, even Title does not show up in the Data Source options. Are you aware of this? 

For now I can bypass this by adding an extra single language textfield, but I would expect it to work out of the box. Perhaps just by showing the Default language content.
For large existing multi-lingual sites this could be a big issue.

Share this post


Link to post
Share on other sites

Hi @eelkenet.

5 hours ago, eelkenet said:

I have just purchased the module and started testing it.

Thanks for the purchase.

5 hours ago, eelkenet said:

One thing I ran into immediately is that it does not seem to support multilanguage text fields, even Title does not show up in the Data Source options. Are you aware of this?

Yes I am. This will be added in the next version. I'm working on it for the next couple of weeks.

Thanks

1 person likes this

Share this post


Link to post
Share on other sites

Dynamic Selects version 005  (released (16/07/2017))

Glad to announce that the latest release of Dynamic Selects is now available for Download/Purchase.

Changelog

  1. Dynamic Selects is now fully multi-lingual! Thanks @eelkenet for reminder :). Relevant fields and labels now shown in user's language if available, with fallback on default if not.

Screenshots

Backend Dynamic Selects Fields

ds_backend_field_edit_ml_version_5.thumb.png.e7f71069e87c0e261ddfcac9ed90d1c1.png

Demo

Backend Dynamic Selects Page Edit

ds_backend_edit_ml_version_5.thumb.gif.7dc3d1dde1f5e90d983f75f7d24079ca.gif

Frontend Dynamic Selects

ds_frontend_ml_version_5.thumb.gif.bd07eac597283696d7d629d77d9391c3.gif

4 people like this

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Aleksey Popov
      Hello. My name is Alexey, I'm a designer.
      So it turned out that I got carried away by ProcessWire and made several sites (links below the post). I have a desire to make template sites for sale on various markets (where possible), as well as on my own site.
      I'm clear understand the difference between ProcessWire and WordPress and it's not about templates, but about simple, ready-made solutions that can been easily customized if necessary.
      I would like to discuss here the possibility of such activities in particular the rights of modules authors. Consider for example a hypothetical site: 
      A simple corporate site in which (commercial and non-commercial) modules are used:
      AdminTheme BatchChildEditor ClearCacheAdmin EmailNewUser FieldtypeColorPicker FieldtypeMatrix FieldtypeMultiplier FieldtypeRangeSlider FieldtypeRepeaterMatrix FieldtypeSelect FieldtypeTable FieldtypeTextareas FormBuilder ImportPagesCSV InputfieldCKEditor MarkupSimpleNavigation MarkupSitemapXML PageEditPerUser PageTreeAddNewChildsReverse ProcessCustomUploadNames ProcessDatabaseBackups ProcessExportProfile ProcessTemplateEditor ProcessWireUpgrade TextformatterAutoLinks TextformatterVideoEmbed  
      Obviously the use of commercial modules should be discussed with Cramer (or others) personally but can I use non-commercial ones in the similar projects? 
      In general maybe this has already been discussed?

      ——
      Some of my works of PW:
      http://www.twenty-studio.ru/
      http://ekaterinburg.guide/
      http://bonus.koriphey.ru/
      http://trustural.ru/
      bonus.koriphey.ru
      http://plus.koriphey.ru/
    • By kongondo
      Variations
      Released 29 May 2017
      Variations is a simple yet powerful commercial ProcessWire module that allows website editors to create attributes and their values and from those generate variations of any entity, most notably products.
      The module consists of  FieldtypeVariations and InputfieldVariations as well as a ProcessVariations for managing variations configurations and attributes.   Setting up the field is quite easy.   First, create a field of type Variations. Define some custom inputs that will need to be directly edited on the page containing the field, for instance a product price, SKU, etc.   Secondly, via the Inputfield, create a couple of attributes.   Thirdly, create a variations configuration and add the attributes and values you want in the configuration. Link that variations configuration to your page and the module will automatically generate all possible combinations (variations) of the attribute values in that configuration. These, together with the custom inputs you created when setting up the field will be displayed on the page (e.g. a product page), ready for editing. This makes this module quite unique; variations are defined at the page-level rather than at the field level. This presents lots of possibilities such as infinitely reusable attributes and variations configurations.    For those using Padloper, integration with the e-commerce platform is quite simple as demonstrated in this tutorial.  The module consists of 4 modules
      ProcessVariations FieldtypeVariations InputfieldVariations VariationsCustomTableManager (autoload module, working behind the scenes) Video Demo: https://youtu.be/T93nn96UL8o
      Documentation: https://variations.kongondo.com/
      Shop: https://processwireshop.pw/plugins/variations/
      Requires: ProcessWire 2.5 or newer
      Features
      Easily create variations of anything, including products for e-commerce websites, etc Create an attribute once, use it everywhere, multiple times, picking and choosing all or only the attribute values you want Bulk editing of variations configurations and attributes Reusable variations configurations Works with Padloper out-of-the-box with minimal coding User-friendly, intuitive and easy to set up
    • By kongondo
      Introducing Variations, an Input- and Fieldtype for product variations and their attributes.
      Product variations is a topic that has been coming up now and then, especially in the recent past.  This module seeks to fill this gap. Though it's in its early stages of development, it is already functional and can be used as is. I decided to make an early announcement (modules development forum) in order to get early feedback from potential users. 
      The module is an alternative take on how variations can be built for a product. Imagine the ubiquitous T-Shirt. The product could vary by ...Size, Colour, Material, etc...These variations could in turn have internal variations, i.e. attributes....so, Size [Small, Large], Colour [Red, Blue]...etc; you get the drift.
      The usual approaches to building variations have been either to use Multiple pages, Repeaters, Page Table, Table or Matrix (limited to 1x1 variations). In this module, we do it a bit differently.
      First, the variations occur not at the Field level (meaning all product pages would have the same variations and attributes for each template) but at the page level. Secondly, there are no multiple pages for each variation and/or attributes; a product is a single page. The variations and their attributes are defined by site editors at the page level. Once a variations configuration has been defined, it is applied to the page and all possible combinations are generated (i.e. the Red,Small,Cotton; Red,Large,Cotton, etc) in the Inputfield. There is no limit to the number of variations and attributes that can be defined, although you will be amazed at how quickly the combinations grow! Prices are entered for each combination when editing the page. Combinations without prices are not saved to the database. Please note that prices cannot themselves vary at the page-level. Meaning, you cannot have ONE variation configuration that has different price inputs per product in the same FieldtypeVariations field.
      The module ships with an API for outputting variation combinations in the frontend. Search, database and in-memory work as normal in the frontend. In the backend, DataTables provides a nice paginated, filterable table. Prices can be entered on any pages (of the table) without loss of data (meaning you can enter prices on page 1, scroll to page 10, enter more prices, filter or search the products table, enter more prices and finally save; no data will be lost).
      I still have a couple of ideas and plans pending but would love to hear from you, thanks.
      Below is a short video demo of the module in its current state. Things may/will change, both UI and features. Btw, the Fieldtype, although primarily targeted at commerce applications, is by no means limited to this. Other uses requiring combinations of whatever number of variables are very much within the remit of the module.
      Planned/Hoped for features
      Import/Export product variations and attributes (Excel, etc) Full integration with Padloper (I will have to  discuss with @apeisa) SKU fields for each product variation Add/Remove extra subfields, e.g. multi-currency prices (currently there is only 1 input for each product variations' price) Product variation images? Etc... Please not this module is not related to this other planned module (but it may eventually).
      Sneak Peek Demo
       
       
    • By Robin S
      It occurred to me that a good addition to the forums would be some way for PW users to indicate support for a module idea. Similar to the Wishlist subforum but for functionality that belongs in a module rather than in the core.
      I'm thinking mainly of commercial modules, although if someone wanted to take up a module request and release it freely that would be cool.
      So users could propose a module idea, then others would vote for it (using likes or some special voting option) so that a vote means "I'd buy that", with the expectation of pricing in the general ballpark of Ryan's pro modules and Apeisa's PadLoper.
      As a beginner-intermediate developer I'm really enjoying working with PW and learning as I go - the API is so intuitive that I've been able to build my own solutions to things that in another CMS I would have been reliant on someone else's module to achieve. But there are things that I know are beyond my current skills, and for those things I look to third-party modules. My clients are non-profits and small businesses so I'm never likely to have the budget to commission a custom module alone. But there might be other PW users out there with similar needs and maybe that demand would make it worthwhile for an experienced developer to take on a proposal and release it as a commercial module. Currently there isn't a way to measure the demand for modules apart from occasional forum posts like "Is there a module that...?"
      Any thoughts on this?
      Here's a module request to start off with:
      I would be happy to buy a full-featured event calendar module. I've searched the module directory and the forums and Lindquist's module is the most feature-rich I've seen, but it's in an alpha proof-of-concept state and some important functions aren't implemented. Features I would be looking for are:
      Calendar grid interface in admin, allowing for easy addition and editing of events. (Nice but non-essential) Week and day views in admin, in addition to month view, with drag editing for event date and duration (I'm dreaming of something awesome like the dhtmlxScheduler interface or Fullcalendar interface). Although drag operations would really need an undo to correct accidental edits, so this may be more trouble than it's worth. Events are edited in a modal window, to avoid losing one's place in the calendar. Recurring events, with user-friendly selection of recurrence options. The ability to individually edit or remove an event that is a child of a recurring event (i.e. make an exception for that individual event). (Nice but non-essential) A couple of out-of-the-box minimal rendering options for the frontend (read-only calendar view, list view). This is the kind of module I need frequently. I've been lucky that I haven't had a client request a full event calendar since I've been using PW, but it's only a matter of time. I'm sure there are other PW users who need this and who would, like me, be happy to pay for such a module.