﻿B4A=true
Group=Default Group
ModulesStructureVersion=1
Type=Activity
Version=11.5
@EndOfDesignText@
#Region  Activity Attributes 
	#FullScreen: False
	#IncludeTitle: False
#End Region

Sub Process_Globals
 
End Sub

Sub Globals

	Private recNeshan As AX_RecyclerView
 	
	Private Label1 As Label
	
 	Dim lab_back As Label
	Dim Label1 As Label
	
	Dim Retrofit As Amir_Retrofit
	Dim Manager_add   As Amir_RetrofitManager
	Dim Builder_add   As Amir_RetrofitBuilder
 
	Dim list_type  As List
	Dim list_film  As List
	Dim list_date  As List
	Dim list_title As List
	Dim list_matn  As List
	Dim list_pic  As List

	Dim glide As PersianGlide

	Dim WKWebView2 As WebView
	Dim panZoom As Panel

End Sub

Sub Activity_Create(FirstTime As Boolean)
 
	Activity.LoadLayout("neshanlayout")
	func.SetRipple(lab_back ,0x337FD3B1,0x884C9A7B,16)
	Label1.Text = func.gland(1)
	Label1.Typeface = Typeface.CreateNew(Typeface.LoadFromAssets(func.font3),Typeface.STYLE_BOLD)
	func.MinimomFontLabel(Label1,14)

	recNeshan.Adapter = recNeshan.DefaultAdapter

	panZoom.Initialize("panZoom")
	Activity.AddView(panZoom,0%x,0%y,100%x,100%y)
	func.color_border(panZoom,0xDD7B7A7A,10dip)
	panZoom.Visible = False
 	
	WKWebView2.Initialize("WKWebView2")
	panZoom.AddView(WKWebView2,3%x,10%y,94%x,80%y)

	list_type.Initialize
	list_film.Initialize
	list_date.Initialize
	list_title.Initialize
	list_matn.Initialize
	list_pic.Initialize

	Builder_add.Initialize
	Builder_add.baseUrl(urls.baseUrl).WithManager
	Builder_add.addGsonConverterFactory
	Builder_add.addHeader(CreateMap("Content-Type":"application/json"))
	Retrofit.Initialize(Builder_add)
	Manager_add = Retrofit.Utils.GetRetrofitManager(Retrofit)

	tsetUpdate
	
End Sub
 
Sub tsetUpdate
  		
	ProgressDialogShow2(func.gland(2),False)

	Dim params As Map
	Dim params1 As Map
	params.Initialize
	params1.Initialize
 	
	params.Put("id2", func.readPFM("kkktypes"))

	params1.Put("request_params",params)
	Retrofit.Json("send",urls.notific,Retrofit.toJson(params1))
  
End Sub

   
Sub send_onNext (ResponseBody As Amir_ResponseBody)
	
	ProgressDialogHide

	Try

		Dim parser As JSONParser
		parser.Initialize(ResponseBody.String)
		Dim root As Map = parser.NextObject
		Dim response As Map = root.Get("response")
		Dim code As Int = response.Get("code")
		
		If code = 200 Then
			Dim message As List = response.Get("message")
			For Each colmessage As Map In message
				Dim date As String = colmessage.Get("date")
				Dim image As String = colmessage.Get("image")
				Dim film As String = colmessage.Get("film")
				Dim title As String = colmessage.Get("title")
				Dim type2 As String = colmessage.Get("type")
				Dim matn As String = colmessage.Get("matn")
 			
				list_date.Add(date)
				list_title.Add(title)
				list_matn.Add(matn)
				list_pic.Add(image)
				list_type.Add(type2)
				list_film.Add(film)

			Next
  		
			DateTime.DateFormat = "yyyy-MM-dd"
			DateTime.TimeFormat = "H:mm"
			Dim ssss As String = DateTime.Date(DateTime.Now)&" "&DateTime.Time(DateTime.Now)
		
			func.savePFM("num2Notific",func.ENumbers(ssss))
		
			CallSubDelayed(Me,"ref_rec")

		Else
			func.ToastERROR(func.gland(3))
		End If

	Catch
		func.ToastERROR(func.gland(3))
		Log(LastException)
	End Try
	
