unknown 5 سال پیش
والد
کامیت
2ec4865f22

+ 62 - 53
api/authorization.go

@@ -1,65 +1,74 @@
 package api
-
+ 
 import(
-	"gopkg.in/korylprince/go-ad-auth.v2"
-	"net/http"
-	"encoding/json"
+    "gopkg.in/korylprince/go-ad-auth.v2"
+    "net/http"
+    "encoding/json"
 )
-
+ 
 type User struct{
-	Login string `json:"login"`
-	Password string `json:"password"`
+    Login string `json:"login"`
+    Password string `json:"password"`
 }
-
+ 
+type Result struct{
+    Groups []string `json:"userGroups"`
+    Displayname []string `json:"Displayname"`
+}
+ 
 /*func (u User) SetCookie(w http.ResponseWriter, r *http.Request){
-	cookie := http.Cookie{
-		Name: u.Login,
-		Value: "logged in",
-		Domain: r.Host,
-		Path: "/",
-		MaxAge: 60*60,
-		HttpOnly: true,
-	}
-	http.SetCookie(rw, &cookie)
+    cookie := http.Cookie{
+        Name: u.Login,
+        Value: "logged in",
+        Domain: r.Host,
+        Path: "/",
+        MaxAge: 60*60,
+        HttpOnly: true,
+    }
+    http.SetCookie(rw, &cookie)
 }*/
-
+ 
 func LoginRoute(w http.ResponseWriter, r *http.Request){
-	showAPIRequest(r)
-	var userGroups []string
-	Groups := []string{"Студенты", "Персонал", "Бухгалтерия", "Преподаватели", "Админы"}
-	if r.Method == "POST"{
-		config := &auth.Config{
-		Server:   "192.168.10.121",
+    showAPIRequest(r)
+    var userGroups []string
+    Groups := []string{"Студенты", "Персонал", "Бухгалтерия", "Преподаватели", "Админы"}
+    if r.Method == "POST" || r.Method == "GET"{
+        config := &auth.Config{
+        Server:   "192.168.10.121",
         Port:     389,
         BaseDN:   "DC=ttit,DC=local",
         Security: auth.SecurityNone,
-		}
-
-		var user User
-		error := json.NewDecoder(r.Body).Decode(&user)
-		if error != nil{
-			json.NewEncoder(w).Encode(struct{ Error string }{Error: "an error has occured during decoding"})
-			showError(r, error)
-			return
-		}
-		status, /*entry*/_, groups, err := auth.AuthenticateExtended(config, user.Login, user.Password, []string{"cn"}, Groups)
-		if err != nil {
-	   	 	json.NewEncoder(w).Encode(struct{ Error string }{Error: "an error has occured"})
-	   	 	showError(r, err)
-	   	 	return
-		} else if !status {
-    		json.NewEncoder(w).Encode(struct{ Error string }{Error: "no user found"})
-    		return
-		} 
-		for _, group := range groups{
-			for _, constGroup := range Groups{
-				if group == constGroup{
-					userGroups = append(userGroups, group)
-				}
-			}
-		}
-		//user.SetCookie(w, r)
-		json.NewEncoder(w).Encode(userGroups)
-		return
-	}
+        }
+ 
+        var user User
+        var result Result
+        error := json.NewDecoder(r.Body).Decode(&user)
+        if error != nil{
+            json.NewEncoder(w).Encode(struct{ Error string }{Error: "an error has occured during decoding"})
+            showError(r, error)
+            return
+        }
+        status, entry, groups, err := auth.AuthenticateExtended(config, user.Login, user.Password, []string{"cn"}, Groups)
+        if err != nil {
+            json.NewEncoder(w).Encode(struct{ Error string }{Error: "an error has occured"})
+            showError(r, err)
+            return
+        } else if !status {
+            json.NewEncoder(w).Encode(struct{ Error string }{Error: "no user found"})
+            return
+        }
+ 
+        for _, group := range groups{
+            for _, constGroup := range Groups{
+                if group == constGroup{
+                    userGroups = append(userGroups, group)
+                }
+            }
+        }
+        username := entry.GetAttributeValues("cn")
+        result.Displayname = username
+        result.Groups = userGroups
+ 
+        json.NewEncoder(w).Encode(result)
+    }
 }

+ 0 - 53
log/Requests_API.log

