Giter Site home page Giter Site logo

webcoast-dk / nawork-uri Goto Github PK

View Code? Open in Web Editor NEW
9.0 2.0 4.0 1.04 MB

Awesome URLs for TYPO3!

License: GNU General Public License v3.0

PHP 85.54% TypeScript 0.18% CSS 0.68% JavaScript 8.57% HTML 4.26% SCSS 0.78%
typo3 typo3-cms typo3-extension php php7 nawork-uri

nawork-uri's Introduction

EXT:nawork_uri

nawork-uri is a modern, flexible extension for creating and managing urls and redirects in the TYPO3 CMS. The main features are:

  • automatic creation of nice looking urls based on page paths, records, ...
  • automatic page not found/not accessible handling
  • backend modules for managing urls and redirects
  • easy ways to extend url creation

Installation & Setup

Clone the extension from GitHub, manually or via composer, and activate the extension via the extension manager. Register a configuration using the given API. Activate the extension by selecting a registered config in a domain record.

Prerequisites

  • TYPO3 CMS 7
  • PHP 5.5 w/ cURL, SimpleXML

Documentation

The documentation and some configuration examples can be found in the GitHub wiki: https://github.com/nawork/nawork-uri/wiki

Contributing

You are free to fork the repository, make changes in a new branch an create a pull request. If you are not into coding or do not have the time, open up an issue.

Credits

The extension is developed and maintained by n@work Internet Informationssysteme GmbH in Hamburg www.work.de

License

Copyright (C) 2016 n@work Internet Informationssystem GmbH

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

nawork-uri's People

Contributors

markus-k avatar mschuhbauer avatar sicordev avatar thommyhh avatar tmotyl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

nawork-uri's Issues

Improve logging

Logging should not use BE-Log but the current TYPO3 logging mechanisms.

Documentation

Using this extension is impossible without documentation.

Please document:

  • basic, quick & easy setup
  • XML Structure
  • shipped TransformationServices and their configuration

Missing explanations

Hi, yours extension looks very promising, thanks for your work and sharing.
I have some question at beginning.

During reading manual i read in configuration section

You can use the "extends" attribute ... See configuration examples how this is done.

but i can't find anything about that in examples.

Second thing, in extensions like cooluri or realurl the main configuration file is located in configured (from EM) location, how this is managed in network-uri ?

SQL Error in Redirect Module

My Environment:
TYPO3 7
PHP 5.6
Nawork: master/3.1.x/3.0.x version

How to reproduce:

  1. Create a new redirect of type "redirect to page" (Insert nothing in the mask)
  2. Close and exit
  3. Create a new redirect of type "redirect to page"
  4. The following error occurs:

2: SQL error: 'Duplicate entry 'd41d8cd98f00b204e9800998ecf8427e' for key 'domain_path'' (tx_naworkuri_uri:NEW5a531fea8a2ff423555363)

It creates an empty redirect, which is not visible in the backend. The normal user has no way of editing or deleting this empty redirect.
I was only able to manually remove the record from the database to resolve this error.

It would make sense to mark the required fields in the backend mask and only save the record if these fields are filled correctly.

Deprecation warnings

I'm getting these deprecation warnings with nawork_uri 3.0.0 on every request:

Core: Error handler (FE): PHP Runtime Deprecation Notice: Non-static method Nawork\NaworkUri\Utility\GeneralUtility::uri_make_wellformed() should not be called statically in /var/www/releases/20161116160057/www-data/typo3conf/ext/nawork_uri/Classes/Utility/GeneralUtility.php line 137	
Core: Error handler (FE): PHP Runtime Deprecation Notice: Non-static method Nawork\NaworkUri\Utility\GeneralUtility::uri_limit_allowed_chars() should not be called statically in /var/www/releases/20161116160057/www-data/typo3conf/ext/nawork_uri/Classes/Utility/GeneralUtility.php line 136	
Core: Error handler (FE): PHP Runtime Deprecation Notice: Non-static method Nawork\NaworkUri\Utility\GeneralUtility::uri_handle_whitespace() should not be called statically in /var/www/releases/20161116160057/www-data/typo3conf/ext/nawork_uri/Classes/Utility/GeneralUtility.php line 135	
Core: Error handler (FE): PHP Runtime Deprecation Notice: Non-static method Nawork\NaworkUri\Utility\GeneralUtility::uri_handle_punctuation() should not be called statically in /var/www/releases/20161116160057/www-data/typo3conf/ext/nawork_uri/Classes/Utility/GeneralUtility.php line 134

Environment:

  • Debian Stretch
  • PHP 7
  • TYPO3 7.6

Improve error handling/logging

Hi there,

the syslog of many typo3 installations is full of messages like this one:

A transformation could not completed: An exception was thrown while transforming the value. The message was:

It would be really helpful if the exception would output some information regarding the problem itself, like the URL and in which line in the source the exception was thrown.

If you give me a hint, i could take a closer look.

Error when no domain record found

