from django.shortcuts import render
from django.contrib import messages
from django.shortcuts import redirect
import requests
from django.http import HttpResponse




# Create your views here.
def get_article_data():  # sourcery skip: inline-immediately-returned-variable
   response = requests.get('https://thingsaccess.com/rfid/index.php/Api/getArticles')
   data_send = response.json()
   data = data_send['response']
   return data


def article_page(request):
   data = get_article_data()
   return render(request, 'article/article.html',context={'data': data})

def step_category_data():
   response = requests.get('https://thingsaccess.com/rfid/index.php/Api/getStepsCategories')
   data_send = response.json()
   return data_send['response']

def machine_data():
   response = requests.get('https://thingsaccess.com/rfid/index.php/Api/getMachine')
   data_send = response.json()
   return data_send['response']
    


def Add_article(request):
   step_category = step_category_data()
   machine = machine_data()
   # if request.method == 'POST':
   #    data = {
   #        'title': request.POST.get('title'),
   #        'pieces': request.POST.get('pieces'),
   #        'orderQuantity': request.POST.get('orderQuantity'),
   #        'bundleSize': request.POST.get('bundleSize'),
   #        'fabricLength': request.POST.get('fabricLength'),
   #        'startDate': request.POST.get('startDate'),
   #        'deliveryDate': request.POST.get('deliveryDate'),
   #    }
   #    response = requests.post('https://thingsaccess.com/rfid/index.php/Api/addArticles', json=data)
   #    if response.status_code != 200:
   #       # Insertion failed, show error message to user
   #       return HttpResponse("Article not added successfully")
   #    return redirect('article_page')
   return render(request, 'article/AddArticle.html',context={'step_category': step_category,'machine':machine})


def Edit_Article(request,id):
   response = requests.get('https://thingsaccess.com/rfid/index.php/Api/getArticles')
   data_send = response.json()
   data = data_send['response']
   edit_item = None
   for item in data:
        if item['ID'] == id:
            edit_item = item
            break
   if edit_item:
      if request.method == 'POST':
         data = {
               'id':id,
               'title': request.POST.get('title'),
               'pieces': request.POST.get('pieces'),
               'orderQuantity': request.POST.get('orderQuantity'),
               'bundleSize': request.POST.get('bundleSize'),
               'fabricLength': request.POST.get('fabricLength'),
               'startDate': request.POST.get('startDate'),
               'deliveryDate': request.POST.get('deliveryDate'),
         }
         response = requests.post('https://thingsaccess.com/rfid/index.php/Api/editArticles', json=data)
         if response.status_code == 200:
               return redirect('article_page')
               # messages.success(request, 'Data added successfully')
         else:
               # Insertion failed, show error message to user
               messages.error(request, 'Failed to edit data')

   return render(request,'article/editArticle.html',context={'item': edit_item})
  
def delete_Article(request,id):
   data_delete = {
        'id': id
   }
   print(data_delete)
   response = requests.post('https://thingsaccess.com/rfid/index.php/Api/deleteArticles', json=data_delete)
   if response.status_code == 200:
        return redirect('article_page')
        # messages.success(request, 'Data added successfully')
   else:
        # Insertion failed, show error message to user
       messages.error(request, 'Failed to delete data')
       return redirect('article_page')

   # return HttpResponse("Article not deleted successfully")


   
