Jump to content
teppo

Version Control

Recommended Posts

Sorry for the delay, folks – been a bit busy lately, but I'm now slowly trying to work my way through your reports :)

On 26.3.2018 at 4:05 AM, Robin S said:

Another minor UI thing: the new UI can look a bit funny with AdminThemeDefault and AdminThemeReno because opening the history doesn't trigger the core column sizing JS, so the height of fields in the same row isn't updated to match. It's not a big deal, and the issue doesn't occur for AdminThemeUikit so maybe not worth doing anything about.

...

If there is a column to the right of an open history container then the history gets overlapped by 1 pixel on the right edge. Again, not a big deal, but maybe these things could be avoided by using absolute positioning for the history container so it appears in a layer over the Page Edit interface and doesn't expand the inputfield column.

Using the core panel UI could be a nice alternative too, but I don't know how easy it is to inject HTML directly into this. I think it's only set up to handle iframes (which if so is a bit of a shame because it reduces the range of things the panel can be used for).

Version 2.1.6 includes a couple of fixes related to this one:

  • Revision tables are now vertically scrollable. This isn't necessarily a perfect solution, but at least the UI is now usable even if the inputfield itself is very narrow. I've also added some UI hints to signal if/when scrolling is expected.
  • InputfieldColumnWidths() is triggered after showing/hiding a revision table, so the first thing mentioned here should be fixed now (hopefully).

I couldn't reproduce the 1px overlap. Might've already fixed that one, or perhaps I just wasn't able to recreate the setup needed, but I'll get back to that if it's still an issue. The absolute positioning thing I kind of covered in my previous post (I'd prefer to avoid that), and the panel thing is exactly as mentioned above: they seem to require an URL, which is then opened in an iframe, and that would be a bit problematic (to say the least) for my use case here.

  • Like 1

Share this post


Link to post
Share on other sites

Hey @teppo - I haven't used this module in a long time, but I am playing around with v2.0 at the moment and I see that there is no repeater/repeatermatrix support at all. I understand the old/master version does have some repeater support though.

Are you planning on support? Any possible timeframe?

Thanks!

Share this post


Link to post
Share on other sites
On 4/19/2018 at 5:35 PM, adrian said:

Hey @teppo - I haven't used this module in a long time, but I am playing around with v2.0 at the moment and I see that there is no repeater/repeatermatrix support at all. I understand the old/master version does have some repeater support though.

 Are you planning on support? Any possible timeframe?

Thanks!

@teppo Any news here?

I would very much like to use the module with a repeater on our intranet page 😉 

Share this post


Link to post
Share on other sites

Hey @adrian and @zoeck,

Sorry for not responding to this – I've been kind of tied elsewhere, and totally forgot this question. Bad excuse for bad communication, I know 🙂

I'll have to dig into this. I didn't intentionally strip any features from 2.0, but it's entirely possible that something in Admin Theme Uikit (assuming that you're using that) or the updates I did for 2.0 did indeed disable Repeater Matrix support. I had to put the development of this module on hold since there were some difficult (or at least time-consuming) UI issues to tackle, and I just didn't have the bandwidth for that.

I'll do my best to try to find some time soon(ish). Sorry, but can't really promise any kind of timeframe right now.

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites

Hi @teppo

We have difficulty using your module with the TemplateEngineFactory and the attribution of $view.

$view = wire("view");
$code = .....;
$view->set('myVariable',$code);

$view is NULL when trying to get a preview, so we get an error.

Any idea how to resolve this?

 

PS. This is the TemplateEngineFactory module that prevents previewing pages under /admin.

Share this post


Link to post
Share on other sites

Hi @Guy Verville.

I took a quick look at TemplateEngineFactory.module.php, and this is what I've found out so far:

Without modifying TemplateEngineFactory itself, I currently see two options: reworking the preview feature to do something else (though not quite sure what.. perhaps it could define a custom template or something like that), or trying to overwrite current page (to fix the $this->wire('page') reference in TemplateEngineFactory.module.)

Latter option sounds more feasible, yet I'd have to test this properly to make sure. I don't have a proper setup for that available right now, but I'll see if I can get to that sometime soon. That being said, if you could provide me a stripped down site profile to test this with, that'd make things easier for me 🙂

Share this post


Link to post
Share on other sites

Hi @teppo, I'm using version 1.2.9 from the modules library and having trouble with the UI: for fields that are on the left of the screen, the popup "compare" is off-screen and unusable (using UIkit). It looks like version 2 has a better UI. Is that going to make it to the 'official' library some time soon or do I need to install it from GitHub?

If I do need to install it "manually", how do I do this without losing my settings and history.

Thanks.

Share this post


