I heard back from BlueRiver last week, they said they are setting up an environment to test and see if they can figure it out. We’ll see what comes to that.
In the meantime, I have come up with two workarounds. I am not super excited about either. I would rather it just work correctly, but, if needed, I could potentially implement one of the workarounds.
Workaround #1
The first workaround is to pass the path with the calls to buildURL() redirect(). This seems to accomplish what I need.
Example:
<form action="#buildURL('main.saveGraduationRequest', '#cgi.path_info#')#" id="graduationForm" method="post">
Note the additional cgi.path_info param being passed in.
Unfortunately, this workaround would require HUNDREDS of code changes. Going forward, if I develop new plugins, I will use this method.
Workaround #2
The second workaround is to modify FW/1 itself.
In the buildURL() function, if I replace this line:
path = pathData.path;
with:
path = cgi.path_info
It seems to correct the problem.
I have not determined if there are any other consequences to making this change. Fortunately, each plugin has its own copy of FW/1 and the only thing that copy of FW/1 does is support that plugin. So, if the plugin works correctly with the change, it should not affect anything else.
Like I said, I’d rather it just work correctly. I am still open to ideas if anyone has any.