2 //ecverniy.bot69@ "verniy-bot:"
3 function authenticate($url, $user, $pass, &$curl){
4 curl_setopt($curl, CURLOPT_HTTPAUTH
, CURLAUTH_BASIC
);
5 curl_setopt($curl,CURLOPT_FOLLOWLOCATION
, true);
6 curl_setopt($curl,CURLOPT_USERAGENT
, "Banlog-updater");
7 curl_setopt($curl, CURLOPT_HEADER
, true);
8 curl_setopt($curl, CURLOPT_USERPWD
, "$user:$pass");
9 curl_setopt($curl, CURLOPT_RETURNTRANSFER
, 1);//set to on
12 // path string Required. The content path.
13 // message string Required. The commit message.
14 // content string Required. The new file content, Base64 encoded.
15 //https://stackoverflow.com/questions/36835116/how-to-create-and-update-a-file-in-a-github-repository-with-php-and-github-api
16 function createFile(&$curl, $file_name, &$log_position, &$log_contents){
18 if($file_name == NULL ||
strpos($file_name,".ini") !== false /*|| strpos($file_name,"RepoFunctions.php") !== false*/){
19 echo " /////// Auto Init $file_name ////";
20 $initialization_message = base64_encode("Automatic-File Initialization/Files obscured");
23 $initialization_message = base64_encode(file_get_contents("../" . $file_name));
28 \"message\": \"Initialization of $file_name\",
30 \"name\": \"Verniy-Bot\",
31 \"email\": \"ecverniy.bot69@gmail.com\"
33 \"content\": \"$initialization_message\"
37 curl_setopt($curl, CURLOPT_CUSTOMREQUEST
, "PUT");
38 curl_setopt($curl, CURLOPT_POSTFIELDS
, $data);
41 $log_position = sizeof($log_contents["File-Name"]);
43 //https://stackoverflow.com/questions/19888832/github-api-update-a-file-in-php
44 function updateFile(&$curl, $file_name, &$log_position, &$log_contents){
45 if($file_name == NULL /*|| strpos($file_name,"backup.php") !== false || strpos($file_name,"RepoFunctions.php") !== false*/){
46 $update_message = base64_encode("Automatic-File update");
49 $update_message = base64_encode(file_get_contents("../" . $file_name));
53 \"message\": \"Update of $file_name\",
54 \"sha\": \"" . $log_contents["Sha"][$log_position] ."\",
56 \"name\": \"Verniy-Bot\",
57 \"email\": \"ecverniy.bot69@gmail.com\"
59 \"content\": \"$update_message\"
62 curl_setopt($curl, CURLOPT_CUSTOMREQUEST
, "PUT");
63 curl_setopt($curl, CURLOPT_POSTFIELDS
, $data);
66 function updateFileDirect(&$curl, $file_name, &$log_position, &$sha){
67 if($file_name == NULL ||
strpos($file_name,".ini") !== false /*|| strpos($file_name,"RepoFunctions.php") !== false*/){
68 $update_message = base64_encode("Automatic-File update/ obscured");
71 $update_message = base64_encode(file_get_contents("../" . $file_name));
75 \"message\": \"Update of $file_name\",
76 \"sha\": \"" . $sha ."\",
78 \"name\": \"Verniy-Bot\",
79 \"email\": \"ecverniy.bot69@gmail.com\"
81 \"content\": \"$update_message\"
84 curl_setopt($curl, CURLOPT_CUSTOMREQUEST
, "PUT");
85 curl_setopt($curl, CURLOPT_POSTFIELDS
, $data);
88 function deleteFile(&$curl, $file_name, &$log_position, &$sha){
91 \"message\": \"Deletion of $file_name\",
92 \"sha\": \"" . $sha ."\",
94 \"name\": \"Verniy-Bot\",
95 \"email\": \"ecverniy.bot69@gmail.com\"
101 function fileStatus($file_name, &$log_contents){
102 //1. scan for file names
103 //1ai. if not found return 0
107 foreach($log_contents["File-Name"] as $log_file){
108 if($log_file == $file_name){
109 //may require no update. check for certainty
111 // "../" removed in backup.php
112 $filetime = filemtime("../" . $file_name);
113 if($log_contents["Recorded-Last-Update"][$entry_no] < $filetime){
121 return array($exists, $entry_no);