Jump to content


  • Posts

  • Joined

  • Last visited

Profile Information

  • Gender
    Not Telling

Recent Profile Visitors

1,779 profile views

nurkka's Achievements

Jr. Member

Jr. Member (3/6)



  1. Does anyone know how one can add a style to the TinyMCE styles dropdown, which applies a css class to several HTML-Elements at once? I managed to do it with JSON like so in the "Default setting overrides JSON text" field: { "style_formats": [ { "title": "Styles", "items": [ { "title": "Center", "selector": "p,h1,h2,h3,h4,h5,h6", "classes": "text-center" } ] } ] } But how is the syntax for achieving the same within the field "Custom style formats CSS"? Or is this simply not possible (yet)?
  2. I noticed that, in my case, I cannot have more than one CKEditor field with mystyles.js on the same template, except within repeaters or repeater matrix fields. The solution was to configure mystyles.js only for the first textarea CKEditor field and to use the feature "Inherit settings from another CKE field" for the others. Then the custom styles work as expected.
  3. Hi kongondo, I just watched the video and it looks very good! I already sent some suggestions a while ago, but I wanted to repeat an important one: I have some projects where the clients have lots of PDFs with very long detailed technical names. I assume the PDFs won't have thumbnails in Media Manager, so it would be very good if one could switch the view to a really compact list view, where the filenames would not be cropped. Perhaps in this list view also some other meta data could be shown, like filesize etc. Also I would add that the filenames or image titles as shown in the video are cropped in a way it makes them nearly unreadable. So I am wondering if you could consider an option to not crop those titles or filenames at all?
  4. Hi @kongondo It would be nice to have a full text search, which would always be visible. If this is not possible, it would be nice, if the filter would be always open, so one can start typing immediately and previously set filter values would be visible right away. Also a more compact view for pdf documents would be great, because the current grid and list view both require a lot of space if one has some hundred pdfs in the library. In a past project I added the pdf filenames to the grid view by modifiying some javascript files, to have a more compact view with the filenames visible. Perhaps, pdf icons could be a lot smaller or omitted at all in the document view. The UI elements could be smaller and information like how many times an image was used, filesize, etc. could be hidden and made visible with a toggle button, so everything would take up less space and more image and document items would fit on the screen.
  5. Hi @kongondo First of all thank you for the awesome plugin! It would be really awesome if the selection would run through an interface with a folder structure. And it would be perfect if one could define per template in which folder the selection would start. An example: Assuming we have a folder "Employee photos" and a folder "Customers" (or a lot more folders and subfolders 😉 ), then it would be perfect if one could give the input field the information that the image selection on employee detail pages starts in the folder "Employee photos". That would be much easier for the clients/editors to work with. And without a folder structure, it would be great if one could define per template with which category or tag the input field starts, i.e. to have a ore-defined filter setting per template.
  6. Hi everybody, in another post some weeks ago @ryan mentioned that the language-alternate fields were deprecated and that he doesn't expect many will ever use them. As I am using language-alternate fields for image-fields and url-fields, I wonder if there is any other, non-deprecated solution? Thanks and best regards
  7. You could use the redirects plugin: https://processwire.com/modules/process-redirects/ It also allows to import the redirects as comma separated list, where each line contains one redirect.
  8. Hi everybody, is it possible to hide a page in the default language of a multilanguage website? The page’s settings tab doesn't seem to allow it, because there is no checkbox next to the default language’s url and it can’t be left empty. For the time being I implemented a checkbox "hide in default language", and if checked, the page outputs a wire404(); But is there any native way to do it? Thanks and best regards
  9. Hi everybody, some time ago I implemented a blog in ProcessWire with the comments function. The comments have avatar images which were displayed based on the commentators email address. To manage the avatar images and some other data, I added custom fields to the user template. This used to work perfectly, but today I noticed that the avatar images were missing. $user = users()->find("email=mail@example.com"); echo $user->first()->get('name'); // works perfectly echo $user->first()->get('user_display_image'); // doesn't work anymore UPDATE: I just found out, how to get the field value again. One has to check the option »Make field value accessible from API even if not viewable«. Screenshot: I assume, the functionality must have been changed sometime between 2019 and 2021. With the above setting it works again.
  10. Thanks BitPoet, the following code worked: function custom_debug_if () { return true; // simply for test reasons } $config->debugIf = 'ProcessWire\\custom_debug_if'; Using if(wireIsCallable($debugIf)) instead of if(is_callable($debugIf)) in ProcessWire.php made no difference. Thanks again and best regards!
  11. Hi everybody, while testing $config->debugIf, I noticed, that it wouldn't work with custom functions. Example /site/config.php: function custom_debug_if () { return true; // simply for test reasons } $config->debugIf = 'custom_debug_if'; This doesn't work because the if(is_callable($debugIf)) in ProcessWire.php returns false. The debugIf-documentation says: * 2) Your own callable function name (i.e. "debug_mode") in /site/config.php that returns * true or false for debug mode; How is it possible to use this feature? Thanks and best regards!
  12. Hi! The feature Automatic Page Name Format of the PageTable field has stopped working after a ProcessWire upgrade. I was using the following configuration string, which worked perfectly before: Y-m-d_H-i-s_\d\o\w\n\l\o\a\d The config string was interpreted as PHP date format, where you can escape characters to mark them as non-date-formatting characters. The PHP docs state the following: PageTable generated the page names like the following example: 2017-03-13_12-17-24_download But after a ProcessWire upgrade (I assume it must have been version 3.0.123) the page names are now generated as follows: y-m-d-h-i-s-d-o-w-n-l-o-a-d The config field settings description now states: So, I tried several other configurations, like: Y-m-d:H-i-s \d\o\w\n\l\o\a\d Which renders the date part correctly, but the string "download" is unfortunately also processed as a date format. I assume the configuration setting is somehow filtered by ProcessWire before it is passed to the php date function. This was not the case in older versions of ProcessWire. Sorry, I haven't the time to test with which version the behaviour changed. The feature stopped working somewhere in january 2019, so I assume it must have been the upgrade to ProcessWire 3.0.123. Has anyone similar issues with the Automatic Page Name Format in PageTable?
  13. Hi kongondo, I just wanted to report a little UI inconsistency: I was editing a CKEditor-textarea and inserted a link by using "Select Media from Media Manager". In the Media Manager modal window, I used the table view, in order to see the filenames. Now, selecting any of the thumbnails didn't give any visual feedback. The red frame indicator only appears in the grid view, but not in the table view. I did a clean install of Processwire and Media Manager, but the issue persisted. Update: I think I found the issue. Here is a fix for insertMediaLINK($s) in MediaManager.js: Before: $inputs.each(function () { // skip current input if ($(this).attr('id') == 'media-' + $dataValue) return; // invert checked status $(this).prop("checked", inverseState).change(); }); After: $inputs.each(function () { // skip current input var $dv = $(this).attr('id').substr(6).replace('-tabular', ''); if ($dv == $dataValue) return; // invert checked status $(this).prop("checked", inverseState).change(); }); The line was taken from removeMediaThumbsView($a) in InputfieldMediaManager.js.
  14. Problem solved – Ryan pushed a fix: https://github.com/processwire/processwire/commit/f5f83e814880c862b5bfd0ee935b8c9e7699bd74
  15. Thank you both! In the meantime I have found the corresponding line of code in the FieldtypeOptions module. Before saving the options, ProcessWire checks, if the current user is a superuser. So any non superusers cannot save option values (in the current / newest ProcessWire version 3.0.148). So I modified the corresponding if statement, in order to allow users with "field-admin" permission. Thanks again for your suggestions. I took the opportunity to take a closer look at Tracy Debugger and I will definitely keep the page field select module in mind.
  • Create New...