End Sub
Sub send_onError (Error As String)
	Log(Error)
	func.ToastERROR(func.gland(3))
	ProgressDialogHide
End Sub
  
Sub ref_rec
	recNeshan.Adapter2.NotifyDataSetChanged
End Sub
  
Sub recNeshan_onCreateViewHolder (Parent As Panel,ViewType As Int)
 	
	Dim p_grid_asli As Panel
	p_grid_asli.Initialize("pan")
	Parent.AddView(p_grid_asli,2.5%x,10dip,95%x,105dip)
   
	Dim lab_tarikh As Label
	lab_tarikh.Initialize("")
	p_grid_asli.AddView(lab_tarikh,2%x,5dip,25%x,30dip)

	Dim lab_title As Label
	lab_title.Initialize("")
	p_grid_asli.AddView(lab_title,30%x,5dip,63%x,30dip)

	Dim lab_image As ImageView
	lab_image.Initialize("")
	p_grid_asli.AddView(lab_image,2.5%x,lab_title.Top+lab_title.Height+5dip,90%x,90%x)

	Dim lab_matn As Label
	lab_matn.Initialize("")
	p_grid_asli.AddView(lab_matn,2.5%x,lab_image.Top+lab_image.Height+5dip,90%x,60dip)

	Dim lab_line As Label
	lab_line.Initialize("")
	p_grid_asli.AddView(lab_line,94%x,0dip,1%x,105dip)

	Dim pan_play As Panel
	pan_play.Initialize("")
	p_grid_asli.AddView(pan_play,2.5%x,lab_title.Top+lab_title.Height+5dip,90%x,90%x)

	Dim lab_play As Label
	lab_play.Initialize("")
	p_grid_asli.AddView(lab_play,2.5%x,lab_title.Top+lab_title.Height+5dip,90%x,90%x)


End Sub

Sub recNeshan_GetItemCount As Int
	Return list_date.Size
End Sub
 
