Download the PHP package openwanderer/openwanderer without Composer

On this page you can find all versions of the php package openwanderer/openwanderer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package openwanderer

OpenWanderer server

This is the OpenWanderer server, now available as a Composer package.

composer install openwanderer/openwanderer

The OpenWanderer server, based on the Slim Framework v4 manages panoramas, including linked sequences of panoramas, and allows clients to upload, retrieve, edit and delete panoramas.

Creating an OpenWanderer server

A minimal example would be as follows:

Note the use of the OpenWanderer::createApp() static method. This takes as an argument an associative array of options. Currently there is are two options:

API endpoints

The following API endpoints are available with an OpenWanderer server. Note that Slim route parameter syntax is used in this documentation, so that for example {lon} is a placeholder for longitude, and {id:[0-9]+} is a placeholder for an ID which must be numeric.

These endpoints are available whether auth is true or false:

GET /panorama/{id:[0-9]+} - retrieves information about a panorama. Returns a JSON object containing id, lon, lat, ele (elevation), seqid (the ID of the sequence it belongs to, if it does), poseheadingdegrees (the XMP PoseHeadingDegrees property, i.e. bearing of the panorama's centre point, if present) and corrections for the three rotation angles for the panorama: pancorrection, tiltcorrection and rollcorrection (note that these are corrections, not absolute values, i.e. the amount which the panorama needs to be rotated to be in its correct orientation if the inherent XMP data is inaccurate). In addition, if auth is set to true, the panorama has to be authorised (the authorised field in the database set to 1) for it to be accessible to users other than its owner or the administrator. This is to allow for operations such as face or license-plate blurring, which will soon be added to the bot. So if you want all panoramas to be visible immediately, you should set auth to false.

GET /panorama/{id:[0-9]+}.jpg - retrieves the actual panorama with the given ID. Again, the panorama has to be authorised to be visible to non-owner or non-admin users if auth is set to true.

DELETE /panorama/{id:[0-9]+} - deletes the given panorama. If auth was set to true, only administrators or panorama owners may delete it; otherwise, 401 is returned.

GET /nearest/{lon]/{lat} - will retrieve the nearest panorama to a given latitude and longitude.

GET /panos - retrieves panoramas by bounding box. Expects a query string parameter bbox containing a comma-separated list of bounding box parameters in order west, south, east and north.

POST /panorama/{id:[0-9]+}/rotate - sets the pan, tilt and roll corrections to the values supplied in a JSON object containing pan, tilt and roll fields, sent in the request body. If auth is set to true, only the panorama owner or administrators can perform this operation, otherwise 401 is returned.

POST /panorama/{id:[0-9]+}/move - moves the panorama position to the given latitude and longitude, supplied as lat and lon fields within a JSON object sent in the request body. If auth is set to true, only the panorama owner or administrators can perform this operation, otherwise 401 is returned.

POST /panorama/moveMulti - moves multiple panoramas. A JSON object containing the panorama IDs as keys and JSON objects as specified in move, above, should be supplied.

POST /panorama/upload - uploads a panorama, supplied as POST data file with a type of file.

POST /sequence/create - creates a new sequence. Expects a JSON array containing the panorama IDs which will make up the sequence, in intended sequence order, sent within the request body. If auth is true, only logged-in users may create a sequence, otherwise 401 is returned.

GET /sequence/{id:[0-9]+} - retrieves a sequence, with the full details of the panoramas contained within it (see GET /panorama/{id} above) as a JSON array of objects.

These endpoints are only available if auth is true:

GET /user/login - gets login information about the current user, as a JSON object containing username, userid and isadmin fields. If the user is not logged in, username will be null and the other fields will be 0.

POST /user/login - logs in a user and sets a session variable userid. Expects username and password POST fields. Returns a JSON object, containing username, userid and isadmin fields (on success) or an error field (on error).

POST /user/logout - logs out a user by destroying the session.

POST /user/signup - signs up a new user. Expects username, password and password POST fields. Performs validation, such as checking that the username is an email address (this can be used for example to perform forgotten password functionality, though this is not available by default), checks the password is at least 8 characters, check the two password fields match, and check a user of that username has not signed up already. Returns a JSON object, with a username field (on success) or error field (on error).

GET /panos/mine - returns the panoramas belonging to the currently logged-in user, as JSON, as an array of JSON objects as described in GET /panorama/{id} above. Returns 401 if not logged in.

Environment variables

Configuring the Openwanderer-server is done through environment-variables. Following variables are currently supported:

OpenWanderer supports the .env file format to control environment variables. In case you want to use a .env-file for setting the required environment variables, you should create one in the root directory for your OpenWanderer app.

Example apps

A range of example apps are available in this repository. Currently three apps are present, in order of increasing complexity these are:

Please see the docs for each example for more details.

Licensing

As of the first commit on October 10, 2020, the code is now licensed under the Lesser GNU General Public License, by agreement between both OpenWanderer repository owners (@mrAceT and @nickw). The exception is third-party code such as geojson-path-finder which is licensed separately, details in the relevant directories. This has been done to:

Any further changes to the current OpenTrailView - OTV360; repo here will remain under the GPL v3.


All versions of openwanderer with dependencies

PHP Build Version
Package Version
Requires php Version >=7.2
slim/slim Version ^4.5.0
slim/psr7 Version ^1.2.0
slim/http Version ^1.0
slim/php-view Version ^2.2
php-di/php-di Version ^6.1
vlucas/phpdotenv Version ^5.3
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package openwanderer/openwanderer contains the following files

Loading the files please wait ....