File size: 6,144 Bytes
b231615
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5479e23
 
b231615
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
import streamlit as st
from dotenv import load_dotenv
from helper.telemetry import collect_telemetry
from helper.upload_File import uploadFile
from helper.button_behaviour import hide_button

class eBay:
    def __init__(self, model_url):
        self.file_dict = {}
        self.model_url = model_url
        #self.analyst_name = analyst_name
        #self.data_src = data_src
        #self.analyst_description = analyst_description
        self.initialize()
        self.row1()

    def initialize(self):
        # FOR ENV
        load_dotenv()
        '''
        # AGENT NAME
        st.header(self.analyst_name)

        # EVALUATION FORM LINK
        url = os.getenv('Link')
        st.write('Evaluation Form: [Link](%s)' % url)

        # RETURN BUTTON
        try:
            if st.button("Return", type='primary'):
                st.switch_page("./pages/home.py")
        except Exception:
            pass
        '''
        if 'product_title_ebay' not in st.session_state:
            st.session_state['product_title_ebay'] = ''
        if 'category_ebay' not in st.session_state:
            st.session_state['category_ebay'] = ''
        if 'images_ebay' not in st.session_state:
            st.session_state['images_ebay'] = ''
        if 'product_description_ebay' not in st.session_state:
            st.session_state['product_description_ebay'] = ''

    def process(self):
        session = st.session_state.analyze
        if (self.product_title_ebay or self.category_ebay or self.images_ebay or self.product_description_ebay) and session == 'clicked':
                    try:
                        product_title_ebay = ""
                        category_ebay = ""
                        images_ebay = ""
                        product_description_ebay = ""

                        with st.spinner('eBay...', show_time=True):
                                st.write('')
                                # INITIALIZING SESSIONS
                                #combined_text += f"Client Summary: {st.session_state.nature}\n"
                                try:
                                    product_title_ebay += f"\nProduct Title: {self.product_title_ebay}"
                                except KeyError:
                                    pass
                                try:
                                    category_ebay += f"\nImages: {self.category_ebay}"
                                except KeyError:
                                    pass
                                try:
                                    images_ebay += f"\nBullet Points: {self.images_ebay}"
                                except KeyError:
                                    pass
                                try:
                                    product_description_ebay += f"\nProduct Description: {self.product_description_ebay}"
                                except KeyError:
                                    pass
                                
                                # OUTPUT FOR SEO ANALYST
                                #payload_txt = {"question": combined_text}
                                #result = self.request_model(payload_txt)
                                
                                #end_time = time.time()
                                #time_lapsed = end_time - start_time
                                
                                debug_info_product_title_ebay = {'data_field' : 'Product Title - eBay', 'result': self.product_title_ebay}
                                debug_category_ebay = {'data_field' : 'Category - eBay', 'result': self.category_ebay}
                                debug_images_ebay = {'data_field' : 'Images - eBay', 'result': self.images_ebay}
                                debug_product_description_ebay = {'data_field' : 'Product Description - eBay', 'result': self.product_description_ebay}

                                '''
                                debug_info = {
                                    #'analyst': self.analyst_name,
                                    'url_uuid': self.model_url.split("-")[-1],
                                    'time_lapsed': time_lapsed,
                                    'payload': payload_txt,
                                    'result': result,
                                }
                                '''
                                if self.product_title_ebay:
                                    st.session_state['product_title_ebay'] = 'uploaded'
                                    collect_telemetry(debug_info_product_title_ebay)
                                if self.category_ebay:
                                    st.session_state['category_ebay'] = 'uploaded'
                                    collect_telemetry(debug_category_ebay)
                                if self.images_ebay:
                                    st.session_state['images_ebay'] = 'uploaded'
                                    collect_telemetry(debug_images_ebay)
                                if self.product_description_ebay:
                                    st.session_state['product_description_ebay'] = 'uploaded'
                                    collect_telemetry(debug_product_description_ebay)
                                

                                st.session_state['analyzing'] = False 
                    except AttributeError:
                        st.info("Please upload CSV or PDF files first.")
                        hide_button() 

    def row1(self):
            self.product_title_ebay = st.text_input("Product Title - eBay:", placeholder='Enter Product Title')
            self.category_ebay = st.text_input("Images - eBay:", placeholder='Enter Images')
            self.images_ebay = st.text_input("Bullet Points - eBay:", placeholder='Enter Bullet Points')
            self.product_description_ebay = st.text_input("Product Description - eBay:", placeholder='Enter Product Description')

            self.process()
            
if __name__ == "__main__":
    st.set_page_config(layout="wide")

upload = uploadFile()