Sub recNeshan_onBindViewHolder (Parent As Panel,Position As Int)
 
	Dim Panel As Panel = Parent.GetView(0)
	Dim lab_tarikh As Label=Panel.GetView(0)
	Dim lab_title As Label=Panel.GetView(1)
	Dim lab_matn As Label=Panel.GetView(3)
	Dim lab_image As ImageView=Panel.GetView(2)
	Dim lab_line As Label=Panel.GetView(4)
	Dim pan_play As Panel=Panel.GetView(5)
	Dim lab_play As Label=Panel.GetView(6)

	Panel.Tag = Position
	Panel.Elevation=3dip

	func.SetRipple(Panel,Colors.White,0xaaeeeeee,10dip)

	lab_tarikh.Text = list_date.Get(Position)
	lab_tarikh.Typeface=Typeface.CreateNew( Typeface.LoadFromAssets(func.font3),Typeface.STYLE_BOLD)
	func.MinimomFontLabel(lab_tarikh,14)
	lab_tarikh.TextColor=Colors.Gray
	lab_tarikh.Gravity=Bit.Or(Gravity.CENTER,Gravity.CENTER_VERTICAL)
	
	lab_title.Text = list_title.Get(Position)
	lab_title.Typeface=Typeface.CreateNew( Typeface.LoadFromAssets(func.font3),Typeface.STYLE_BOLD)
	lab_title.TextSize=15
	lab_title.TextColor=Colors.Black
	lab_title.Gravity=Bit.Or(Gravity.RIGHT,Gravity.CENTER_VERTICAL)
	lab_title.Padding = Array As Int (0dip, 0dip, 10dip, 0dip)
	
	Dim su1 As StringUtils
	lab_title.Height=su1.MeasureMultilineTextHeight(lab_title,lab_title.Text)
	
	
	Dim dfg As String = list_pic.Get(Position)
	
	lab_image.Top = lab_title.Top+lab_title.Height+15dip
	pan_play.Top = lab_image.Top
	lab_play.Top = lab_image.Top
	
	lab_play.Text = Chr(0xf144)
	lab_play.Typeface=Typeface.LoadFromAssets("fonticon.otf")
	lab_play.TextSize=35
	lab_play.TextColor=Colors.Black
	lab_play.Gravity=Bit.Or(Gravity.CENTER,Gravity.CENTER_VERTICAL)
 	
	func.color_border(pan_play,0xaaeeeeee,10dip)

	If 1 = list_type.Get(Position) Then
		
		pan_play.Visible = False
		lab_play.Visible = False
		
		If dfg.Length = 0 Or dfg=Null Or dfg.ToLowerCase = "null" Then
			lab_matn.Top = lab_title.Top+lab_title.Height+10dip
			lab_image.Visible = False

		Else
		
			lab_image.Gravity=Gravity.FILL
		
			glide.With("glide").asBitmap.diskCacheStrategy(glide.CacheStrategy_AUTOMATIC) _
	.load(dfg).into(lab_image)

			lab_matn.Top = lab_image.Top+lab_image.Height+10dip
			lab_image.Visible = True

		End If

	Else
	
		pan_play.Visible = True
		lab_play.Visible = True

		lab_matn.Top = lab_image.Top+lab_image.Height+10dip
		lab_image.Visible = True

		lab_image.Gravity=Gravity.FILL

		If dfg.Length = 0 Or dfg=Null Or dfg.ToLowerCase = "null" Then
 			lab_image.Bitmap = LoadBitmap(File.DirAssets, "icon_back.png")
 		Else
 		
			glide.With("glide").asBitmap.diskCacheStrategy(glide.CacheStrategy_AUTOMATIC) _
	.load(dfg).into(lab_image)
 
		End If
 		
	End If
 
	Dim textFarsi As String = list_matn.Get(Position)
	
	lab_matn.Text =  func.setThing0(textFarsi,"Ꞅ")
	lab_matn.Typeface=Typeface.LoadFromAssets(func.font3)
	lab_matn.TextSize=14
	lab_matn.TextColor=Colors.Gray
	lab_matn.Gravity=Bit.Or(Gravity.RIGHT,Gravity.CENTER_VERTICAL)
	lab_matn.Padding = Array As Int (0dip, 0dip, 10dip, 0dip)
  	
	Dim su As StringUtils
	lab_matn.Height=su.MeasureMultilineTextHeight(lab_matn,lab_matn.Text)

	Dim drlabvanet As ColorDrawable
	drlabvanet.Initialize2(0xFF4C9A7B,14,0,Colors.DarkGray)
	lab_line.Background = drlabvanet
	lab_line.Height=lab_matn.Height+lab_matn.Top+5dip
	
	Panel.Height=lab_matn.Height+lab_matn.Top+5dip
	Parent.Height=lab_matn.Top+lab_matn.Height+18dip

End Sub

Sub pan_Click
	
	Dim pan As Panel = Sender
	
	Dim Position As Int = pan.Tag
  
	Dim dfg As String = list_pic.Get(Position)

	If 1 = list_type.Get(Position) Then
		If dfg.Length = 0 Or dfg=Null Or dfg.ToLowerCase = "null" Then
		Else
			func.LoadHtmlZoom3(dfg ,WKWebView2)
			panZoom.Visible = True
		End If
	Else
	
		func.savePFM("name_zirFilm",list_title.Get(Position))
		func.savePFM("list_film",list_film.Get(Position))
		
		func.savePFM("typePlats",2)
 		StartActivity(playsrds)

	End If
 	
End Sub
  
Sub panZoom_Touch (Action As Int, X As Float, Y As Float)
	panZoom.Visible = False
End Sub
 
Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

  
Sub lab_back_Click
	close
End Sub
 
Sub close
	If panZoom.Visible Then
		panZoom.Visible = False
	Else
		Manager_add.CancelAll
		Activity.Finish
	End If
End Sub

Sub Activity_KeyPress (KeyCode As Int) As Boolean
 	
	If KeyCode = KeyCodes.KEYCODE_BACK Then
		close
	End If
 	
	Return True
	
End Sub
  
  
