Disable rewrite level 2 if test request fails

This commit is contained in:
Kijin Sung 2021-01-19 23:18:38 +09:00
parent dd561d9159
commit 8964891387
4 changed files with 35 additions and 1 deletions

View file

@ -52,6 +52,12 @@ class Router
'extra_vars' => ['act' => 'procFileOutput'],
'priority' => 0,
),
'common/rewrite/test/$test' => array(
'regexp' => '#^common/rewrite/test/(?<test>[0-9]+)$#',
'vars' => ['test' => 'int'],
'extra_vars' => ['act' => 'dispAdminRewriteTest'],
'priority' => 0,
),
);
/**

View file

@ -1007,7 +1007,16 @@ class adminAdminView extends admin
Context::set('str_info', $str_info);
$this->setTemplateFile('server_env.html');
}
/**
* Rewrite test
*/
public function dispAdminRewriteTest()
{
$test = intval(Context::get('test'));
Context::setResponseMethod('JSON');
$this->add('result', $test * 42);
}
}
/* End of file admin.admin.view.php */
/* Location: ./modules/admin/admin.admin.view.php */

View file

@ -16,6 +16,7 @@
<action name="dispAdminConfigFtp" type="view" menu_name="adminConfigurationFtp" menu_index="true" />
<action name="dispAdminSetup" type="view" menu_name="adminMenuSetup" menu_index="true" />
<action name="dispAdminViewServerEnv" type="view" />
<action name="dispAdminRewriteTest" type="view" />
<action name="procAdminRemoveIcons" type="controller" />
<action name="procAdminRecompileCacheFile" type="controller" />

View file

@ -29,6 +29,24 @@ jQuery(function($){
}
}).triggerHandler("change");
}
// Disable rewrite level 2 if test AJAX request fails.
if ($('#use_rewrite_2').size() && !$('#use_rewrite_2').is(':checked')) {
var testval = 1000 + Math.floor(Math.random() * 9000);
$.ajax({
url: request_uri + 'common/rewrite/test/' + testval,
type: 'GET',
dataType: 'json',
success: function(data) {
if (data.result != testval * 42) {
$('#use_rewrite_2').prop('disabled', true);
}
},
error: function() {
$('#use_rewrite_2').prop('disabled', true);
}
});
}
});
function setStartModule(){