Posts: 538
Threads: 12
Joined: May 2013
Hello smsHH,
many thanks, I've fixed that!
Please download version 2.3.9 from extend, or just replace your file "/plugins/imanager/lib/Allocator.php" with the new version from GitHub.
Posts: 57
Threads: 2
Joined: Feb 2015
Will do. Thank you for the quick update.
Posts: 12
Threads: 0
Joined: Feb 2017
Hello! Thanks for this great plugin!
I have one question.
I make a request with the conditions. If conditions only 2 or less ($imanager->getItems("slug=$slug", "active=1 && condition1=$condition1")) - all ok. But if I add conditions - ($imanager->getItems("slug=$slug", "active=1 && condition1=$condition1 && condition2=$condition2")) - It gives false or no results.
Whether it is possible to do more than 2 terms?
P.S. I am sorry for my poor English
Posts: 538
Threads: 12
Joined: May 2013
2017-02-19, 01:40:15
(This post was last modified: 2017-02-19, 01:41:02 by Bigin.)
Hi ChronosMe1,
yes, just let your result pass through the filter again ;-) look:
PHP Code: $imanager = imanager(); $itemMapper = $imanager->getItemMapper(); $category = $imanager->getCategoryMapper()->getCategory('slug=car'); $itemMapper->init($category->id);
$results = $itemMapper->getItems('active=1 && sporty=1'); if($results) { $results = $itemMapper->getItems('efficient=1', 0, 0, $results); if($results) { foreach($results as $result) { echo $result->name .'<br>'; } } }
Posts: 538
Threads: 12
Joined: May 2013
2017-02-19, 02:05:20
(This post was last modified: 2017-02-19, 02:25:36 by Bigin.)
If you need it often, you can also create a simple function for these purposes, something like:
PHP Code: function filterResults(array $selectors, $slug) { $imanager = imanager(); $itemMapper = $imanager->getItemMapper(); $category = $imanager->getCategoryMapper()->getCategory("slug=$slug"); $itemMapper->init($category->id);
$results = array(); foreach($selectors as $selector) { if(!empty($results)) { $results = $itemMapper->getItems($selector, 0, 2000, $results); } else { $results = $itemMapper->getItems($selector); } if(!$results) break; } if(!empty($results)) return $results; return false; }
And your function call could be:
PHP Code: if($results = filterResults(array('active=1', 'sporty=1', 'comfortable=1', 'efficient=1'), 'car')) { foreach($results as $result) { echo $result->name .'<br>'; } } else { echo 'Nothing was found!'; }
Posts: 12
Threads: 0
Joined: Feb 2017
Thank you very much! Everything is working!!
Posts: 57
Threads: 2
Joined: Feb 2015
Hello Bigin,
just a question: is it possible to change the CKEditor config file for the ItemManager? I've looked through your files but I haven't found anything.
Thank you very much.
Posts: 538
Threads: 12
Joined: May 2013
Hi smsHH,
Im not sure what do you mean when you say CKEditor config, ItemManager uses the default GS setting for editor. You can configure ItemManager's CKEditor the same way this is done for GS editor: http://get-simple.info/wiki/how_to:edito...re_options
Hmmm, while looking through the code I have discovered a little issue there, with a comma. Thus, it might be that you get an js error, if you'll try to change GS default settings for CKEditor. To avoid this, you'll need to apply the patch to your IM installation:
/plugins/imanager/lib/processors/fields/FieldEditor.php
/plugins/imanager/tpl/editor.field.im.tpl
Replace these two files by:
FieldEditor.php
editor.field.im.tpl
I will fix the bug for the next release in extend.
Posts: 57
Threads: 2
Joined: Feb 2015
2017-02-25, 19:03:24
(This post was last modified: 2017-02-25, 19:38:52 by smsHH.)
Hello Bigin,
thank you! I've tried already a custom config for CKE but at the first time (will check that again) the WYSIWYG field in the ItemManager completely disappeared, so I decided to change this file
\admin\template\js\ckeditor\config.js
and after that the definitions changed for the pages but not for the IM WYSIWYG fields.
So this is why I asked where I can change the default definitions to something like this
Code: $toolbar = "
[['Bold', 'Italic', 'Underline', 'NumberedList', 'BulletedList', 'JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock', 'Table', 'TextColor', 'Link', 'Unlink', 'Image', 'RemoveFormat', 'Source'],
'/',
['HorizontalRule', 'Format']],
";
but now I see where I can do it - thanks to you :-)
Posts: 538
Threads: 12
Joined: May 2013
2017-02-25, 19:53:50
(This post was last modified: 2017-02-25, 19:54:05 by Bigin.)
(2017-02-25, 19:03:24)smsHH Wrote: thank you! I've tried already a custom config for CKE but at the first time (will check that again) the WYSIWYG field in the ItemManager completely disappeared, so I decided to change this file
Hi, yes, that's the reason why you need the patch i posted before ;-)
Posts: 12
Threads: 0
Joined: Feb 2017
Hello! There is a small problem.
On the localhost all works. But on the real server when you try to save the page - error 500:
Fatal error: Call to a member function get() on boolean in /home/....../plugins/imanager/lib/CategoryProcessor.php on line 28
Posts: 538
Threads: 12
Joined: May 2013
Hi, what page are trying to save?
I see no problem there, I think something went wrong during installation or transfer to your host. Check all IM directories are correct transferred, and do not forget: /data/imanager/* and /data/uploads/imanager/*
Posts: 12
Threads: 0
Joined: Feb 2017
(2017-04-05, 00:14:08)Bigin Wrote: Hi, what page are trying to save?
I see no problem there, I think something went wrong during installation or transfer to your host. Check all IM directories are correct transferred, and do not forget: /data/imanager/* and /data/uploads/imanager/*
I use the plug-in IM Extra Fields and create a Getsimple page. Then I select the IM-category and click save - error 500. To get around this error, I select the IM menu and create a new element there. After that, everything works.
Posts: 538
Threads: 12
Joined: May 2013
Ok maybe IM Extra Fields has a bug, I'll check that, thx.
Posts: 538
Threads: 12
Joined: May 2013
Hmm…I can't reproduce the issue here, need more information and detailed description.
Posts: 12
Threads: 0
Joined: Feb 2017
(2017-04-05, 02:55:30)Bigin Wrote: Hmm…I can't reproduce the issue here, need more information and detailed description.
This situation appears on two sites. And in the localhost (openserver) this error is not present.
Here videos:
1. I create a page, save it, get an error (https://www.youtube.com/watch?v=diKWBpK4_ss)
2. I create a new IM element, save it. The error disappears (https://www.youtube.com/watch?v=Cpixbft1PyQ)
Posts: 538
Threads: 12
Joined: May 2013
thx. But the first video shows that Auto-open Page Options plugin is causing this error and not IM Extra Fields!
Posts: 12
Threads: 0
Joined: Feb 2017
2017-04-05, 03:57:53
(This post was last modified: 2017-04-05, 03:58:11 by ChronosMe1.)
(2017-04-05, 03:49:08)Bigin Wrote: thx. But the first video shows that Auto-open Page Options plugin is causing this error and not IM Extra Fields!
It's just a warning. If I turn off Auto-open Page Options plugin, the error remains.
Posts: 538
Threads: 12
Joined: May 2013
(2017-04-05, 03:57:53)ChronosMe1 Wrote: It's just a warning. If I turn off Auto-open Page Options plugin, the error remains.
Yes, but the message outputs before session is set, so that just does not work.
Make a video with disabled Auto-open Page Options plugin pls
Posts: 12
Threads: 0
Joined: Feb 2017
(2017-04-05, 04:06:15)Bigin Wrote: (2017-04-05, 03:57:53)ChronosMe1 Wrote: It's just a warning. If I turn off Auto-open Page Options plugin, the error remains.
Yes, but the message outputs before session is set, so that just does not work.
Make a video with disabled Auto-open Page Options plugin pls
https://www.youtube.com/watch?v=311wUOqr2TE
The first half of the video - with the debug mode turned off.
Posts: 538
Threads: 12
Joined: May 2013
Ok, thanks a lot! I'll check this
Posts: 538
Threads: 12
Joined: May 2013
I have tried everything, I can't reproduce the issue on my environment... It seems as if your SESSION['cat'] isn't set, so that isCategoryValid() returns the value FALSE.
Question: It happens only when you try to save the page, if there is no items for this category, right?
You might check your console, maybe there is a Javascript error? Another option would be to disable other plugins, then try again.
Then, you can look at the SESSION and POST variable on its values within the saveItem() function in /plugins/im_extra_fields/controller/processor.php file. Just put the following lines on the top of the function. After that, you can find the log file under /data/other/logs/imlog_2017xx.txt
Code: Util::dataLog('$_POST[imcat] = ' . (int)$_POST['imcat']);
Util::dataLog('$_SESSION[cat] = ' . (int)$_SESSION['cat']);
Posts: 12
Threads: 0
Joined: Feb 2017
Yes, I think it's in the SESSIONS.
Here's the log after the error:
[ 05.04.2017 - 08:17:12 ] $_POST[imcat] = -1
[ 05.04.2017 - 08:17:12 ] $_SESSION[cat] = 0
Here is the log after creating the IM-item and the disappearance of the error:
[ 05.04.2017 - 08:18:50 ] $_POST[imcat] = -1
[ 05.04.2017 - 08:18:50 ] $_SESSION[cat] = 1
Posts: 538
Threads: 12
Joined: May 2013
Hello,
excellent, I'm sure we'll manage that soon.
Let's try following, open /plugins/imanager/lib/CategoryProcessor.php file and comment out the __construct() function. Then, copy and paste
this code instead:
Code: public function __construct(CategoryMapper &$category)
{
// initialise categories
$this->category = $category;
if(self::isCategoryValid())
{
$this->is_cat_exist = true;
} else
{
$count = $this->category->countCategories();
Util::dataLog('Category count: '.$count);
Util::dataLog('CategoryMapper: '.print_r($this->category, true));
if($count > 0)
{
$this->is_cat_exist = true;
$cur = current($this->category->categories);
Util::dataLog('Current category: '.print_r($cur, true));
$this->setCategory($cur->id);
} else
{
$this->is_cat_exist = false;
}
}
}
After that, create a new page and show me your log file. Many thanks again!
Posts: 12
Threads: 0
Joined: Feb 2017
2017-04-05, 20:12:16
(This post was last modified: 2017-04-05, 22:11:04 by ChronosMe1.)
(2017-04-05, 16:36:58)Bigin Wrote: After that, create a new page and show me your log file. Many thanks again!
Yes! It is working! Here's the log-file
Thank you for the wonderful plug-in and support!
|