Budget 2020
This commit is contained in:
@@ -12,12 +12,14 @@ try {
|
||||
|
||||
define('SCHULPORTAL_BASE0_URL', "https://portal.schulen.bayern.de");
|
||||
define('SCHULPORTAL_BASE_URL', SCHULPORTAL_BASE0_URL . '/uniquesig2d1dfad4a11c25e42c462e53b4721e48/uniquesig0');
|
||||
define('SCHULPORTAL_ASD_BASE_URL', SCHULPORTAL_BASE0_URL . '/uniquesigc3ba1685059aaf325d44099df697a0a635e79a4ec36ec614a98f3bf4b79d7c043ac3880605b7751df91d11233380ad86/uniquesig0/asd');
|
||||
//define('SCHULPORTAL_ASD_BASE_URL', SCHULPORTAL_BASE0_URL . '/uniquesigc3ba1685059aaf325d44099df697a0a635e79a4ec36ec614a98f3bf4b79d7c043ac3880605b7751df91d11233380ad86/uniquesig0/asd');
|
||||
define('SCHULPORTAL_ASD_BASE_URL', SCHULPORTAL_BASE0_URL . '/f5-w-687474703a2f2f6173642d6170702d70726f642e727a2d737565642e62617965726e2e64653a38323830$$/asd/');
|
||||
|
||||
//define('SCHULPORTAL_ASD_BASE_URL', 'http://192.168.56.3:8280/asd');
|
||||
|
||||
|
||||
|
||||
Configure::write('AsdCurl.proxy','10.1.248.1:82');
|
||||
Configure::write('AsdCurl.proxy','127.0.0.1:8080');
|
||||
//Configure::write('AsdCurl.proxy','10.1.248.1:82');
|
||||
Configure::write('AsdCurl.cookiejar', '/tmp/cookies.txt');
|
||||
Configure::write('AsdCurl.cookiefile', '/tmp/cookies.txt');
|
||||
//Configure::write('AsdCurl.cookiejar', 'C:/xampp/tmp/cookies.txt');
|
||||
|
||||
@@ -22,8 +22,8 @@ class AsdCurl
|
||||
|
||||
public function init_curl_params()
|
||||
{
|
||||
$ch = curl_init();
|
||||
curl_setopt($ch, CURLOPT_PROXY, Configure::read('AsdCurl.proxy'));
|
||||
$ch = curl_init('https://portal.schulen.bayern.de/');
|
||||
//curl_setopt($ch, CURLOPT_PROXY, Configure::read('AsdCurl.proxy'));
|
||||
//curl_setopt($ch, CURLOPT_PROXY, true);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, Configure::read('AsdCurl.useragent'));
|
||||
curl_setopt($ch, CURLOPT_HEADER, false);
|
||||
@@ -32,12 +32,28 @@ class AsdCurl
|
||||
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
|
||||
curl_setopt($ch, CURLOPT_COOKIEJAR, Configure::read('AsdCurl.cookiejar'));
|
||||
curl_setopt($ch, CURLOPT_COOKIEFILE, Configure::read('AsdCurl.cookiefile'));
|
||||
curl_setopt($ch, CURLOPT_COOKIE, Configure::read('AsdCurl.cookie'));
|
||||
//curl_setopt($ch, CURLOPT_COOKIE, Configure::read('AsdCurl.cookie'));
|
||||
curl_setopt($ch, CURLOPT_SSLCERT, Configure::read('AsdCurl.cert'));
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
|
||||
return ($ch);
|
||||
}
|
||||
|
||||
public function get_akt_schuljahr_id() {
|
||||
$akt_jahr = date("Y");
|
||||
return (int)substr($akt_jahr,2,2) + 5;
|
||||
}
|
||||
|
||||
public function get_akt_schuljahr() {
|
||||
$akt_jahr = date("Y");
|
||||
return $akt_jahr;
|
||||
}
|
||||
|
||||
public function get_ende_akt_schuljahr() {
|
||||
$akt_jahr = date("Y");
|
||||
$date = '31.07.'. (string)((int)$akt_jahr + 1);
|
||||
return $date;
|
||||
}
|
||||
|
||||
public function get_string_between($string, $start, $end)
|
||||
{
|
||||
//debug($start);
|
||||
@@ -95,7 +111,7 @@ class AsdCurl
|
||||
|
||||
$login_data = [
|
||||
'asd_username' => 'A005_TrinklW',
|
||||
'asd_password' => 'HiegTzs!183',
|
||||
'asd_password' => 'HiegTzs!195',
|
||||
//'asd_username' => 'A005_Superuser',
|
||||
//'asd_password' => 'asdtest01',
|
||||
];
|
||||
@@ -114,48 +130,7 @@ class AsdCurl
|
||||
}
|
||||
$viewstate = $this->get_string_between($this->html, 'id="javax.faces.ViewState" value="', '" autocomplete');
|
||||
Configure::write('Session', ['viewstate' => $viewstate]);
|
||||
}
|
||||
|
||||
public function login_mstr($ch) {
|
||||
$SCHULPORTAL_MSTR_BASE_URL = Configure::read('AsdCurl.mstrbaseurl');
|
||||
$url = '/asp';
|
||||
//debug($SCHULPORTAL_MSTR_BASE_URL . $url);die;
|
||||
$this->exec_curl($ch, $SCHULPORTAL_MSTR_BASE_URL . $url, false);
|
||||
|
||||
//debug($this->html);die;
|
||||
|
||||
$post = [
|
||||
'Uid' => 'A005_TrinklW',
|
||||
'Pwd' => 'HiegTzs!12',
|
||||
];
|
||||
$pvar['ConnMode'] = $this->get_string_between($this->html, '<input name="ConnMode" id="ConnMode" type="hidden" class="mstrHiddenInput" value="', '"/>');
|
||||
$pvar['3054'] = $this->get_string_between($this->html, '<input name="3054" id="3054" type="submit" value="', '" class="mstrButton"/>');
|
||||
$mstr_login_vars = array('evt', 'src', 'target', 'key', 'Port', 'Project', 'Server', 'login', 'smartBanner', 'lb');
|
||||
foreach ($mstr_login_vars as $var) {
|
||||
$value = $this->get_string_between($this->html, 'name="' . $var . '" type="hidden" class="mstrHiddenInput" value="', '"/>');
|
||||
//$value = $this->get_string_between($this->html, 'name="' . $var . '" value=', 'type="hidden"');
|
||||
$pvar[$var] = $value;
|
||||
}
|
||||
|
||||
$post = array_merge($post, $pvar);
|
||||
//debug($post);die;
|
||||
$this->exec_curl($ch, $SCHULPORTAL_MSTR_BASE_URL . '/asp/Main.aspx', $post);
|
||||
if(strpos($this->html,'Login failure')) {
|
||||
$this->status = false;
|
||||
}
|
||||
//debug($this->html);die;
|
||||
}
|
||||
|
||||
public function logout_mstr($ch) {
|
||||
$SCHULPORTAL_MSTR_BASE_URL = Configure::read('AsdCurl.mstrbaseurl');
|
||||
$url = '/asp/Main.aspx';
|
||||
$post = [
|
||||
'evt' => '3008',
|
||||
'src' => 'mstrWeb.3008',
|
||||
'xts' => exec('date +%s%3N'),
|
||||
];
|
||||
$this->exec_curl($ch, $SCHULPORTAL_MSTR_BASE_URL . $url, $post);
|
||||
curl_close($ch);
|
||||
}
|
||||
|
||||
public function login_school($ch)
|
||||
@@ -164,38 +139,45 @@ class AsdCurl
|
||||
$SCHULPORTAL_BASE_URL = Configure::read('AsdCurl.schulbaseurl');
|
||||
//$login_data = $this->request->session()->read('data');
|
||||
//debug($SCHULPORTAL_BASE_URL);
|
||||
$html = $this->exec_curl($ch, $SCHULPORTAL_BASE_URL, false);
|
||||
//debug($html);
|
||||
$this->exec_curl($ch, $SCHULPORTAL_BASE_URL, false);
|
||||
//debug($this->html);
|
||||
|
||||
if(!($this->status)) {
|
||||
die($this->error);
|
||||
}
|
||||
//debug($html);
|
||||
$vorschalt = $this->get_string_between($this->html,'an parallelen Zugriffen zu ',' beim');
|
||||
//debug($vorschalt);
|
||||
if($vorschalt == 'Anmeldeproblemen') {
|
||||
|
||||
$post = [
|
||||
'choice' => 1
|
||||
];
|
||||
|
||||
$this->exec_curl($ch, 'https://portal.schulen.bayern.de/my.policy', $post);
|
||||
//debug($this->html);
|
||||
}
|
||||
|
||||
|
||||
$login_data = [
|
||||
'portal_username' => 'asd.trinkl',
|
||||
'portal_password' => 'HiegTzs!192',
|
||||
'portal_password' => 'HiegTzs!193',
|
||||
];
|
||||
|
||||
$post = [
|
||||
'user_name' => $login_data['portal_username'],
|
||||
'username' => $login_data['portal_username'],
|
||||
'password' => $login_data['portal_password'],
|
||||
'repository' => 'schulen.bayern.de',
|
||||
'site_name' => 'schulportal',
|
||||
'secure' => '1',
|
||||
'resource_id' => '2',
|
||||
'login_type' => '2',
|
||||
//'repository' => 'schulen.bayern.de',
|
||||
//'site_name' => 'schulportal',
|
||||
//'secure' => '1',
|
||||
//'resource_id' => '2',
|
||||
//'login_type' => '2',
|
||||
];
|
||||
// Anmeldeformular fuer das Schulportal abschicken - Step 2
|
||||
|
||||
$this->exec_curl($ch, $SCHULPORTAL_BASE_URL . '/InternalSite/Validate.asp', $post);
|
||||
$this->exec_curl($ch, 'https://portal.schulen.bayern.de/my.policy', $post);
|
||||
//debug($this->html);die;
|
||||
if(!($this->status)) {
|
||||
die($this->error);
|
||||
}
|
||||
}
|
||||
|
||||
public function exec_mstr($ch, $url, $post)
|
||||
{
|
||||
$SCHULPORTAL_MSTR_BASE_URL = Configure::read('AsdCurl.mstrbaseurl');
|
||||
$html = $this->exec_curl($ch, $SCHULPORTAL_MSTR_BASE_URL . $url, $post);
|
||||
return ($html);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ class AsdUp extends AsdCurl
|
||||
'mainForm:istAnzeigeMaske' => 'false',
|
||||
'mainForm:schulnr' => $snr,
|
||||
'mainForm:action_anzeigen' => 'Direkt zur gewählten Schule',
|
||||
'mainForm:schuljahr' => '24',
|
||||
'mainForm:schuljahr' => $this->get_akt_schuljahr_id(),
|
||||
'javax.faces.ViewState' => $viewstate
|
||||
];
|
||||
|
||||
@@ -358,6 +358,9 @@ class AsdUp extends AsdCurl
|
||||
$viewstate = $this->get_string_between($this->html, 'id="javax.faces.ViewState" value="', '" autocomplete');
|
||||
$conversationId = $this->get_string_between($this->html, 'name="conversationId" value="', '" />');
|
||||
|
||||
//debug($budget['comment']);
|
||||
//debug(urlencode($budget['comment']));
|
||||
|
||||
$post = [
|
||||
'mainForm' => 'mainForm',
|
||||
'referenzBaumAnzeigen' => 'false',
|
||||
@@ -372,15 +375,16 @@ class AsdUp extends AsdCurl
|
||||
'skipvalidation' => 'false',
|
||||
'mainForm:istAnzeigeMaske' => 'false',
|
||||
'mainForm:schulnr' => '',
|
||||
'mainForm:schuljahr' => '24',
|
||||
'mainForm:schuljahr' => $this->get_akt_schuljahr_id(),
|
||||
'mainForm:schulnummer' => $budget['snr'],
|
||||
'mainForm:tab2:artZuschlag' => 'com.hp.asd.wl.domain.standard.Budgetform:' . $budget['wl_werteliste_nr'],
|
||||
'mainForm:tab2:datumBis' => '31.07.2020',
|
||||
'mainForm:tab2:datumBis' => $this->get_ende_akt_schuljahr(),
|
||||
'mainForm:tab2:_edit_budget' => $budget['count'],
|
||||
'mainForm:tab2:_edit_bemerkung' => $budget['comment'],
|
||||
'mainForm:tab2:hinzufuegen' => 'Hinzufügen',
|
||||
'javax.faces.ViewState' => $viewstate
|
||||
];
|
||||
//debug(http_build_query($post));
|
||||
$this->exec_curl($ch, $SCHULPORTAL_ASD_BASE_URL . '/asdbu/up_07_50.jsf?cid=' . $conversationId, $post);
|
||||
if(!($this->status)) {
|
||||
die($this->error);
|
||||
@@ -403,10 +407,10 @@ class AsdUp extends AsdCurl
|
||||
'skipvalidation' => 'false',
|
||||
'mainForm:istAnzeigeMaske' => 'false',
|
||||
'mainForm:schulnr' => '',
|
||||
'mainForm:schuljahr' => '24',
|
||||
'mainForm:schuljahr' => $this->get_akt_schuljahr_id(),
|
||||
'mainForm:schulnummer' => $budget['snr'],
|
||||
'mainForm:tab2:artZuschlag' => 'com.hp.asd.wl.domain.standard.Budgetform:' . $budget['wl_werteliste_nr'],
|
||||
'mainForm:tab2:datumBis' => '31.07.2020',
|
||||
'mainForm:tab2:datumBis' => $this->get_ende_akt_schuljahr(),
|
||||
'mainForm:tab2:_edit_budget' => '',
|
||||
'mainForm:tab2:_edit_bemerkung' => '',
|
||||
'mainForm:speichern' => 'Speichern',
|
||||
@@ -416,7 +420,8 @@ class AsdUp extends AsdCurl
|
||||
if(!($this->status)) {
|
||||
die($this->error);
|
||||
}
|
||||
//echo $this->html;die;
|
||||
//echo $this->html;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user