Page 1 sur 1

Nombre de jour à la fin de l'année

Posté : 31 janv. 2012, 19:24
par crepmaster
Bonjour je suis en train d'essayer de modifier un plugin buddypress ( membership). Je plugin permet de créer differents niveaux d'abonement ( journalier, mensuel ou annuel).
J'aimerai crée un niveau qui finisse toujours le 31/12 de l'année en cours.
la classe subscription a été crée et elle possède de nombreuses fonctions.

Code : Tout sélectionner

if(!class_exists('M_Subscription')) { class M_Subscription { var $id = false; var $db; var $tables = array('membership_levels', 'membership_rules', 'subscriptions', 'subscriptions_levels', 'membership_relationships', 'subscriptionmeta'); var $membership_levels; var $membership_rules; var $subscriptions; var $subscriptions_levels; var $membership_relationships; var $subscriptionmeta; // if the data needs reloaded, or hasn't been loaded yet var $dirty = true; var $subscription; var $levels = array(); var $levelorder = array(); function __construct( $id = false ) { global $wpdb; $this->db =& $wpdb; foreach($this->tables as $table) { $this->$table = membership_db_prefix($this->db, $table); } $this->id = $id; } function M_Subscription( $id = false ) { $this->__construct( $id ); }
le prix et durée se determinent ainsi

Code : Tout sélectionner

function get_pricingarray() { $levels = $this->get_levels(); $prices = array(); foreach( (array) $levels as $key => $level ) { if($level->sub_type == 'indefinite') { // This will be the last item in any list $prices[] = array( 'period' => $level->level_period, 'amount' => $level->level_price, 'type' => $level->sub_type, 'unit' => $level->level_period_unit); break; } elseif($level->sub_type == 'serial') { // This will be the last item in any list $prices[] = array( 'period' => $level->level_period, 'amount' => $level->level_price, 'type' => $level->sub_type, 'unit' => $level->level_period_unit); break; } else { $prices[] = array( 'period' => $level->level_period, 'amount' => $level->level_price, 'type' => $level->sub_type, 'unit' => $level->level_period_unit); } } if(!empty($prices)) { return $prices; } else { return false; } }
je veux donc entrer une nouvelle ligne dans la table avec un subtype finite et une durée qui va du jour de l'enregistrement à la fin de l'année
ne pouvant inserer dans la table une level_period ( nombre de jour l’abonnement (pour les autres cas dans la table j'ai 365) dynamique.
Je pensais redefinir au moment de la selection la valeur du $level->level_period mais je me heurte à ma connaissance partielle du php ( je suis un abaper :D ) me limite.
Un expert peut il me donner un coup de pouce s'il vous plait sur comment redéfinir une valeur de l'array?
Ensuite existe-t-il une fonction qui me permettent d'evaluer le nombre de jour à la fin de l'année?
Merci d'avance....