﻿B4A=true
Group=Book
ModulesStructureVersion=1
Type=Class
Version=11.8
@EndOfDesignText@
Sub Class_Globals
 
	Dim sql As SQL
	Dim rs As ResultSet
  
 	Private list_aye 	 As List
  
	Private recNeshan As AX_RecyclerView
	
	Dim content As Panel
	Dim panSerch As Panel
	Private lab_back As Label
	Private lab_share As Label

	Private Label1 As Label
	
	Private sql2 As SQL
	Private rs2  As ResultSet

	Dim strAyeh As String
	
	Private ed_search As ACEditText
 	
End Sub

Public Sub Initialize
End Sub
  
public Sub onHiddenChanged
 	updateClass
End Sub
  
Private Sub savef
 	
	Dim sql3 As SQL
	Dim Cursor As ResultSet

	If sql3.IsInitialized=False Then
		sql3.Initialize(File.DirInternal,"quransooreh.db",True)
	End If
   
	Cursor = sql3.ExecQuery("SELECT id,idindex,name,enname FROM book where lang = '"&func.readNIS("lan2FaEn",1)&"' order by idindex asc")
	Cursor.Position = 0

	func.savePFM("idIndBop", Cursor.GetInt("idindex"))
	func.savePFM("nameBookP", Cursor.GetString("name"))
	func.savePFM("ennameBP",Cursor.GetString("enname"))
	
	Cursor.Close
 
End Sub

Public Sub onCreateView (Parent As Panel)
 
	savef
	
	content = Parent
	content.Color = 0xFFFBFDFF
	
	If sql2.IsInitialized=False Then
		sql2.Initialize(File.DirInternal,"prv_note_book.db",True)
	End If
	
 
	Dim l2n As Label
	l2n.Initialize("")
	content.AddView(l2n,0,50%y-30dip,100%x,60dip)
	l2n.Typeface = Typeface.CreateNew(Typeface.LoadFromAssets(func.font3),Typeface.STYLE_BOLD)
	l2n.Text=func.gland(54)
	l2n.Gravity=Bit.Or(Gravity.CENTER,Gravity.CENTER_VERTICAL)
	l2n.textColor = Colors.Black
	l2n.TextSize=14

	l2n.Visible = True
	Sleep(5)
	addView
	l2n.Visible = False

	Dim bookDBPAE As String
	Dim lan2FaEn As String = (func.readNIS("lan2FaEn",1))
	
	If lan2FaEn = 1 Then
		bookDBPAE = "book.db"
	Else If lan2FaEn = 3 Then
		bookDBPAE = "book_eng.db"
	Else If lan2FaEn = 2 Then
		bookDBPAE = "book_arabi.db"
	Else
		bookDBPAE = "book.db"
	End If

	If sql.IsInitialized=False Then
		sql.Initialize(File.DirInternal,bookDBPAE,True)
	End If

  
 	list_aye.Initialize
   
	rs = sql.ExecQuery("SELECT page FROM '"&func.readPFM("ennameBP")&"' ")
	Do While rs.NextRow
		list_aye.add(rs.GetInt("page"))
  	Loop : rs.Close
	
	
	updateClass

End Sub

Sub updateClass
	strAyeh = ""
	Dim name_db As String= "bardasht_"&func.readPFM("idIndBop")
	rs2 = sql2.ExecQuery("SELECT ayeh from '"&name_db&"' ")
	For i = 0 To rs2.RowCount -1
		rs2.Position = i
		strAyeh = strAyeh &";;"&rs2.GetInt("ayeh")&";;"
	Next

	Log("strAyeh: "&strAyeh)
	CallSubDelayed(Me,"ref_rec")
End Sub


