Page 1 of 1

[SOLVED] How to set Played #

Posted: Thu Jul 11, 2019 1:37 pm
by dtsig
Is there a way to set the column Played without playing

Re: How to set Played

Posted: Thu Jul 11, 2019 4:15 pm
by Peke
Hi,
By Script.

Do you want one?

Re: How to set Played

Posted: Thu Jul 11, 2019 6:06 pm
by dtsig
if you have a script that would do it i would greatly appreciate it

Re: How to set Played

Posted: Thu Jul 11, 2019 9:23 pm
by Peke
Hi,
I think I can make you one, where you will have button to Set Played to current time and increase played count by 1?

Re: How to set Played

Posted: Fri Jul 12, 2019 9:55 am
by dtsig
that would be great

Re: How to set Played

Posted: Sat Jul 13, 2019 4:09 am
by PeterK
Script already exists. Check this out.
https://www.mediamonkey.com/addons/brow ... -playstat/

Re: How to set Played

Posted: Sun Jul 14, 2019 7:04 am
by Peke
Hi,
THX, I missed that one :)

Code: Select all

'==========================================================================
'
' NAME: PlayCountScript.vbs
'
' DATE  : 14.07.2019.
'
' COMMENT: Set Desired Playcount, Save PlayCountScript.vbs to Scripts\Auto folder and restart MMW
'
'==========================================================================
Script.Reload(Script.ScriptPath)

Sub OnStartup
  Dim SPLayCount
  Set SPLayCount = SDB.UI.AddMenuItem(SDB.UI.Menu_TbAdvanced,0,0)
  SPLayCount.Caption = "Increase Play Count"
  SPLayCount.OnClickFunc = "ChangePlayCounter"
  SPLayCount.UseScript = Script.ScriptPath
  SPLayCount.IconIndex = 63
End Sub

Sub ChangePlayCounter(arg)

  Dim list, itm, i, newPlayCounter, mb, progress
  newPlayCounter = InputBox("Enter the new value for the Played field", "Modify Play Counter")
  If  newPlayCounter = "" Then
  	Exit Sub
  End If
  
  If Not IsNumeric(newPlayCounter) Then
  	mb = SDB.MessageBox("You did not enter a number. Please try again.",0,"Error")
  	Exit Sub
  ElseIf newPlayCounter < 0 Then
  	mb = SDB.MessageBox("Only positive numbers or 0 are allowed. Please try again.",0,"Error")
  	Exit Sub
    End If

  If list.count = 0 Then
  	mb = SDB.MessageBox("No songs were selected. Please select some songs and try again",0,"Error")
  	Exit Sub
  End If
  
  Set Progress = SDB.Progress
  Progress.Text = "Changing Play Counters..."
  Progress.MaxValue = list.count

  For i=0 To list.count-1
    Set itm = list.Item(i)
    'Set the Play Counter
    itm.PlayCounter = newPlayCounter
    itm.UpdateDB
    Progress.value = i+1
    If Progress.terminate Then
    	Exit For
    End if	
  Next
  
  Set Progress =  Nothing
  
End Sub

Re: How to set Played

Posted: Sun Jul 14, 2019 12:41 pm
by dtsig
thank guys