@@ -1,53 +0,0 @@
-[7:57PM] GET request from 127.0.0.1:51589 to /api/schedule/generate
-[7:58PM] GET request from 127.0.0.1:51589 to /api/schedule/generate
-[8:01PM] GET request from 127.0.0.1:51589 to /api/schedule/generate
-[8:09PM] GET request from 127.0.0.1:51994 to /api/schedule/generate
-[8:36PM] GET request from 127.0.0.1:52078 to /api/schedule/generate
-[8:36PM] GET request from 127.0.0.1:52080 to /api/schedule/generate
-[8:36PM] GET request from 127.0.0.1:52080 to /api/schedule/generate
-[8:37PM] GET request from 127.0.0.1:52078 to /api/schedule/generate
-[8:59PM] GET request from 127.0.0.1:52423 to /api/schedule/generate
-[9:00PM] GET request from 127.0.0.1:52423 to /api/schedule/generate
-[9:06PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:07PM] GET request from 127.0.0.1:52839 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:08PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:11PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:15PM] GET request from 127.0.0.1:52779 to /api/schedule/generate
-[9:21PM] GET request from 127.0.0.1:53586 to /api/schedule/generate

+ 5 - 107
log/Requests_URL.log

@@ -1,107 +1,5 @@
-[19:54] Request from 127.0.0.1:51363 to /
-[19:54] Request from 127.0.0.1:51363 to /
-[19:54] Request from 127.0.0.1:51363 to /plan/
-[19:54] Request from 127.0.0.1:51363 to /plan/
-[19:54] Request from 127.0.0.1:51363 to /schedule/
-[19:54] Request from 127.0.0.1:51363 to /schedule/
-[19:55] Request from 127.0.0.1:51363 to /schedule/
-[19:55] Request from 127.0.0.1:51363 to /schedule/
-[19:57] Request from 127.0.0.1:51362 to /schedule/
-[19:57] Request from 127.0.0.1:51589 to /schedule/
-[19:57] Request from 127.0.0.1:51589 to /schedule/
-[19:57] Request from 127.0.0.1:51589 to /schedule/
-[19:58] Request from 127.0.0.1:51589 to /schedule/
-[19:58] Request from 127.0.0.1:51589 to /schedule/
-[19:58] Request from 127.0.0.1:51589 to /schedule/
-[19:58] Request from 127.0.0.1:51589 to /schedule/
-[19:58] Request from 127.0.0.1:51589 to /schedule/
-[19:58] Request from 127.0.0.1:51589 to /schedule/
-[19:58] Request from 127.0.0.1:51589 to /schedule/
-[19:58] Request from 127.0.0.1:51589 to /schedule/
-[20:01] Request from 127.0.0.1:51589 to /schedule/
-[20:01] Request from 127.0.0.1:51589 to /schedule/
-[20:01] Request from 127.0.0.1:51589 to /schedule/
-[20:01] Request from 127.0.0.1:51589 to /schedule/
-[20:02] Request from 127.0.0.1:51589 to /schedule/
-[20:02] Request from 127.0.0.1:51589 to /schedule/
-[20:02] Request from 127.0.0.1:51589 to /schedule/
-[20:03] Request from 127.0.0.1:51589 to /schedule/
-[20:08] Request from 127.0.0.1:51993 to /schedule/
-[20:08] Request from 127.0.0.1:51993 to /schedule/
-[20:08] Request from 127.0.0.1:51993 to /schedule/
-[20:08] Request from 127.0.0.1:51999 to /schedule/
-[20:09] Request from 127.0.0.1:51999 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:09] Request from 127.0.0.1:51994 to /schedule/
-[20:36] Request from 127.0.0.1:52077 to /schedule/
-[20:36] Request from 127.0.0.1:52078 to /schedule/
-[20:36] Request from 127.0.0.1:52078 to /schedule/
-[20:36] Request from 127.0.0.1:52078 to /schedule/
-[20:36] Request from 127.0.0.1:52078 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:36] Request from 127.0.0.1:52080 to /schedule/
-[20:37] Request from 127.0.0.1:52080 to /schedule/
-[20:37] Request from 127.0.0.1:52078 to /schedule/
-[20:59] Request from 127.0.0.1:52243 to /schedule/
-[20:59] Request from 127.0.0.1:52423 to /schedule/
-[20:59] Request from 127.0.0.1:52423 to /schedule/
-[21:00] Request from 127.0.0.1:52423 to /schedule/
-[21:00] Request from 127.0.0.1:52423 to /schedule/
-[21:06] Request from 127.0.0.1:52780 to /schedule/
-[21:06] Request from 127.0.0.1:52779 to /schedule/
-[21:06] Request from 127.0.0.1:52779 to /schedule/
-[21:06] Request from 127.0.0.1:52779 to /schedule/
-[21:07] Request from 127.0.0.1:52779 to /schedule/
-[21:07] Request from 127.0.0.1:52839 to /schedule/
-[21:07] Request from 127.0.0.1:52839 to /schedule/
-[21:08] Request from 127.0.0.1:52839 to /schedule/
-[21:08] Request from 127.0.0.1:52839 to /schedule/
-[21:08] Request from 127.0.0.1:52839 to /schedule/
-[21:08] Request from 127.0.0.1:52839 to /schedule/
-[21:08] Request from 127.0.0.1:52779 to /schedule/
-[21:11] Request from 127.0.0.1:52779 to /schedule/
-[21:11] Request from 127.0.0.1:52779 to /schedule/
-[21:15] Request from 127.0.0.1:52779 to /schedule/
-[21:15] Request from 127.0.0.1:52779 to /schedule/
-[21:15] Request from 127.0.0.1:52779 to /schedule/
-[21:15] Request from 127.0.0.1:53338 to /schedule/
-[21:15] Request from 127.0.0.1:53338 to /schedule/
-[21:15] Request from 127.0.0.1:53338 to /schedule/
-[21:16] Request from 127.0.0.1:53338 to /schedule/
-[21:16] Request from 127.0.0.1:52779 to /schedule/
-[21:16] Request from 127.0.0.1:52779 to /schedule/
-[21:16] Request from 127.0.0.1:52779 to /schedule/
-[21:16] Request from 127.0.0.1:52779 to /schedule/
-[21:17] Request from 127.0.0.1:52779 to /schedule/
-[21:17] Request from 127.0.0.1:52779 to /schedule/
-[21:17] Request from 127.0.0.1:52779 to /schedule/
-[21:20] Request from 127.0.0.1:52779 to /schedule/
-[21:20] Request from 127.0.0.1:52779 to /schedule/
-[21:21] Request from 127.0.0.1:52779 to /schedule/
-[21:21] Request from 127.0.0.1:53588 to /schedule/
-[21:21] Request from 127.0.0.1:53588 to /schedule/
-[21:21] Request from 127.0.0.1:53586 to /schedule/
-[21:21] Request from 127.0.0.1:53586 to /schedule/
+[16:06] Request from 127.0.0.1:58448 to /
+[16:06] Request from 127.0.0.1:58448 to /
+[16:06] Request from 127.0.0.1:58448 to /plan/
+[16:06] Request from 127.0.0.1:58448 to /plan/
+[16:06] Request from 127.0.0.1:58448 to /plan/

