-
Notifications
You must be signed in to change notification settings - Fork 117
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
Feature request: Add option to hide all paper details from conflicted PC members #366
Feature request: Add option to hide all paper details from conflicted PC members #366
Conversation
Thanks!! This is a good idea but needs a different implementation. The place to put this logic is
Changes to aspects of HotCRP rights are very important to test as well. |
Dear EddieThank you for you feedback. I will hopefully find time to look at this sometime soon.On 6 Oct 2024, at 14:54, Eddie Kohler ***@***.***> wrote:
Thanks!! This is a good idea but needs a different implementation. The place to put this logic is Contact::rights and Contact::can_view_paper, in src/contact.php. In particular, I think you want to add another clause to the setting of $allow_pc_broad in Contact::rights. Something like
$allow_pc_broad = $allow_administer
|| ($isPC
&& ($ci->conflictType <= CONFLICT_MAXUNCONFLICTED || $this->conf->pc_hideconflicts));
Changes to aspects of HotCRP rights are very important to test as well.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: ***@***.***>
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall comment is that settings aside, you want to start again.
You may not be familiar with HotCRP's test suite. Run it with test/check.sh
src/conference.php
Outdated
@@ -257,6 +257,9 @@ class Conf { | |||
const BLIND_ALWAYS = 2; | |||
const BLIND_UNTILREVIEW = 3; | |||
|
|||
const PC_HIDECONFLICTED_NO = 0; | |||
const PC_HIDECONFLICTED_YES = 1; | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Better to have just a boolean (no explicit constants)
src/pages/p_doc.php
Outdated
if(!$user->privChair && $prow->conf->settings["pc_hideconflicted"] == 1 && $prow->has_conflict($user) && !$row->has_author($pl->user)) { | ||
self::error("403 Forbidden", MessageItem::error("<5>Access denied to conflicting submission."), $qreq); | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should not be needed. The immediately preceding logic should suffice. If you want a special error message you could implement that logic in src/failurereason.php
.
src/pages/p_paper.php
Outdated
$pt->print_paper_info(); | ||
if($pt->user->privChair || !($pt->conf->settings["pc_hideconflicted"] == 1 && $pt->prow->has_conflict($pt->user) && !$pt->prow->has_author($pt->user))) { | ||
$pt->print_paper_info(); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don;t want this
src/papercolumn.php
Outdated
if(!$pl->user->privChair && $pl->conf->settings["pc_hideconflicted"] == 1 && $row->has_conflict($pl->user) && !$row->has_author($pl->user)) { | ||
return "#{$row->paperId}"; | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't want this (logic should be in can_view_paper)
src/papercolumn.php
Outdated
if ($this->want_decoration | ||
&& ($pl->row_tags !== "" || $pl->row_tags_override !== "")) { | ||
$t .= $row->decoration_html($pl->user, $pl->row_tags, $pl->row_tags_override); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't want this (logic again should be in can_view_paper)
src/papercolumn.php
Outdated
if($pl->conf->settings["pc_hideconflicted"] == 1 && $row->has_conflict($pl->user) && !$row->has_author($pl->user)) { | ||
return ""; | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto
src/papertable.php
Outdated
if (!$paperTable->user->privChair && $prow->has_conflict($paperTable->user) && !$prow->has_author($paperTable->user)) { | ||
$paperConflicted = true; | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto
f9e9a6d
to
5f6ede6
Compare
In our conferences, it is usual that PC members who have a conflict with a paper, cannot see anything about these papers (no abstract, title, PDF). As this was not possible yet with HotCRP, I implemented this by...
pc_hide_conflicted_papers
(yes/no)