Re: [BETA] Football Prediction League
Verfasst: 12.04.2016 22:43
Vielen Dank für deine Hinweise.
Schon lustig, genauso so oder ähnlich habe ich es in den letzten Tagen für die nächste Version vorbereitet. Da hatte ich genau die Probleme mit den Abhängigkeiten.
Das folgende ist nur für gn#36 und nicht als Korrekturanweisung zu verstehen!
In v094_beta_update prüfe ich: Wer also die alte MOD noch hat, bekommt dieses Update. Bei den anderen (ohne MOD oder bereits die MOD per Update umgestellt) wird es nicht ausgeführt
und als installiert markiert.
v094_beta:
Bei den Profilfelder hatte ich eingebaut:
Du sagst, dass benötige ich nicht. Auch gut, aber schaden kann es nicht.
Die Versorgung der Sprachvariablen habe ich mir "zusammengebastelt". Vielleicht gibt es ja auch eine bessere Lösung?
Und die neue Version bekommt dann:
So sollte die neue Version mit allen mögliche Versionsständen korrekt funktionieren.
Schon lustig, genauso so oder ähnlich habe ich es in den letzten Tagen für die nächste Version vorbereitet. Da hatte ich genau die Probleme mit den Abhängigkeiten.
Das folgende ist nur für gn#36 und nicht als Korrekturanweisung zu verstehen!
In v094_beta_update prüfe ich:
Code: Alles auswählen
] public function effectively_installed()
{
return !$this->db_tools->sql_column_exists($this->table_prefix . 'sessions', 'session_matchday');
}
und als installiert markiert.
v094_beta:
Code: Alles auswählen
public function effectively_installed()
{
return isset($this->config['football_version']) && version_compare($this->config['football_version'], '0.9.4', '>=');
}
// first try to update the old MOD and run this migration if update didn't change version number
static public function depends_on()
{
return array('\football\football\migrations\v094_beta_update');
}
Code: Alles auswählen
public function effectively_installed()
{
$sql = 'SELECT COUNT(field_id) as field_count
FROM ' . PROFILE_FIELDS_TABLE . "
WHERE field_name = 'footb_rem_s'";
// and count..
$result = $this->db->sql_query($sql);
$field_count = (int) $this->db->sql_fetchfield('field_count');
$this->db->sql_freeresult($result);
// Skip migration if custom profile field exist
return $field_count;
}
static public function depends_on()
{
return array('\football\football\migrations\v094_beta');
}
Die Versorgung der Sprachvariablen habe ich mir "zusammengebastelt". Vielleicht gibt es ja auch eine bessere Lösung?
Und die neue Version bekommt dann:
Code: Alles auswählen
static public function depends_on()
{
return array('\football\football\migrations\v094_beta');
}