[DBTech] DragonByte Member Map

[DBTech] DragonByte Member Map 2.5.0

No permission to download
Could you please post an example of how to set up the geodatabase dir? Like does it end with the actual file or do I just point to the folder??

And could you please add a line under the input field like an example of how to add the geodatabase link?

I'm getting slightly forgetful as I get older...

I did have this working fine before with XF1

Thanks!
 
DragonByte Tech updated [DBTech] DragonByte Member Map with a new update entry:

Resource Guidelines Update

What is happening?
On the 11th of July 2018, XenForo published their Resource Guidelines aimed at ensuring performance & stability of XenForo modifications. At the moment, this product does not meet these standards, due to the fact that this product has been engineered to allow the core code to run on both XenForo 1 and XenForo 2.

As a result, I am beginning work on re-engineering this product to become a "native"...

Read the rest of this update entry...
 
DragonByte Tech updated [DBTech] DragonByte Member Map with a new update entry:

2.1.0 Beta 1

Update highlights

This release marks the first version of the re-engineered XenForo 2 version, fully in line with the XenForo 2 Resource Guidelines.

The XF2 version has also received back-end updates to improve the stability & reliability of the GeoIP lookups. You will need to wait for the cron job to run through all users again, though, or run it manually.

The XF1 version has not been updated.


Complete Change Log

Feature: Users can change their...

Read the rest of this update entry...
 
Hello,
Thanks for this addon!
Facing two issues/bug with it after setting up on latest XF2 :

When unticking "Show all" to display all registered user position i get this error on front page :
(nb : no error when ticking the option to only display connected members. Meanwhile, there is another issue in this case : i am the only one displayed on the map, other connected users do not appear despite correct permission settings.)

LogicException: Unknown relation Option accessed on xf_session_activity in src/XF/Mvc/Entity/Finder.php at line 651

  1. XF\Mvc\Entity\Finder->join() in src/XF/Mvc/Entity/Finder.php at line 1430
  2. XF\Mvc\Entity\Finder->resolveFieldToTableAndColumn() in src/XF/Mvc/Entity/Finder.php at line 539
  3. XF\Mvc\Entity\Finder->columnSqlName() in src/XF/Mvc/Entity/Finder.php at line 222
  4. XF\Mvc\Entity\Finder->buildCondition() in src/XF/Mvc/Entity/Finder.php at line 120
  5. XF\Mvc\Entity\Finder->where() in src/addons/DBTech/MemberMap/Pub/Controller/Map.php at line 147
  6. DBTech\MemberMap\Pub\Controller\Map->actionIndex() in src/XF/Mvc/Dispatcher.php at line 249
  7. XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 88
  8. XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 41
  9. XF\Mvc\Dispatcher->run() in src/XF/App.php at line 1931
  10. XF\App->run() in src/XF.php at line 328
  11. XF::runApp() in index.php at line 13

When trying to drag the marker to update position, i get this error :

XF\Db\Exception: MySQL statement prepare error [1054]: Unknown column 'dbtech_membermap_manual' in 'field list' in src/XF/Db/AbstractStatement.php at line 212

  1. XF\Db\AbstractStatement->getException() in src/XF/Db/Mysqli/Statement.php at line 196
  2. XF\Db\Mysqli\Statement->getException() in src/XF/Db/Mysqli/Statement.php at line 39
  3. XF\Db\Mysqli\Statement->prepare() in src/XF/Db/Mysqli/Statement.php at line 54
  4. XF\Db\Mysqli\Statement->execute() in src/XF/Db/AbstractAdapter.php at line 79
  5. XF\Db\AbstractAdapter->query() in src/XF/Db/AbstractAdapter.php at line 244
  6. XF\Db\AbstractAdapter->update() in src/XF/Mvc/Entity/Entity.php at line 1394
  7. XF\Mvc\Entity\Entity->_saveToSource() in src/XF/Mvc/Entity/Entity.php at line 1121
  8. XF\Mvc\Entity\Entity->save() in src/addons/DBTech/MemberMap/Pub/Controller/Map.php at line 217
  9. DBTech\MemberMap\Pub\Controller\Map->actionLocation() in src/XF/Mvc/Dispatcher.php at line 249
  10. XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 88
  11. XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 41
  12. XF\Mvc\Dispatcher->run() in src/XF/App.php at line 1931
  13. XF\App->run() in src/XF.php at line 328
  14. XF::runApp() in index.php at line 13