Sub addView
	
	content.LoadLayout("gridelayout")
	func.SetRipple(lab_back ,0x337FD3B1,0x884C9A7B,16)
	func.SetRipple(lab_share ,0x337FD3B1,0x884C9A7B,16)
 
	ed_search.hint = func.gland(64)
	ed_search.Typeface = Typeface.LoadFromAssets(func.font3)

	panSerch.Visible = False
	recNeshan.Top = panSerch.Top
	recNeshan.Height = 100%y-(panSerch.Top)
	
	Label1.Text = func.gland(145)&" "&func.readPFM("nameBookP")
	Label1.Typeface = Typeface.CreateNew(Typeface.LoadFromAssets(func.font3),Typeface.STYLE_BOLD)
	func.MinimomFontLabel(Label1,14)

End Sub

Private Sub recNeshan_onCreateViewHolder (Parent As Panel,ViewType As Int)

	Dim pan As Panel
	pan.Initialize("pan")
	Parent.AddView(pan,1.25%x,5dip,30%x,60dip)

	Dim lab2 As Label
	lab2.Initialize("")
	pan.AddView(lab2,1%x,5dip,28%x,50dip)
  

End Sub

Private Sub recNeshan_GetItemCount As Int
	Return list_aye.Size
End Sub
 
Private Sub recNeshan_onBindViewHolder (Parent As Panel,Position As Int)
	
	Dim pnl As Panel=Parent.GetView(0)
	Dim lab2 As Label=pnl.GetView(0)
	 
	lab2.Text = func.gland(121)&" "& list_aye.Get(Position)
	lab2.Typeface = Typeface.LoadFromAssets(func.font3)
	lab2.Gravity = Bit.Or(Gravity.CENTER,Gravity.CENTER_VERTICAL)
 	lab2.TextColor = Colors.Black
	func.MinimomFontLabel(lab2,14)

	pnl.Tag = Position
	pnl.Elevation = 4dip
	
	If strAyeh.Contains(";;"&list_aye.Get(Position)&";;") Then
		func.SetRipple(pnl,0xFFCDFFD9,0x33A9A9A9,25)
	Else
		func.SetRipple(pnl,Colors.White,0x99eeeeee,25)
	End If

	pnl.Width=30%x
	Parent.Width=32.5%x
	pnl.Height=60dip
	
	Parent.Height=80dip
  

End Sub

Sub pan_Click
	
	Dim ll As Panel = Sender
	Dim ii As Int = ll.Tag
  
	func.savePFM("idBook"   , func.readPFM("idIndBop"))
	func.savePFM("ipageBook", list_aye.Get(ii))
	func.savePFM("NameBook" , func.readPFM("nameBookP"))
	
	
	func.savePFM("kodamPrvB",2)

	CallSub2(actBook,"show_hide_frag",func.listInitialize(30,Me,""))

End Sub

 
Sub ref_rec
	recNeshan.Adapter2.NotifyDataSetChanged
End Sub

Sub lab_share_Click
	
	ProgressDialogShow2(func.gland(146),False)
	
	Dim name_db As String= "bardasht_"&func.readPFM("idIndBop")
	Dim sBar As String
	
	rs2 = sql2.ExecQuery("SELECT bar from '"&name_db&"' ")
	
	For i = 0 To rs2.RowCount -1
		
		rs2.Position = i
		sBar = sBar &CRLF&CRLF&"۰═⊰•⊱❃⊰•⊱⊰•⊱❃⊰•⊱═۰" &CRLF&CRLF& rs2.GetString("bar")

	Next
	
 	
	ProgressDialogHide
  	 
	Dim fileName As String = func.gland(147)&" "&func.readPFM("nameBookP")&".txt"
	
	File.WriteString(Starter.Provider.SharedFolder, fileName, sBar)
	Dim in As Intent
	in.Initialize(in.ACTION_SEND, "")
	in.SetType("text/plain")
	in.PutExtra("android.intent.extra.STREAM", Starter.Provider.GetFileUri(fileName))
	in.Flags = 1
	StartActivity(in)
	
	
End Sub
  
Sub lab_back_Click
	close
End Sub

Sub close
	CallSub2(actBook,"show_hide_frag",func.listInitialize(14,Me,""))
End Sub

 
public Sub onKey (KeyCode As Int)

	If KeyCode = KeyCodes.KEYCODE_BACK Then
		close
	End If
	
End Sub