Jump to content

bernhard

Members
  • Posts

    6,629
  • Joined

  • Last visited

  • Days Won

    358

Everything posted by bernhard

  1. setLanguageValue is a method of the $page api variable: https://processwire.com/api/ref/page/ $p->setLanguageValue($language, $field, $value); You cannot call it from the $p->summary property
  2. https://processwire.com/talk/topic/7752-huge-file-uploading-problem/ https://processwire.com/talk/topic/2190-max-file-size-for-uploading-a-file/ https://processwire.com/talk/topic/17930-solved-urgent-problem-uploading-large-files-new-insights/ https://processwire.com/talk/topic/10818-fileupload-stops-at-100/
  3. Would you mind adding some additional information to your question? What is the difference between the two? What would be the pros/cons? I use dumping a lot but I use only very basic features I guess. Most of the information in the first screencap does not seem to be very helpful to me (at least most of the time, or at least not yet). The second looks cleaner to me, but what I do not like is that "template" is a string and not a ProcessWire\Template as shown in the first pic (though that's a tiny detail and i guess dumping $page->template would show the correct classname?). [2min later] To me, the second looks cleaner and more helpful.
  4. thx, I confirm everything is still working great
  5. Thx adrian! Didn't use the request info panel so far, but I'll start using it
  6. Thanks @adrian, that solves the issue and my pw admin is lightning fast again I've experienced slower loading with tracy several times, but I was not able to identify when it occured. Maybe this was the reason, I'll keep an eye. BTW: Where do I find the prev/next links?
  7. Hi @Sephiroth, thanks for your hint. I know about the cell renderers, but it's not exactly what I'm looking for. If you are only working with one table (grid) then cell renderers are perfectly fine, but I want to make it possible to modify the setup of the table by external plugins, modifying the cell renderers by the needs of the plugin without having to change the initial gridOptions object. For example I want to have a plugin that shows column statistics. Or one that shows tooltips when hovering over a cell. One that shows action buttons (show page details, delete row, open link in new tab etc). And of course both need to work in combination. So I need to apply multiple cell renderers based on some parameters. I'm thinking of building one cell renderer that applies all the others and does something similar to what we know from processwire hooks: Passing parameters, modifying return values. What I do NOT want is that the user has to apply complex cellRenderers with a squillion of if/else in the grid's options object Hope that makes sense. Any hints welcome
  8. Update: Seems like I'll switch to agGrid for my module. It is also MIT licensed in the basic version. It can handle multiple thousands of rows (loading 30k rows with pages->findObjects needs 6 seconds here; 10k pages = 800ms; without caching, of course) It has very nice filters built in (contains, starts with, not equal, etc) It is easy to create custom filters -> the regex filter is built by myself It has the possibility of custom cell renderers (see the percent bars; though I will have to adopt how this works for my module) It looks cleaner then datatables It has CSV export that seems to work just as good as the excel export of datatables (it is also possible to modify the cell values before export) I managed to rebuild the column statistics functionality (for all rows and only selected rows) that I have built for datatables. This is a must have feature, making it easy to show eg. the sum of all revenues in a specific month. It is pure JavaScript, so no dependencies have to be installed. It should also be possible to use this module on the frontend quite easily. Only thing that I'm missing from datatables is an easy way to access data. datatables seems to be superior in this regard. But I've also rebuilt this functionality making things like this possible, showing the average value of the grid's "rand" column, taking into account all filters and returning all rows (not only selected ones): return grid.avg('rand', {filter:true, selected:false}); This statement is used for the stats row at the bottom of the grid. Todos: Action items for pw-panel editing Anything else that you think is necessary?
  9. Hm, I have "pages loaded: 23" $config->debug = true/false does not make any difference. Only difference is when I hit the "Disable Tracy" Button in the Debug Bar it instantly becomes fast as usual. I can send you a site profile, maybe that helps
  10. Awesome!!! Thanks!! Thought I've read the whole docs and examples and googled for an hour but found nothing... now it will be a lot more fun working on this tomorrow Maybe I should change the topic title to "everybody who can rtfm better than me, raise your hands" ??
  11. @MrSnoozles introduced me to aggrid and so far my first experiments where great. Unfortunately I got stuck now when looking at events. I hope someone can help me: I have this sample setup: Data is fetched by @adrian 's findObjects() suggestion. Works great. Custom cell renderers are also easy to achieve (see column "rand") and also custom filters are easy (not visible here). So far, so good. The problem is the last row: I'm using a pinned row and I want to show aggregated data for the columns in that row. Statistics, sums, min/max, average etc.; Coming from datatables.net events there made a lot more sense to me: https://datatables.net/manual/events As far as I understand from the docs of aggrid, I have these events available: https://www.ag-grid.com/javascript-grid-events/ Usage is like this: var gridOptions = { columnDefs: columnDefs, rowData: rowData, enableSorting: true, enableFilter: true, rowSelection: 'multiple', // pinned footer row getRowStyle: function (params) { if (params.node.rowPinned) { return {'font-weight': 'bold', 'border-top': '1px solid #afafaf'}; } }, pinnedBottomRowData: [{}], // events onGridReady: function(params) { params.api.sizeColumnsToFit(); console.log('grid is ready'); }, }; This sucks, because I have no option to attach multiple event handlers to one event. I want my module to be extensible, so for example I want to build a "columnSum" plugin that shows stats of the colum whenever the table is filtered, sorted, rendered etc. In datatables I had the draw() event that fired on the dom element of the table. Having multiple plugins would have been easy, because in each of the plugins I could have added the event listener: // plugin A $('#mytable').on('draw', function() { // do my plugin logic for plugin A }); // plugin B $('#mytable').on('draw', function() { // do my plugin logic for plugin B }); So, can anybody give me a hint how I could do something like $('#myAgGrid').on('draw', function() { // populate all footer cells with statistics // in the screenshot this row has "x" in every column // the "x" should get populated with some html }); Of course, aggrid does not use jquery. It's just an example related to the jQuery datatables way of doing it. Thanks!
  12. it is great i switched from sublime
  13. I don't see any suspicious information in the panel. Only the HTML code of the debug bar is totally bloated. I think the simplest is to test it on your own. I'm running a fresh dev installation with blank profile and tracy v4.9.33 I've just created a page "data" under /home and added 30k pages with the tracy console: for($i=0; $i<30000; $i++) { $p = new Page(); $p->template = 'basic-page'; $p->parent = $pages->get('/data'); $p->title = uniqid(); $p->save(); } Then when I open one of those pages in edit mode the tracy bar takes 10s to load..
  14. good guess Debug Mode is also very slow, but only if Request Info is ON. If Request Info is OFF the Debug Mode is 10ms (first screenshot)
  15. hey @adrian I'm working on my DataTables module (that might get renamed to RockGrid btw because I'm experimenting with another grid software ) and have 30k sample data pages (basic-page with only title field). When I open such a page in the admin, the page load takes very long (around 10s). I looked at the network tab and saw that the request for initial page load (?id=1017) loads 5.7MB of data. Cookie: pagelist_open=JSON%5B%221-0%22%2C%221016-0%22%2C%221017-0%22%2C%227-0%22%5D; wire=...; wire_challenge=...; tracyCodeError=ERROR%3A+Maximum+execution+time+of+120+seconds+exceeded+on+line%3A+454+in+D%3A%5Claragon%5Cwww%5Caggrid1%5Cwire%5Ccore%5CWireDatabasePDO.php When i switch off tracy the page load is instant. The code for the debug bar is huge: Any ideas which feature of the panel is causing this behaviour? Thanks in advance, no hurry at all with this one
  16. This community is crazy
  17. I always use pages to log mails... just use a ckeditor field and you can see your html content. Or why exactly do you want to use logfiles?
  18. https://github.com/processwire/processwire-issues/issues/514
  19. pseudocode: // tracy console foreach($users as $user) { if(user admin theme == ..) $user->setAndSave('admin theme', 'uikit'); } you'd need to find out the correct properties and values, but that should not be too hard.
  20. Forum software sucks here you got a lot of links from szabesz:
  21. I don't know technical details but I think browsers cache this redirections somehow. Try it with a different browser, try writing http:// manually to the url, try adding ?v=1 to your url (with http:// of course)
  22. hi @flydev I didn't follow the whole thread. Maybe you want to have a look at https://doc.nette.org/en/2.4/finder and https://doc.nette.org/en/2.4/filesystem; Maybe this makes things easier You could also have a look at Soma's online installer: https://raw.githubusercontent.com/somatonic/PWOnlineInstaller/master/grabpw.php (this is in use for a long time and should be tested on all systems).
  23. PS: @Robin S I don't think there is a real "eco"system around pw modules by the way. There are some commercial modules, but nobody (except the authors) knows how many people are using them. I don't think this is something that attracts other developers... And it makes it hard for us to estimate if developing/supporting a module is worth the effort (and time) or not. It makes it even harder when it comes to commercial modules. Which pricing should one choose? 10 hours of work devided by 1 user is something totally different than devided by hundreds... Tracking the interest in a module could maybe bring some light into that.
  24. Thanks szabesz, I support your request and liked + commented it on github
  25. Hi Robin and szabesz, I was actually expecting that something like this would come up. I'm happy about your feedback I'm not sure about that. I can actually only see the number of Events that occured. Nothing else. No visitor information at all. The request is sent with an anonymous client ID, so there is really no data connected to anybody. No cookies are set. Nothing. Basically it's just a counter. I partially agree. I would love to have some kind of pre-screen before a module is installed. Maybe I'm wrong, but I think at the moment we only have the "summary" statement that is shown before installation? It does not support HTML though. I think it would nice to have the possibility to place some statements before installation and also before updating a module that the user must accept. This could be nice in several situations. The user could check a box to agree to data submission, the user could be informed about breaking changes that may be installed with an update, we could show a donation button etc. I don't agree with you here. Actually I do think it is quite the opposite. Trust in ProcessWire is for sure a good thing. In its security, in its features, in its future. But I do not think, that (blind) trust in 3rd party modules is good. As you said, any module author can basically do anything within the instance where it is installed. This may not be obvious especially to unexperienced users. So I think actions/discussions like this support the ecosystem and do not harm. But again, I agree that a "feature" like the install/uninstall tracking should be stated more prominent. BTW: I have 26 likes and 0 installs for RockForms so far, so nothing happened until now
×
×
  • Create New...