Jump to content

Andy

Members
  • Content Count

    17
  • Joined

  • Last visited

Community Reputation

5 Neutral

About Andy

  • Rank
    Jr. Member

Profile Information

  • Gender
    Male
  • Location
    Cyprus

Recent Profile Visitors

873 profile views
  1. Another problem with RestAPI. When loading large files, an error occurs. In the backend everything is fine, a 300 MB file is loaded normally. The problem only occurs when testing through Insomnia or Postman with files larger than 15 mb. We managed to solve the problem. It is necessary to include AJAX in the file properties. $ul = wire(new WireUpload($formName)); $ul->setValidExtensions(['mp4', 'avi', '3gp']); $ul->setMaxFiles(1); $ul->setMaxFileSize(100 * 1000000); // 100 MB $ul->setOverwrite(true); $ul->setDestinationPath($p_path); $ul->setLowercase(true); $ul->setAllowAjax(true); $files = $ul->execute();
  2. @thomasaull Array merging may help $headers = array(); $header_variables = array_merge($_SERVER, getallheaders()); foreach($header_variables as $key => $value) { $headers[strtolower($key)] = $value; } Since you require in your module PHP>=7.2.0, ProcessWire>=3.0.98 The getallheaders() function is definitely present.
  3. @thomasaull I will try, although I do not have such experience with github. And I'm not sure that all my suggestions are useful. Maybe I'm wrong somewhere.
  4. @thomasaull I continue to test this module which is very suitable for me. JWT token. Problem with authorization. Apache2 server and PHP 7.3.10. Can't auth and gives a message: No Authorization Header found' and code 400. This is a problem in Router.php function private static function getAuthorizationHeader() $headers = array(); foreach($_SERVER as $key => $value) { $headers[strtolower($key)] = $value; } Where variable $_SERVER have no authorization variable. If you change this to a function, it will work. foreach(getallheaders() as $key => $value) { $headers[strtolower($key)] = $value; } The following error occurs if you enter an invalid token. { "error": "Error: Exception: Signature verification failed (in \/localhost\/site\/modules\/RestApi\/Router.php line 131)\n\n#0 \/localhost\/site\/modules\/RestApi\/Router.php(91): ProcessWire\\Router::handle('ProcessWire\\\\Exa...', 'getUser', Object(stdClass), Array)\n#1 \/localhost\/site\/modules\/RestApi\/RestApi.module(50): ProcessWire\\Router::go()\n#2 \/localhost\/wire\/core\/WireHooks.php(924): ProcessWire\\RestApi->checkIfApiRequest(Object(ProcessWire\\HookEvent))\n#3 \/localhost\/wire\/core\/Wire.php(450): ProcessWire\\WireHooks->runHooks(Object(ProcessWire\\ProcessPageView), 'execute', Array)\n#4 \/localhost\/index.php(61): ProcessWire\\Wire->__call('execute', Array)\n#5 {main}. File: \/localhost\/index.php:70" } It seems to me that it would be right to replace Router.php line 131 with code 500 catch (\Throwable $e) { throw new \Exception($e->getMessage()); } Can be replaced by catch (\Throwable $e) { self::displayError('Signature verification failed', 400); } This will be more correct, as the token error is a request syntax error and this is code 400.
  5. @thomasaull It seems I found what was the mistake. It was necessary to transfer the dispatch from Insomnia to the multipart format and set the file name. After that, in the $_FILES variable you can find all the data to get the file. $_FILES Array( [upfile]=>Array( [name]=>hot-pizza.jpeg [type]=>image/jpeg [tmp_name]=>/localhost/tmp/phptAUnX5 [error]=>0 [size]=>65639 ) )
  6. @thomasaull When you set up the site configuration. In file /site/config.php change the row to true and you will see backend debugging capabilities. /*** SITE CONFIG *************************************************************************/ /** * Enable debug mode? * * Debug mode causes additional info to appear for use during dev and debugging. * This is almost always recommended for sites in development. However, you should * always have this disabled for live/production sites. * * @var bool * */ $config->debug = true; Thanks for the answer on downloading the file in the Processwire. I don’t understand very well how API communication works. But your module perfectly illustrates this feature. I managed to transfer any information from the site through the API. But I can’t transfer a file through your module to site. When we submit a file from the form, we have identifiers <input type="file" name="uploadedFile[]" id="uploadedFile" multiple> And we can find it in global wire('input') or $_GET, $_POST. But in our case this is empty wire('input')->post->upload
  7. This module is very useful unconditionally. Could you add an example of uploading a file to the server in the README.md. I just can’t understand how this is implemented in your module.
  8. I absolutely agree with you. Do not touch the /wire/ directory if you are not a developer of this. However, the customer really wanted the differences between the front-end and back-end icons. This is really convenient when you can see in a browser in which mode you opened them. And adding the icon to the /wire/ was the fastest but the wrong way. Adding such functionality to the admin template will be very useful.
  9. When using RestAPI, I found the following error in the debug page. (RestApi 0.0.7 ProcessWire 3.0.148)
  10. Find in version 3.0.148. AdminThemeUikit has changed. in _head.php was <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="icon" href="/wire/Favicon.ico" type="image/x-icon" /> <title><?php echo $adminTheme->getBrowserTitle(); ?></title> now <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title><?php echo $adminTheme->getBrowserTitle(); ?></title> Now we can't use different favicon for the main site and for the editing mode. Prior to this case, it was convenient to distinguish between operating modes.
  11. I have AdminThemeBoss 0.6.3 I like this design. And find problem with announcement. They close main button. Another problem is the debug panel that now opens under the footer. Perhaps these are problems of my configuration.
  12. Andy

    Admin Actions

    This is a very useful set of tools. But I have a problem and I am looking for which tool will help to solve it. Is there such a function as copying one field of a repeater to another field of a repeater on the same page? For example, the situation is as follows: -I have a repeater field for which I want to change the template without losing the values. -I make a new repeater field with a different name, but with the same fields and add it to the page template. -I need to copy all the values from the first field of the repeater to the second. It’s like the "Page Table to Repeater/Repeater Matrix" function or "Copy Repeater Items To Other Page" function. Sorry if I'm off topic.
  13. Try this. Closed admin pages has_parent!=2
×
×
  • Create New...