Link to post
Share on other sites

@Teppo

Great Module! Are there more examples for an API call of your module? I want to track all changes and list them on a special site. Only changed pages/fields should be listed. Any ideas?

foreach($page->versionControlRevisions() as $key => $alue) {
	$page->snapshot(null,$key);
	echo $page->name;
}

How can I compare fields in the version with the current version?

 

Share this post


Link to post
Share on other sites

If anyone was wondering, this module seems to work fine with the CroppableImage3 fieldtype.

  • Like 1

Share this post


Link to post
Share on other sites

Hi all

in History, when editing a ProField Textareas, it only adds the name of the Textarea (Prodspecs) that was altert, but not the Fieldname (Voltage) inside the Textarea that was altert. That does not really help. It would be great if it would also name the altered Field name. 

We then changed a Field (Voltage) and saved it, content was added. then clicked restore version on a previous version of that Textarea (Prodspecs), what deleted all entries inside Textarea (Prodspecs) and not the Field (Voltage).

Don't really know why this happens, but a hint on how to fix that, or even having a look at the module itself would be of great help!

Share this post


Link to post
Share on other sites

Hey @bbeer,

There's no such module as "History" (as far as I'm aware), so are you perhaps talking about VersionControl – or something else entirely? Or is this a question about some built-in feature in ProFields Textareas? 🙂

The Modules/Plugins area of the forum is for dedicated module support threads only. If this is a support request for ProFields Textareas, please post the the VIP support area instead – and if it's related to another module, you should post your question directly to the support board of said module. If you're not sure where that might be, check the modules directory entry for the module in question and you'll find a link to the support board from the sidebar (on the left side).

If you tell us which module you're talking about, a moderator can move or merge this thread to the right place.

  • Like 1

Share this post


Link to post
Share on other sites

Hi Teppo

I am not talking about a module History. If I am not mistaken, VersionControl puts a table at the end of the page, see screenshot, where it adds the revision number, the author, Changes, Timestamp and Comment. is that not correct?

This entries we also found in the database, in the VersionControl Tables.

 

1834311941_ScreenShot2019-07-02025818PM.thumb.png.1bbff6f9e9f0c1aaa46dfdc844c747aa.png

Share this post


Link to post
Share on other sites

Since this is indeed related to the VersionControl module, I'll merge this thread to the VersionControl support thread 🙂

As the author of said module I should add that VersionControl has not been tested with the ProFields Table Textareas plugin, and honestly I'm not surprised if these two don't play nicely together out of the box. I will take a closer look at this, but it may take a while, so in the meantime I've opened a feature request for this at GitHub: https://github.com/teppokoivula/VersionControl/issues/23.

Quote

Don't really know why this happens, but a hint on how to fix that, or even having a look at the module itself would be of great help!

You could take a closer look at the database (particularly the version_control__data table) in case your data is still stored there. Other than that I can't really say for sure – it's possible that the data was not saved correctly, which would mean that it's no longer available.

I'm not quite sure what you mean by "having a look at the module itself" 🙂

Share this post


Link to post
Share on other sites

Hi @teppo,

first of all, thanks for this great module! But, can I have a question?
I have got a request to show the page changes in a merged list.. if it's possible. My idea is to use the official PW log to collect these changes. Is there any easy solution to implement a simple log save when your module also made a save / insert revision? For example:

$log->save("history", "The body field changed.");

perhaps with a link to the current revision, page id, or etc..

I have searched, but not found any hook which could be useful for this.

Thanks!

Tamas Gyorvary

Share this post


Link to post
Share on other sites

Hey @tthom_pw

Looks like this isn't currently possible. I'm working on version 2.0 of the module, which will include quite a few changes in fact, and I'd be happy to implement this once that's ready to be released. Sadly I can't give you an exact timeframe – probably "sometime within next few months", but that's just about it.

In the meantime you might find other modules more suitable for this purpose. For an example my ProcessChangelog creates a relatively easy-to-follow log of events – it doesn't integrate with VersionControl, so there's no way to link changelog with revision numbers etc. but if might be a more sensible way to get an idea of what changed and when.

Hope this helps a bit.

 

Share this post


Link to post
Share on other sites

Thanks @teppo!

