Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not authorized to edit Layers even as Admin #369

Open
marcnyc2001 opened this issue May 22, 2023 · 19 comments
Open

Not authorized to edit Layers even as Admin #369

marcnyc2001 opened this issue May 22, 2023 · 19 comments

Comments

@marcnyc2001
Copy link

Hello, I am having an issue with LAYERS.
I am the ADMIN but when I click on ADMIN>Layers I get a message that says:
"!!!You are not authorized" and I am unable to add or even view the current layers.

Can somebody help me get access to this feature, please?
Thank you

@Tharrington86
Copy link

I actually discovered this same issue this morning. I tried other admin accounts and got the same message, effectively removing our ability to use layers at all.

@marcnyc2001
Copy link
Author

Have you found a solution?

@craigk5n
Copy link
Owner

What version are you using. I am unable to reproduce this in v1.9.9.

@marcnyc2001
Copy link
Author

1.2.7

@Tharrington86
Copy link

I have not found a solution yet. I am using the latest version of the calendar. None of my admin accounts can access layers. They all receive the "You are not authorized!" message.

@marcnyc2001
Copy link
Author

me neither. would love to find a solution to this!

@Tharrington86
Copy link

I tried to create a new Admin user and experienced the same issue. Here is a screen shot of what is seen in the console when the !!!You are not authorized message is displayed.

image

@max951
Copy link

max951 commented Feb 7, 2024

Does your admin user have rights to layers?

hc_1322

@marcnyc2001
Copy link
Author

I thought mine does.
The issue is I get a "You are not authorized!!!" error so I can't even enable or disable them on my Admin page!

@max951
Copy link

max951 commented Feb 7, 2024

I'm not sure exactly which page you mean that displays the authorization hint. What is the exact path in the address bar?

@marcnyc2001
Copy link
Author

The link is: /calendar/layers.php
and the error is:
"!!!You are not authorized."
Written with 3 exclamation marks at the top of the sentence!

@max951
Copy link

max951 commented Feb 7, 2024

If you have access to the database, can you please check if the the admin user has all access permissions.

You can do this in MySQL with the statement
SELECT * FROM webcal_access_function WHERE cal_login = 'admin'

or for example in phpMyAdmin, look in table webcal_access_function in the row for user admin.
There should be only 'Y's in the permissions column. Like in this Screenshot

image

If there is a 'N' between the 'Y's, your admin user has not all permissions.

@marcnyc2001
Copy link
Author

Yep, they are all set to "YYYYYYYYYYYYYYYYYYYYYYYYYYYY" on my Admin Account

@max951
Copy link

max951 commented Feb 8, 2024

and the login name is 'admin'?
If the login name is different, is the admin flag set for this user?

@marcnyc2001
Copy link
Author

marcnyc2001 commented Feb 8, 2024

No the login name is my username (there is no username named "admin") but in the 'webcal_user' row the column 'cal_is_admin' is set to Y

@max951
Copy link

max951 commented Feb 9, 2024

Sorry, but then I don't know what to do. I would try to debug starting from the layers.php file.

I would try something like this line
?><script>console.log("$ALLOW_VIEW_OTHER=<?php echo $ALLOW_VIEW_OTHER; ?>");</script><?php
before the line
if ( $ALLOW_VIEW_OTHER != 'Y' )

This shows you the value of parameter $ALLOW_VIEW_OTHER in the browser console.

@marcnyc2001
Copy link
Author

Thanks for your suggestion Max.
I tried that but I didn't see a different output in the browser.
In the error_log file there are a bunch of these lines:

[09-Feb-2024 11:59:37 America/New_York] PHP Notice: Use of undefined constant id - assumed 'id' in /home/eastside/public_html/calendar/includes/functions.php on line 4789

@max951
Copy link

max951 commented Feb 9, 2024

The obove javascript debug line writes the output in the console, not in the browser itself.
You have to use the Browser DevTools ( [F12]-Key )

hc_091

I made this so complicated because the HTML output is not changed and other users are not disturbed by the debugging.

If you can change the HTML output without disturbing other users, then it is of course easier to simply use an echo command instead of the cryptic javascript debug line.

If you are using V1.2.7 the lines
if ( $ALLOW_VIEW_OTHER != 'Y' ) echo print_not_auth (7);

should be in lines number 48 and 49.

I assume the line "echo print_not_auth" gives the error message "!!!You are not authorized" if the variable "$ALLOW_VIEW_OTHER" is not 'Y'.

To check this, you can simply insert the line
echo '$ALLOW_VIEW_OTHER = ' . $ALLOW_VIEW_OTHER . "<br>\r\n";
before the line with the if statement.

@marcnyc2001
Copy link
Author

By adding that line I get:

$ALLOW_VIEW_OTHER = N
!!!You are not authorized.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants