
    5i)                     0    d dl mZ d dlmZ  G d d      Zy)    )FaqModel)datetimec                   2    e Zd Zd ZddZd Zd Zd Zd Zy)	FaqClassc                     || _         y )N)db)selfr   s     F/var/www/pie360backend.cl/public_html/app/backend/classes/faq_class.py__init__zFaqClass.__init__   s	        Nc                 B   	 | j                   j                  t              }|r2|j                  t        j                  j                  d| d            }|j                  t        j                  j                               }|j                         }||dk  rd}|dz
  |z  }|j                  |      j                  |      j                         }|s	ddd dd|dS ||z   dz
  |z  }g }	|D ]  }
|
j                  |
j                  |
j                  |
j                  r|
j                  j                  d      nd |
j                   r|
j                   j                  d      nd d}|	j#                  |        d	|	|||d
S # t$        $ r}dt'        |      dcY d }~S d }~ww xY w)N%   errorzNo data foundr   )statusmessagedatatotal_itemstotal_pagescurrent_page%Y-%m-%d %H:%M:%Sidquestionanswer
added_dateupdated_datesuccess)r   r   r   r   r   r   r   )r   queryr   filterr   likeorder_byr   desccountoffsetlimitallr   r   strftimer   append	Exceptionstr)r	   pageitems_per_pager   r    r   r&   faqsr   	faqs_listfaqfaq_dictes                r
   get_allzFaqClass.get_all   s   8	GGMM(+E X%6%6%;%;azO%LM NN8;;#3#3#56E  ++-K |taxQh.0F<<'--n=AACD%. #$#$$(  '7!;NK I +&& #!jjRUR`R`#.."9"9:M"NfjVYVfVfC$4$4$=$=>Q$Rlp   *+ $!** $   	!q6 	s%   CE= B E= =	FFFFc                    	 | j                   j                  t              j                  t        j                  |k(        j                         }|sdddS |j                  |j                  |j                  |j                  r|j                  j                  d      nd |j                  r|j                  j                  d      nd d}|S # t        $ r}dt        |      dcY d }~S d }~ww xY w)Nr   FAQ not foundr   r   r   )r   r    r   r!   r   firstr   r   r   r)   r   r+   r,   )r	   faq_idr1   r2   r3   s        r
   getzFaqClass.getC   s    	''--)00v%eg  %.  ffLL**NQnncnn556IJbfRURbRb 0 0 9 9:M NhlH O 	!q6 	s%   AC A5C 	C-C("C-(C-c                    	 t        |j                  d      |j                  d      t        j                         t        j                               }| j                  j                  |       | j                  j                          | j                  j                  |       ddd|j                  idS # t        $ r2}| j                  j                          dt        |      d	cY d }~S d }~ww xY w)
Nr   r   )r   r   r   r   r   zFAQ created successfullyr   )r   r   r   r   r   )r   r9   r   nowr   addcommitrefreshr   r+   rollbackr,   )r	   faq_datanew_faqr3   s       r
   storezFaqClass.store_   s    	!j1||H-#<<>%\\^	G GGKK GGNNGGOOG$ $5'**   	GG!q6 	s   B2B5 5	C0>'C+%C0+C0c                 4   	 | j                   j                  t              j                  t        j                  |k(        j                         }|sdddS |j                  d      |j                  d      |_        |j                  d      |j                  d      |_        t        j                         |_        | j                   j                          dddS # t        $ r2}| j                   j                          dt        |      dcY d }~S d }~ww xY w)Nr   r6   r   r   r   r   zFAQ updated successfully)r   r    r   r!   r   r7   r9   r   r   r   r;   r   r=   r+   r?   r,   )r	   r8   r@   r1   r3   s        r
   updatezFaqClass.update{   s     	''--)00v%eg  %.  ||J'3'||J7||H%1%\\(3
'||~CGGNN $5 
  	GG!q6 	s%   AC BC 	D%'DDDc                    	 | j                   j                  t              j                  t        j                  |k(        j                         }|sdddS | j                   j                  |       | j                   j                          dddS # t        $ r2}| j                   j                          dt        |      dcY d }~S d }~ww xY w)Nr   r6   r   r   zFAQ deleted successfully)r   r    r   r!   r   r7   deleter=   r+   r?   r,   )r	   r8   r1   r3   s       r
   rF   zFaqClass.delete   s    	''--)00v%eg  %.  GGNN3GGNN $5 
  	GG!q6 	s$   AB 9B 	C'C CC)r   
   N)	__name__
__module____qualname__r   r4   r9   rB   rD   rF    r   r
   r   r      s"    9v88!Fr   r   N)app.backend.db.modelsr   r   r   rK   r   r
   <module>rM      s    * t tr   