I haven't noticed that ProcessChangelog is exist, not bad at all! Great job again. 
Yes, that would be great to be connected with VersionControl, but perhaps will be enough for this time.
Or.. I simply create a link into the ChangeLog list row with Javascript to link directly to right History page (with #VersionControlHistory hash tag). And than, it will be a simple connection between the two modules. Not 100% solution of course.. 

After all, thanks for the quick info and thanks for the modules!

Share this post


Link to post
Share on other sites

Hi @teppo

are you considering adding support for ProFieldTextArea to Version 2? Right now we can only see that something inside the whole Field changed, but not exactly what.

We would really appreciate this feature. We could also consider funding this change!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Gadgetto
      Status update links (inside this thread) for SnipWire development will be always posted here:
      2019-10-18
      2019-08-08
      2019-06-15
      2019-06-02
      2019-05-25
      If you are interested, you can test the current state of development:
      https://github.com/gadgetto/SnipWire
      Please note that the software is not yet intended for use in a production system (alpha version).
      If you like, you can also submit feature requests and suggestions for improvement. I also accept pull requests.
      ---- INITIAL POST FROM 2019-05-25 ----
      I wanted to let you know that I am currently working on a new ProcessWire module that fully integrates the Snipcart Shopping Cart System into ProcessWire. (this is a customer project, so I had to postpone the development of my other module GroupMailer).
      The new module SnipWire offers full integration of the Snipcart Shopping Cart System into ProcessWire.
      Here are some highlights:
      simple setup with (optional) pre-installed templates, product fields, sample products (quasi a complete shop system to get started immediately) store dashboard with all data from the snipcart system (no change to the snipcart dashboard itself required) Integrated REST API for controlling and querying snipcart data webhooks to trigger events from Snipcart (new order, new customer, etc.) multi currency support self-defined/configurable tax rates etc. Development is already well advanced and I plan to release the module in the next 2-3 months.
      I'm not sure yet if this will be a "Pro" module or if it will be made available for free.
      I would be grateful for suggestions and hints!
      (please have a look at the screenshots to get an idea what I'm talking about)
       




    • By eelkenet
      Hi! I've created a small Inputfield module called InputfieldFloatRange which allows you to use an HTML5 <input type="range" ../> slider as an InputField. I needed something like this for a project where the client needs to be able to tweak this value more based on 'a feeling' than just entering a boring old number. Maybe more people can use this so I'm hereby releasing it into the wild.  
       
      What is it?
      The missing range slider Inputfield for Processwire. 
      What does it do?
      This module extends InputfieldFloat and allows you to use HTML5 range sliders for number fields in your templates.
      It includes a visible and editable value field, to override/tweak the value if required.  
      Features
      Min/max values Precision (number of decimals) Steps (Read more) Manual override of the selected value (will still adhere to the rules above) Usage
      Clone / zip repo Install FieldtypeFloatRange, this automatically installs the Inputfield Create new field of type `Float (range)` or convert an existing `Float`, `Integer` or `Text` field. To render the field's value simply echo `$page->field` Demo
      A field with Min=0, Max=1, Step=0.2, Precision=2

      Field with settings Min=0, Max=200, Step=0.25, Precision=2

       
      Todo
      Make the display-field's size configurable (will use the Input Size field setting)  Hopefully become redundant If it's usable for others I'll add it to the Modules list  
      Changelog
      v002
      - Fix issue where setting the step value to an empty value created problem with validation
      - Make the display-field optional 
      v001
      - Initial release
       
      Thanks!
       
       
    • By Robin S
      Another little admin helper module...
      Template Field Widths
      Adds a "Field widths" field to Edit Template that allows you to quickly set the widths of inputfields in the template.

      Why?
      When setting up a new template or trying out different field layouts I find it a bit slow and tedious to have to open each field individually in a modal just to set the width. This module speeds up the process.
      Installation
      Install the Template Field Widths module.
      Config options
      You can set the default presentation of the "Field widths" field to collapsed or open. Field widths entered into the Template Field Widths inputfield are only applied if the Edit Template form is submitted with the Template Field Widths inputfield in an opened state. "Collapsed" is the recommended setting if you think you might also use core inputs for setting field widths in a template context. You can choose Name or Label as the primary identifier shown for the field. The unchosen alternative will become the title attribute shown on hover. You can choose to show the original field width next to the template context field width.  
      https://github.com/Toutouwai/TemplateFieldWidths
      https://modules.processwire.com/modules/template-field-widths/
    • By adrian
      Tracy Debugger for ProcessWire
      The ultimate “swiss army knife” debugging and development tool for the ProcessWire CMF/CMS

       
      Integrates and extends Nette's Tracy debugging tool and adds 35+ custom tools designed for effective ProcessWire debugging and lightning fast development
      The most comprehensive set of instructions and examples is available at: https://adrianbj.github.io/TracyDebugger
      Modules Directory: http://modules.processwire.com/modules/tracy-debugger/
      Github: https://github.com/adrianbj/TracyDebugger
      A big thanks to @tpr for introducing me to Tracy and for the idea for this module and for significant feedback, testing, and feature suggestions.
×
×
  • Create New...