Thank you for your time and support.

Regards
 
Last edited:
Hello,
Thanks for this addon!
Facing two issues/bug with it after setting up on latest XF2 :

When unticking "Show all" to display all registered user position i get this error on front page :
(nb : no error when ticking the option to only display connected members)



When trying to drag the marker to update position, i get this error :



Thank you for your time and support.

Regards

I am seeing this as well! ;)
 
I'll have a fix for that in the next version, meanwhile you can tick the box to show all members on the map. If you do, you won't run into this problem :)


Fillip
 
you can tick the box to show all members on the map
You mean all connected members only ?
I have ticked the option but it only show MY postion. Other members do not appear despite correct permission set for Members

Getting this error :

SELECT `xf_user`.*, `xf_sv_rating_cache_User_RatingData_1`.*, `xf_user_option_Option_2`.*
FROM `xf_user`
LEFT JOIN `xf_sv_rating_cache_User` AS `xf_sv_rating_cache_User_RatingData_1` ON (`xf_sv_rating_cache_User_RatingData_1`.`user_id` = `xf_user`.`user_id`)
LEFT JOIN `xf_user_option` AS `xf_user_option_Option_2` ON (`xf_user_option_Option_2`.`user_id` = `xf_user`.`user_id`)
WHERE (`xf_user`.`is_banned` = 0) AND (`xf_user`.`user_state` = 'valid') AND (`xf_user`.`last_activity` > 1515928861) AND (`xf_user_option_Option_2`.`dbtech_membermap_lastupdate` <= 1531394461) AND (`xf_user_option_Option_2`.`dbtech_membermap_manual` = 0) AND ((FIND_IN_SET(3, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(4, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(2, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(5, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(1, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(0, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(9, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(8, `xf_user`.`secondary_group_ids`)) OR (`xf_user`.`user_group_id` = 3 OR `xf_user`.`user_group_id` = 4 OR `xf_user`.`user_group_id` = 2 OR `xf_user`.`user_group_id` = 5 OR `xf_user`.`user_group_id` = 1 OR `xf_user`.`user_group_id` = 0 OR `xf_user`.`user_group_id` = 9 OR `xf_user`.`user_group_id` = 8))


LIMIT 100
------------

#0 src/XF/Db/Mysqli/Statement.php(196): XF\Db\AbstractStatement->getException('MySQL statement...', 1054, '42S22')
#1 src/XF/Db/Mysqli/Statement.php(39): XF\Db\Mysqli\Statement->getException('MySQL statement...', 1054, '42S22')
#2 src/XF/Db/Mysqli/Statement.php(54): XF\Db\Mysqli\Statement->prepare()
#3 src/XF/Db/AbstractAdapter.php(79): XF\Db\Mysqli\Statement->execute()
#4 src/XF/Mvc/Entity/Finder.php(1163): XF\Db\AbstractAdapter->query('\r\n\t\t\tSELECT `xf...')
#5 src/addons/DBTech/MemberMap/Repository/GeoIp.php(67): XF\Mvc\Entity\Finder->fetch()
#6 src/addons/DBTech/MemberMap/Cron/GeoLocate.php(21): DBTech\MemberMap\Repository\GeoIp->scanUsers()
#7 [internal function]: DBTech\MemberMap\Cron\GeoLocate::scanIps(Object(XF\Entity\CronEntry))
#8 src/XF/Job/Cron.php(35): call_user_func(Array, Object(XF\Entity\CronEntry))
#9 src/XF/Job/Manager.php(241): XF\Job\Cron->run(7.9999978542328)
#10 src/XF/Job/Manager.php(187): XF\Job\Manager->runJobInternal(Array, 7.9999978542328)
#11 src/XF/Job/Manager.php(76): XF\Job\Manager->runJobEntry(Array, 7.9999978542328)
#12 job.php(15): XF\Job\Manager->runQueue(false, 8)
#13 {main}
 
Last edited:
You mean all connected members only ?
I have ticked the option but it only show MY postion. Other members do not appear despite correct permission set for Members
As per the release notes, you have to wait for either the cron job to run a few times, or run it manually. It only processes 100 members per run by default, and it runs every 10 minutes.


Fillip
 
As per the release notes, you have to wait for either the cron job to run a few times, or run it manually. It only processes 100 members per run by default, and it runs every 10 minutes.
24h later, i am still the only member displayed on the map despite the presence of connected users.

With this error in admin :

Stack trace

SELECT `xf_user`.*, `xf_sv_rating_cache_User_RatingData_1`.*, `xf_user_option_Option_2`.*
FROM `xf_user`
LEFT JOIN `xf_sv_rating_cache_User` AS `xf_sv_rating_cache_User_RatingData_1` ON (`xf_sv_rating_cache_User_RatingData_1`.`user_id` = `xf_user`.`user_id`)
LEFT JOIN `xf_user_option` AS `xf_user_option_Option_2` ON (`xf_user_option_Option_2`.`user_id` = `xf_user`.`user_id`)
WHERE (`xf_user`.`is_banned` = 0) AND (`xf_user`.`user_state` = 'valid') AND (`xf_user`.`last_activity` > 1516005776) AND (`xf_user_option_Option_2`.`dbtech_membermap_lastupdate` <= 1531471376) AND (`xf_user_option_Option_2`.`dbtech_membermap_manual` = 0) AND ((FIND_IN_SET(3, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(4, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(2, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(5, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(1, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(0, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(9, `xf_user`.`secondary_group_ids`) OR FIND_IN_SET(8, `xf_user`.`secondary_group_ids`)) OR (`xf_user`.`user_group_id` = 3 OR `xf_user`.`user_group_id` = 4 OR `xf_user`.`user_group_id` = 2 OR `xf_user`.`user_group_id` = 5 OR `xf_user`.`user_group_id` = 1 OR `xf_user`.`user_group_id` = 0 OR `xf_user`.`user_group_id` = 9 OR `xf_user`.`user_group_id` = 8))


LIMIT 100
------------

#0 src/XF/Db/Mysqli/Statement.php(196): XF\Db\AbstractStatement->getException('MySQL statement...', 1054, '42S22')
#1 src/XF/Db/Mysqli/Statement.php(39): XF\Db\Mysqli\Statement->getException('MySQL statement...', 1054, '42S22')
#2 src/XF/Db/Mysqli/Statement.php(54): XF\Db\Mysqli\Statement->prepare()
#3 src/XF/Db/AbstractAdapter.php(79): XF\Db\Mysqli\Statement->execute()
#4 src/XF/Mvc/Entity/Finder.php(1163): XF\Db\AbstractAdapter->query('\r\n\t\t\tSELECT `xf...')
#5 src/addons/DBTech/MemberMap/Repository/GeoIp.php(67): XF\Mvc\Entity\Finder->fetch()
#6 src/addons/DBTech/MemberMap/Cron/GeoLocate.php(21): DBTech\MemberMap\Repository\GeoIp->scanUsers()
#7 [internal function]: DBTech\MemberMap\Cron\GeoLocate::scanIps(Object(XF\Entity\CronEntry))
#8 src/XF/Job/Cron.php(35): call_user_func(Array, Object(XF\Entity\CronEntry))
#9 src/XF/Job/Manager.php(241): XF\Job\Cron->run(7.9999980926514)
#10 src/XF/Job/Manager.php(187): XF\Job\Manager->runJobInternal(Array, 7.9999980926514)
#11 src/XF/Job/Manager.php(76): XF\Job\Manager->runJobEntry(Array, 7.9999980926514)
#12 job.php(15): XF\Job\Manager->runQueue(false, 8)
#13 {main}
 
Last edited:
SSH into your server and move to the XF2 directory, then run this command: php cmd.php xf-addon:upgrade-step DBTech/MemberMap 2010070 2

For some reason, that step didn't run for you when you upgraded the mod.


Fillip
 
Thanks for the update.
Issue is fixed : all users are displayed.. and counting.. waiting for the cron :)
Is that normal that Connected users are not displayed (still alone) : do i have to wait the end of the cron run ?
 
Thanks for the update.
Issue is fixed : all users are displayed.. and counting.. waiting for the cron :)
Is that normal that Connected users are not displayed (still alone) : do i have to wait the end of the cron run ?
You can run the cron manually via the relevant AdminCP page.


Fillip
 
Top Bottom