Giter Site home page Giter Site logo

Comments (6)

arup1221 avatar arup1221 commented on August 21, 2024 2

@pandafy I am Working on this issue.

from openwisp-notifications.

pandafy avatar pandafy commented on August 21, 2024 1

The internal.openwisp.test and external.openwisp.test hostname provided above are just for example. These hostnames could be anything depending on the installation.

To understand the issue better, check the HTML code of the rendered notification element in the UI

Screenshot from 2024-02-28 15-34-53

Here, an absolute URL is used for the device. We want to have the relative URL so that the URL works across different hostnames.

What's the catch?

The same logic is used for adding notification message in the emails. We want the emails to continue having absolute URLs, otherwise users would not be able to follow the URL to OpenWISP.

from openwisp-notifications.

BassCoder2808 avatar BassCoder2808 commented on August 21, 2024

Hi @nemesisdesign, I wanted to contribute to this issue if it is still open, I have installed the openwisp-notifications and the setup part is done for the same, I wanted the steps like how can I reproduce the issue based on which I can change the code

from openwisp-notifications.

pandafy avatar pandafy commented on August 21, 2024

Steps to replicate the issue

  1. Run the test project in this repository
  2. Edit the /etc/hosts file to point internal.openwisp.test and external.openwisp.test to 127.0.0.1 using the following command
sudo bash -c 'echo "127.0.0.1    internal.openwisp.test external.openwisp.test" >> /etc/hosts'
  1. Update the site objects at http://127.0.0.1:8000/admin/sites/site/ as following:
    image
    Note: Instead of deleting the existing site object, edit it to use external.openwisp.test.
  2. Generate a default notification by using the create_notification management command from the shell
cd tests/
./manage.py create_notification
  1. Open http://internal.openwisp.test:8000/admin/ and click on the notification in the notification widget

Actual result
After clicking on the notification, the user to sent to the target object with external.openwisp.test domain. E.g.: http://external.openwisp.test:8000/admin/openwisp_users/organization/b150de21-65b2-4499-b1a8-3af78e8442b5/change/

Expected result
After clicking on the notification, the URL should take the user to the target object with internal.openwisp.test domain. E.g.: http://internal.openwisp.test:8000/admin/openwisp_users/organization/b150de21-65b2-4499-b1a8-3af78e8442b5/change/

from openwisp-notifications.

pandafy avatar pandafy commented on August 21, 2024

It is important to update the ALLOWED_HOSTS settings in tests/settings.py like below to replicate this issue

ALLOWED_HOSTS = ['internal.openwisp.test', 'external.openwisp.test', '127.0.0.1']

Thanks to @arup1221 for reporting this in the developer chat. 👏🏼

from openwisp-notifications.

arup1221 avatar arup1221 commented on August 21, 2024

Thanks also, @pandafy, for allowing me to work on this project. I am currently figuring out whether this bug is related to notification generation and how to redirect it to
http://internal.openwisp.test:8000/admin/openwisp_users/organization/<id>/change/."

from openwisp-notifications.

Related Issues (20)

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.