+ 1 - 0
main.go

@@ -58,6 +58,7 @@ func main() {
 	fmt.Println("[", t.Format(settings.TimeLayout), "]", "Error log file can be found at log/error.log")
 
 	// API functions handling start
+	http.HandleFunc("/api/auth/", api.LoginRoute)
 	http.HandleFunc("/api/teacher/", api.TeacherRoute)
 	http.HandleFunc("/api/classroom/", api.ClassroomRoute)
 	http.HandleFunc("/api/classroom/computer", api.GetClassroomByComputer)

+ 1 - 1
static/js/api/vueAuth.js

@@ -1,5 +1,5 @@
 const requestFunc = async(url, method = "GET", data = null, token = null) => {
-	apihost = 'http://schedule.tomtit.tomsk.ru/api'
+	apihost = 'http://127.0.0.1/api'
 	method = method.toLocaleUpperCase()
 	let fullurl = `${apihost}${url}`;
 	let options = {

+ 12 - 32
static/js/api/vueClassrooms.js

@@ -1,6 +1,6 @@
 
 const requestFunc = async(url, method = "GET", data = null, token = null) => {
-	apihost = 'http://schedule.tomtit.tomsk.ru/api'
+	apihost = 'http://127.0.0.1/api'
 	method = method.toLocaleUpperCase()
 	let fullurl = `${apihost}${url}`;
 	let options = {
@@ -12,13 +12,13 @@ const requestFunc = async(url, method = "GET", data = null, token = null) => {
 };
 
 switch(method) {
-	case "PUT":
-	delete options.headers["Content-Type"];
-	options.body = data;
-	break;
-	case "POST": case "PATCH": case "DELETE":
-	options.body = JSON.stringify(data);
-	break;
+    case "PUT":
+    delete options.headers["Content-Type"];
+    options.body = data;
+    break;
+    case "POST": case "PATCH": case "DELETE":
+    options.body = JSON.stringify(data);
+    break;
 }
 
 const res = await fetch(fullurl, options);
@@ -29,10 +29,6 @@ var app = new Vue({
         delimiters: ['${', '}'],
         data: {
             classrooms:[], 
-<<<<<<< HEAD
-<<<<<<< HEAD
-            buildings: []
-=======
             buildings: [],
             selectedRow: {
                 "Code": "",
@@ -40,18 +36,11 @@ var app = new Vue({
                 "IDDuration": 0,
                 "ID": ""
             },
->>>>>>> master
-=======
-            buildings: []
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
          },
         methods: {
             showClassrooms() {
                 console.log(this.classrooms)
             },
-<<<<<<< HEAD
-<<<<<<< HEAD
-=======
             selectRow(row, index){
                 let rows = document.querySelectorAll('.clickHover')
                 console.log(index)
@@ -80,12 +69,9 @@ var app = new Vue({
                 "IDDuration": 0
                 }
             },
->>>>>>> master
-=======
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
-        	async getClassrooms(){
-        		this.classrooms = await requestFunc("/classroom", "GET")
-        	}, 
+            async getClassrooms(){
+                this.classrooms = await requestFunc("/classroom", "GET")
+            }, 
             async getBuildings() {
                 const buildings = await requestFunc("/building/", "GET")
                     .then(response => {
@@ -96,14 +82,11 @@ var app = new Vue({
             
         }, 
         mounted() {
-        	this.getClassrooms()
+            this.getClassrooms()
             this.getBuildings()
         }
     });
 
-<<<<<<< HEAD
-<<<<<<< HEAD
-=======
 addClassroom = () =>{
     let number = document.querySelector('.numberCab').value
     let placeQuantity = document.querySelector('.placeQuantity').value
@@ -124,6 +107,3 @@ addClassroom = () =>{
     requestFunc(url="/classroom/", method="POST", data=raw)
     alert("Добавлено")
 }
->>>>>>> master
-=======
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12

+ 2 - 2
static/js/api/vueIndex.js

@@ -1,5 +1,5 @@
 const requestFunc = async(url, method = "GET", data = null, token = null) => {
-    apihost = 'http://schedule.tomtit.tomsk.ru:8888/api'
+    apihost = 'http://127.0.0.1/api'
     method = method.toLocaleUpperCase()
     let fullurl = `${apihost}${url}`;
     let options = {
@@ -49,7 +49,7 @@ document
               var myHeaders = new Headers();
                 myHeaders.append("Content-Type", "application/json");
                 var raw = JSON.stringify(rowObject);
-                requestFunc(url="/plan/", method="POST", data=raw)
+                requestFunc(url="/studyplan/", method="POST", data=raw)
                 console.log(jsonObject);
               // let jsonObject = JSON.stringify(rowObject);
               // document.getElementById("jsonData").innerHTML = jsonObject;

+ 16 - 26
static/js/api/vueSpecialty.js

@@ -1,5 +1,5 @@
 const requestFunc = async(url, method = "GET", data = null, token = null) => {
-	apihost = 'http://schedule.tomtit.tomsk.ru/api'
+	apihost = 'http://127.0.0.1'
 	method = method.toLocaleUpperCase()
 	let fullurl = `${apihost}${url}`;
 	let options = {
@@ -23,21 +23,14 @@ switch(method) {
 const res = await fetch(fullurl, options);
 return await res.json();
 };
-<<<<<<< HEAD
-<<<<<<< HEAD
-var app = new Vue({
-=======
-var vueApp = new Vue({
->>>>>>> master
-=======
+
+
 var app = new Vue({
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
         el: '#app',
         delimiters: ['${', '}'],
         data: {
             specialties:[], 
-<<<<<<< HEAD
-<<<<<<< HEAD
+
          },
         methods: {
             showSpecialties() {
@@ -47,7 +40,7 @@ var app = new Vue({
         		this.specialties = await requestFunc("/specialty", "GET")
         	},
             
-=======
+
             selectedRow: {
                 "Code": "",
                 "Name": "",
@@ -55,8 +48,7 @@ var app = new Vue({
                 "ID": ""
             },
             requestType: null
-=======
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
+
          },
         methods: {
             showSpecialties() {
@@ -65,7 +57,7 @@ var app = new Vue({
         	async getSpecialties(){
         		this.specialties = await requestFunc("/specialty", "GET")
         	},
-<<<<<<< HEAD
+
             selectRow(row, index){
                 let rows = document.querySelectorAll('.clickHover')
                 this.selectedRow = row;
@@ -94,19 +86,18 @@ var app = new Vue({
                 }
                 this.changeRequestType(requestType);
             }         
->>>>>>> master
-=======
+
+
             
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
+
         }, 
         mounted() {
         	this.getSpecialties()
         }
-<<<<<<< HEAD
-<<<<<<< HEAD
-    });
-=======
+
+
     });
+
     addSpecialty = (requestType)=>{
         let code = document.querySelector('.code').value
         let name = document.querySelector('.name').value
@@ -131,7 +122,6 @@ var app = new Vue({
         requestFunc(url="/specialty/", method=vueApp.requestType, data=raw)
         alert("Добавлено")
     }
->>>>>>> master
-=======
-    });
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
+
+  
+

+ 1 - 1
static/js/api/vueSubject.js

@@ -1,5 +1,5 @@
 const requestFunc = async(url, method = "GET", data = null, token = null) => {
-	apihost = 'http://schedule.tomtit.tomsk.ru/api'
+	apihost = 'http://127.0.0.1/api'
 	method = method.toLocaleUpperCase()
 	let fullurl = `${apihost}${url}`;
 	let options = {

+ 13 - 44
static/js/api/vueTeacher.js

@@ -1,5 +1,5 @@
 const requestFunc = async(url, method = "GET", data = null, token = null) => {
-	apihost = 'http://schedule.tomtit.tomsk.ru/api'
+	apihost = 'http://127.0.0.1/api'
 	method = method.toLocaleUpperCase()
 	let fullurl = `${apihost}${url}`;
 	let options = {
@@ -11,39 +11,19 @@ const requestFunc = async(url, method = "GET", data = null, token = null) => {
 };
 
 switch(method) {
-	case "PUT":
-	delete options.headers["Content-Type"];
-	options.body = data;
-	break;
-	case "POST": case "PATCH": case "DELETE":
-	options.body = JSON.stringify(data);
-	break;
+    case "PUT":
+    delete options.headers["Content-Type"];
+    options.body = data;
+    break;
+    case "POST": case "PATCH": case "DELETE":
+    options.body = JSON.stringify(data);
+    break;
 }
 
 const res = await fetch(fullurl, options);
 return await res.json();
 };
 
-<<<<<<< HEAD
-<<<<<<< HEAD
-=======
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
-// addTeacher() =>{
-//     let surname = document.querySelector('.surname').value
-//     let name = document.querySelector('.name').value
-//     let patronymic = document.querySelector('.patronymic').value
-
-
-
-// }
-
-
-
-<<<<<<< HEAD
-=======
->>>>>>> master
-=======
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
 var vueApp = new Vue({
         el: '#app',
         delimiters: ['${', '}'],
@@ -56,25 +36,13 @@ var vueApp = new Vue({
             showTeachers() {
                 console.log(this.teachers)
             },
-        	async getTeachers(){
-        		this.teachers = await requestFunc("/teacher", "GET")
-        	},
+            async getTeachers(){
+                this.teachers = await requestFunc("/teacher", "GET")
+            },
             
             async getClassrooms(){
                 classrooms = await requestFunc("/classroom", "GET")
                 for(let i =0; i < classrooms.length; i++) {
-<<<<<<< HEAD
-<<<<<<< HEAD
-
-                    //this.classrooms.push(classrooms[i])
-                    //this.classrooms.$set(i,classrooms[i]);
-=======
->>>>>>> master
-=======
-
-                    //this.classrooms.push(classrooms[i])
-                    //this.classrooms.$set(i,classrooms[i]);
->>>>>>> b5fe990a18b258e28401117b0be0a70e1a10db12
                     Vue.set(this.classrooms, i, classrooms[i]);
                 }
             },
@@ -85,7 +53,7 @@ var vueApp = new Vue({
         },
 
         async mounted() {
-        	await this.mountFunc()
+            await this.mountFunc()
             console.log(this.classrooms)
         }
     });
@@ -105,3 +73,4 @@ addTeacher = () =>{
     alert("Добавлено")
 }
 
+