when there is no domain record, an error is thrown when accessing backend modules (URl management or Redirect Management)

Uncaught TYPO3 Exception
Call to a member function getUid() on null 

Error thrown in file
typo3conf/ext/nawork_uri/Classes/Domain/Model/Filter.php in line 171.

18 Nawork\NaworkUri\Domain\Model\Filter::jsonSerialize()
17 json_encode(Nawork\NaworkUri\Domain\Model\Filter)

typo3conf/ext/nawork_uri/Classes/Controller/UrlController.php:
00191:   $this->view->assignMultiple(
00192:             [
00193:                 'filter' => json_encode($filter),
00194:                 'userSettings' => json_encode($this->userSettings),
00195:                 'labels' => $this->buildLabelsObject()

404 pages for sites with sublanguages

Hi!

Currently nawork_uri handles the 404 pages per domain. So if you have www.test.de and www.test.com it would display the correct 404 pages. But if you have more than one language for www.test.com there is no possibility to display the correct 404 page for that language.

www.test.com => www.test.com/404
www.test.com/it => www.test.com/it/404
www.test.com/fr => www.test.com/fr/404

I think the best option would be, that the 404 pages can be defined via the configuration per language and domain.

<Append>/</Append> doesn't work

Hi again :)
When I click a link on site, for example About company it works ok, it opens:

http://example.com/about-company/

but when I change URL to http://example.com/about-company (remove /) and tap Enter it doesn't redirect to http://example.com/about-company/ again.

And the second problem. I've got in configuration:

<General>
    <Append>/</Append>
    <RedirectStatus>301</RedirectStatus>
</General>

<castTypeToInt>1</castTypeToInt>
<castLToInt>1</castLToInt>
<redirectOnParameterDiff>1</redirectOnParameterDiff>

<PageNotFound>
    <Status>HTTP/1.0 404 Not Found</Status>
	<Behavior>Redirect</Behavior>
	<Value>/404/</Value>
</PageNotFound>

but when server uses fastcgi it doesn't redirect to /404/, but I've got 500 error and message in error log:

aborted: error parsing headers: malformed header '301'

Could you please help me?

Clearing cache error

Hello,
I use Typo3 6.2.27 and nawork_uri 2.7.4. When I click "Clear URL configuration cache" an error accurred:

No backend function registered for ajaxID "ajaxID=tx_naworkuri::clearUrlConfigurationCache".

zrzut ekranu 2016-12-15 o 15 33 08

Could you please help me?

Non-Admins are not able to use the redirect module

Non-Admin users are only able to create redirects using the redirection module. There is no possibility to edit or delete the records. (The contextmenu is empty/doesn't work)

Admin users however can edit the redirects, but its not possible to delete a record using the contextmenu. (The only way to delete a record is to edit it and then use the bin button)

Issues with typoscript_rendering extension from Helmut Hummel

When using the typoscript_rendering extension to generate AJAX links, nawork_uri generates an infinite redirect loop with the TYPO3 default .htaccess:

http://xxx.xxx.de/?tx_typoscriptrendering[context]={%22record%22:%22tt_content_17501%22,%22path%22:%22tt_content.list.20.citkobookmarks_output%22}&tx_citkobookmarks_output[controller]=Bookmarks&tx_citkobookmarks_output[bookmark]=2&tx_citkobookmarks_output[action]=delete&cHash=a0b06b5c823e07be1c8c87df92ce7ac5

Is there any way to stop nawork_uri from rewriting urls if there is a certain argument in the URL?

The URL works with deinstalled nawork-uri and with realurl. But I'd rather use nawork_uri, as it looks very promising :)

SQL Error in Frontend on trying to use nawork-uri in TYPO3

Hi,
today I tried to use nawork-uri in TYPO3. I create a new domain record to use default configuration. I create my own configuration in an extension and register this configuration. I can choose the dfeault configuration and my own configuration in the domain record. But whatever I try in frontend everytime I see an error:

Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre
      gated column 'mytestdomain.loc.sys_domain.uid' which is not functionally dependen
      t on columns in GROUP BY clause; this is incompatible with sql_mode=only_ful
      l_group_by' (238 chars)
   lastBuiltQuery => 'SELECT uid,tx_naworkuri_masterDomain FROM sys_domain WHERE domainName LIKE '
      mytestdomain.loc' GROUP BY hidden=0'

and the urls doesn't working. "Page not Found!" on every page.
Furthermore my "config.absRefPrefix=auto" prefixes me all url's with "auto".
Any idea?

Custom language domains and URL generation

Hi!

Following scenario:
3 Websites with 3 Domains and 3 Languages:

www.test.de (DE)
www.test.pl (PL)
www.test.com (EN)

You create a link on the DE website to a link on the PL website.

nawork_uri gets the parameters:

L=2
id=15

Now nawork_uri fetches the Domain from the HTTP_HOST and saves the URL for the DE Domain, which is not correct if you have 1 language per domain.

I hope this is understandable.

Greetings,

Marten

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.