Tag Archive for Opgradering

Member Teams -> Social Groups del III

Jeg har testoverført data fra det gamle ibf_team (en gruppe) og ibf_team_members (og dets medlemmer) til hhv. ibf_social_groups og ibf_social_group_members og kan se at gruppen dukker op på forsiden af de nye netværk (socale grupper), men når jeg klikker på gruppen i oversigten får jeg en besked om at gruppen med denne id ikke findes.

Måske det er premissions der mangler?

Indhold af ibf_social_groups_perms med de to oprettede fora i det nye system:

mysql> select * from ibf_social_groups_perms;
+----------+------------+------------+------------+-----------+--------+----------+--------+-------------+
| group_id | group_show | forum_show | forum_read | forum_use | invite | add_news | manage | admin_tools |
+----------+------------+------------+------------+-----------+--------+----------+--------+-------------+
|        1 | 1,2,3,4,5  | 1,2,3,4,5  | 3,4,5      | 3,4,5     | 3,4,5  | 4,5      | 5      | 5           |
|        2 | 1,2,3,4,5  | 1,2,3,4,5  | 3,4,5      | 3,4,5     | 3,4,5  | 4,5      | 5      | 5           |
+----------+------------+------------+------------+-----------+--------+----------+--------+-------------+

Det lader til at være nogle generelle settings med hvilke grupper der har hvilke rettigheder med gruppen. Da det umiddelbart som udgangspunkt skal være ens for alle grupper, kopierer jeg denne opsætning til alle de flyttede netværk fra team_members.

Fortsætter indtil videre med eksemplet cand.move:

insert into ibf_social_groups_perms (group_id, group_show, forum_show, forum_read, forum_use, invite, add_news, manage, admin_tools) values (14, "1,2,3,4,5", "1,2,3,4,5", "3,4,5", "3,4,5", "3,4,5", "4,5", "5", "5");

Gruppen kan stadig ikke ses når jeg klikker på den i oversigten! Suk.

Vi tager lige oversigten over alle tabeller i social_groups og ser hvad der ellers kunne mangle for det nyoprettede (flyttede) netværk. De markerede tabeller er ordnet.

  • ibf_social_group_members
  • ibf_social_groups
  • ibf_social_groups_cat
  • ibf_social_groups_invites
  • ibf_social_groups_news
  • ibf_social_groups_notes
  • ibf_social_groups_perms
  • ibf_social_groups_pm
  • ibf_social_groups_supermods
mysql> select * from ibf_social_groups_cat;
+--------+--------------+---------------+----------+---------------+------------+-----------+---------+
| cat_id | cat_position | cat_name      | cat_desc | cat_seo_name  | cat_locked | cat_forum | cat_vis |
+--------+--------------+---------------+----------+---------------+------------+-----------+---------+
|      1 |            1 | Uncategorized |          | uncategorized |          0 |         0 |      -1 |
+--------+--------------+---------------+----------+---------------+------------+-----------+---------+
1 row in set (0.00 sec)

… dette er blot en oversigt over kategorier og der er kun pt en. Ingen mangel i forhold til gruppe.

mysql> select * from ibf_social_groups_invites;
+--------+------------+--------------+-----------+----------------------------------+------------+------------+
| inv_id | inv_sender | inv_reciever | inv_group | inv_key                          | inv_date   | inv_status |
+--------+------------+--------------+-----------+----------------------------------+------------+------------+
|      1 |          1 |         7712 |         1 | 6b2dce6dde063aa91d1248924eff489b | 1347891315 |          1 |
+--------+------------+--------------+-----------+----------------------------------+------------+------------+
1 row in set (0.02 sec)

… dette er de liggende invitationer, som ikke er blevet besvaret. Der ligger pt en enkelt i forbindelse med en test jeg havde lavet. Det har heller ingen sammenhæng med den fejl jeg pt får med manglende gruppe, men det kunne dog være relevant evt. at tjekke op på om der er invites der ligger i det gamle system og om disse kan overføres. Ellers må det række at gøre opmærksom på at invites ikke bliver overført (de plejer nu også alligevel at blive slettet efter 2-3 døgn)

mysql> select * from ibf_social_groups_news;
Empty set (0.00 sec)

mysql> select * from ibf_social_groups_notes;
Empty set (0.00 sec)

mysql> select * from ibf_social_groups_pm;
Empty set (0.00 sec)

mysql> select * from ibf_social_groups_supermods;
Empty set (0.00 sec)

… heller ikke der mangler der noget for den nyoprettede gruppe, som de andre grupper har.

Jeg får fejlen:

 Cannot find group with this ID

Og klikker jeg på det seneste indlæg i gruppen som jeg kan se i oversigten, får jeg:

You must be a member of this group in order to view their forum.

Kunne der gemme sig noget relevant i en af de andre tabeller, som umiddelbart ikke har med de sociale grupper at gøre? Måske en relevant kolonne i en anden tabel? Eller i selve koden et sted?

Member Teams -> Social Groups del II

Som beskrevet i et tidligere indlæg har jeg installeret modulet Social Groups på testudgaven af morsverden med IPB3.4.

Nu skal jeg på en eller anden måde have overført alt eksisterende indhold af netværkene i modulet “Team members” som var lavet til IPB2.3 til det nye Social Groups modul.

Følgende tabeller findes i member_teams (gammel):

  • ibf_team_invites
  • ibf_team_members
  • ibf_team_news
  • ibf_team_ranks
  • ibf_teams

hvor ibf_team og ibf_team_members er de vigtigste, indeholdende alle netværkene samt de medlemmer der er i og deres rettigheder. Tabellernes opbygning:

mysql> describe ibf_teams;
 +--------------+--------------+------+-----+---------+----------------+
 | Field        | Type         | Null | Key | Default | Extra          |
 +--------------+--------------+------+-----+---------+----------------+
 | tid          | int(10)      | NO   | PRI | NULL    | auto_increment |
 | fid          | int(10)      | NO   |     | 0       |                |
 | perm_id      | int(10)      | NO   |     | 0       |                |
 | group_id     | int(10)      | NO   |     | NULL    |                |
 | tname        | varchar(50)  | NO   | MUL |         |                |
 | tdescription | varchar(200) | NO   |     |         |                |
 | tlogo        | varchar(100) | NO   |     |         |                |
 | ttext        | mediumtext   | NO   |     | NULL    |                |
 | leader_mid   | int(10)      | NO   |     | 0       |                |
 | is_open      | tinyint(5)   | NO   |     | 1       |                |
 | approved     | tinyint(5)   | NO   |     | 1       |                |
 +--------------+--------------+------+-----+---------+----------------+

 

eksempel med gruppen cand.move (synlig, is_open = 1): 
 mysql> select tid, fid, perm_id, group_id, tname, leader_mid, is_open, approved from  ibf_teams where fid = 171;
 +-----+-----+---------+----------+-----------+------------+---------+----------+
 | tid | fid | perm_id | group_id | tname     | leader_mid | is_open | approved |
 +-----+-----+---------+----------+-----------+------------+---------+----------+
 |  14 | 171 |      48 |       79 | cand.move |       2175 |       1 |        1 |
 +-----+-----+---------+----------+-----------+------------+---------+----------+

 

mysql> describe ibf_team_members;
 +--------------+------------+------+-----+---------+-------+
 | Field        | Type       | Null | Key | Default | Extra |
 +--------------+------------+------+-----+---------+-------+
 | mid          | int(10)    | NO   |     | 0       |       |
 | tid          | int(10)    | NO   |     | 0       |       |
 | rid          | int(10)    | NO   |     | 0       |       |
 | approved     | tinyint(5) | NO   |     | 0       |       |
 | can_team_mm  | tinyint(5) | NO   |     | 0       |       |
 | can_forum_mm | tinyint(5) | NO   |     | 0       |       |
 | can_perm_mm  | tinyint(5) | NO   |     | 0       |       |
 | can_news_mm  | tinyint(5) | NO   |     | 0       |       |
 +--------------+------------+------+-----+---------+-------+

Tabeller i sociale grupper (ny):

  • ibf_social_group_members
  • ibf_social_groups
  • ibf_social_groups_cat
  • ibf_social_groups_invites
  • ibf_social_groups_news
  • ibf_social_groups_notes
  • ibf_social_groups_perms
  • ibf_social_groups_pm
  • ibf_social_groups_supermods

hvor det her er ibf_social_groups (svarer til ibf_member_teams) og ibf_social_group_members (svarer til ibf_team_members) jeg i første omgang vil koncentrere mig om, for at få overført alle grupperne + medlemmerne. Det meste andet lader til at kunne oprettes og overføres efterhånden eller er umiddelbart mindre væsentligt i det store og hele.

Vi starter med selve grupperne. Opbygning af ibf_social_groups:

mysql> describe ibf_social_groups;
 +--------------------+--------------+------+-----+---------+----------------+
 | Field              | Type         | Null | Key | Default | Extra          |
 +--------------------+--------------+------+-----+---------+----------------+
 | g_id               | int(6)       | NO   | PRI | NULL    | auto_increment |
 | g_seo_name         | varchar(255) | NO   |     | NULL    |                |
 | g_name             | varchar(255) | NO   |     | NULL    |                |
 | g_forum            | int(6)       | NO   | MUL | NULL    |                |
 | g_cat_id           | int(4)       | NO   | MUL | 1       |                |
 | g_founder          | int(7)       | NO   |     | NULL    |                |
 | g_privacy          | tinyint(1)   | NO   |     | NULL    |                |
 | g_approval         | tinyint(1)   | NO   |     | 0       |                |
 | g_locked           | tinyint(1)   | NO   |     | NULL    |                |
 | g_desc             | mediumtext   | NO   |     | NULL    |                |
 | g_start            | int(10)      | NO   | MUL | NULL    |                |
 | g_banner           | varchar(200) | NO   |     | NULL    |                |
 | g_logo             | varchar(200) | NO   |     | NULL    |                |
 | g_bg               | varchar(200) | NO   |     | NULL    |                |
 | g_portal_news_num  | int(3)       | NO   |     | 5       |                |
 | g_portal_posts_num | int(3)       | NO   |     | 5       |                |
 | g_portal_mem_num   | int(3)       | NO   |     | 5       |                |
 | g_delete_request   | tinyint(1)   | NO   | MUL | NULL    |                |
 | g_featured         | tinyint(1)   | NO   | MUL | NULL    |                |
 | g_memCount         | int(10)      | NO   |     | NULL    |                |
 +--------------------+--------------+------+-----+---------+----------------+
 20 rows in set (0.00 sec)

Der er er ekstra felter udover dem vi pt har, men vi kan starte med at overføre dem vi kender. Map mellem kolonner i tabellen:

ibf_teams → ibf_social_groups
tid → g_id
tname → g_name
tname hvor mellemrum og specialregn er erstattet med _ → g_seo_name
fid → g_forum
leader_mid → g_founder
is_open → g_privacy? 0 → 1 og 1 → 0 (et åbent netværk (1) = ikke-privat (0))
(g_approval? ← 1) (alle gamle netværk skal som udgangspunkt godkende medlemmer)
(g_locked? ← 0)
tdesicription → g_desc
count(*) from ibf_team_members where tid = xx → g_memCount

#testoverfører data for cand.move 
insert into ibf_social_groups (g_id, g_name, g_seo_name, g_forum, g_founder, g_privacy, g_approval, g_locked, g_desc)
 select tid, tname, tname, fid, leader_mid, !is_open, 1, 0, tdescription from ibf_teams where tid = 14;

Her har jeg indtil videre overført tname direkte i g_seo_name, men disse navne skal laves om så mellemrum og andre specialtegn bliver erstattet med en “-” – til URL’en.

antallet af medlemmer skal hentes ud med count(*) from ibf_team_members for hvert tid og sættes ind i g_memCount-kolonnen.

Eksempel med cand.move:

update ibf_social_groups set g_memCount = (Select count(*) FROM ibf_team_members where tid = 14) where g_id = 14;

Nu findes forummet i oversigten under netværk (groups). Men gruppen findes teknisk set stadig ikke og der er ingen medlemmer i. Vi tager medlemmerne først.

mysql> describe ibf_social_group_members;
 +-------------+------------+------+-----+---------+-------+
 | Field       | Type       | Null | Key | Default | Extra |
 +-------------+------------+------+-----+---------+-------+
 | member_id   | int(7)     | NO   | PRI | NULL    |       |
 | g_id        | int(6)     | NO   | PRI | NULL    |       |
 | is_owner    | tinyint(1) | NO   |     | NULL    |       |
 | is_admin    | tinyint(1) | NO   |     | NULL    |       |
 | is_mod      | tinyint(1) | NO   |     | NULL    |       |
 | is_approved | tinyint(1) | NO   |     | 0       |       |
 | join_date   | int(10)    | NO   |     | NULL    |       |
 | is_banned   | tinyint(1) | NO   |     | 0       |       |
 | has_left    | tinyint(1) | NO   |     | NULL    |       |
 | inv_id      | int(10)    | NO   |     | NULL    |       |
 +-------------+------------+------+-----+---------+-------+

Igen mapper vi kolonner fra det gamle ibf_team_members til det nye ibf_social_group_members.

ibf_team_members → ibf_social_group_members
mid → member_id
tid → g_id
approved → is_approved
can_team_mm → is_owner og is_admin
can_forum_mm → is_mod

Igen et eksempel med medlemmerne i netværket cand.move:

insert into ibf_social_group_members (member_id, g_id, is_approved, is_owner, is_admin, is_mod)
 select mid, tid, approved, can_team_mm, can_team_mm, can_forum_mm from ibf_team_members where tid = 14;

Medlemmerne er nu overført, og jeg kan bl.a. se netværket i min oversigt. Men når jeg klikker på gruppen får jeg stadig en besked om at gruppen ikke findes …

Fortsættes næste gang.

Todo:

  1. gruppen skal kunne klikkes ind på fra netværksoversigten
  2. overføre alle grupper og netværk
  3. teste rettigheder
  4. få oprettelse af nye grupper til at virke (virker af en eller anden grund pludselig ikke)
  5. … det løse og det jeg har glemt …

Sociale grupper: de nye netværk

Under opgradering til version 3.3 er et af de største hurdler, at de private netværk ikke længere findes som det modul vi bruger. Jeg har fundet noget der tilsvarende kan klare opgaven, men desværre er det teknisk set et helt andet system. I dette indlæg har jeg fokus på todos for netværk efter opgradering:

Private netværk på morsverden: Social groups i stedet for Member Teams.

Ved opgradering af forumsoftware fra 2.4 til 3.3 ryger den modifikation jeg har benyttet til at brugerne kunne oprette deres egne private netværk, Member Teams af Compguy11. Denne blev og bliver ej heller ikke opgraderet til at fungere med det nye software og udviklerne af Invision Power Board ønsker ikke at indbygge en officiel add-on/modifikation, som har den samme funktion, da de mener at det intet godt gør for et online community, andet end at defragmentere gruppen. Dette har været en af de absolut primære årsager til at jeg ikke har opgraderet morsverden software indtil videre, da vores private netværk har siden 2008, da de blev indført, haft en meget central rolle for brugen af morsverden-forummet (jaja, vi defragmenterer! Men gør det også mere personligt og fokuseret på ens private behov).

De vigtigste funktioner i vores netværk/Member Teams er:

  1. kun guldmedlemmer kan oprette netværk
  2. man kan højst eje to netværk (dette overvejer jeg dog)
  3. kun betalende medlemmer kan tilmelde sig netværk
  4. når betalingsmedlemskabet udløber er man stadig i netværket, men kan ikke læse sålænge man er ikke-betalende
  5. netværk kan enten være åbne eller lukkede.
  6. de åbne er nogle som alle kan tilmelde sig frit og skal accepteres hvis de passer ind i målgruppen
    1. man skal dog stadig godkendes når man har ansøgt om tilmelding.
    2. de lukkede kan ikke ses af netværksoversigten og medlemmer kan kun tilmelde sig ved at blive inviterede ind i gruppen.

Jeg har installeret Social Groups og tester. De gamle netværksfora findes som almindelige fora og kan læses af de medlemmer der har rettighederne til det. Men de er ikke en del af de nye sociale netværksgrupper. Jeg har forhørt mig i support-tråden om hvorvidt der var en smart måde at konvertere på, men desværre … jeg kommer til at bakse med det manuelt gruppe for gruppe (og skal lige finde ud af hvordan! Noget med at se på databasens opbygning og se hvordan jeg kan overføre de enkelte dele inkl. alle de mange indstillinger og medlemmer for hver gruppe …).

Noget andet er at de sociale grupper har meget mere interface som nærmest små fora inde i forummet. Når man opretter en gruppe har man sin egen gruppeside med beskrivelse, medlemsliste, seneste indlæg i gruppen, seneste medlemmer m.m. Smart.

Features der er i Social Groups og hvad der mangler i forhold til det gamle:

  1. ACP -> Other Apps -> Social Groups -> Settings -> Global:
  2. her kan man sætte hvilke grupper der må oprette grupper (jeg vælger alle guld-grupper) og hvilke grupper der må joine (jeg vælger alle sølv- og guldgrupper)
  3. Jeg kan umiddelbart ikke finde nogen begrænsing på hvor mange grupper man har lov til at oprette, når først man kan oprette grupper
  4. Kun betalende kan tilmelde sig – se 1.
  5. Når medlemskabet udløber vil medlemmet stadig kunne læse i netværket, da det kun er tilmeldingsgrupperne der kan vælges. Dette skal fikses.
  6. Der er faktisk hele tre typer netværk i Social grops:
  7. åbne – som i member teams
    1. private – disse ses stadig i oversigten, men man kan ikke tilmelde sig dem uden at blive inviteret
    2. skjulte – disse ses ikke i oversigten og man kan kun tilmelde sig dem ved at blive inviteret. Disse svarer meget til de lukkede netværk vi har i dag.

Jeg havde i 2008 gjort mig en del tanker om fordelene og ulemperne ved at lave de lukkede private netværk usynlige. Ved at gøre dem synlige kunne det afmystificere lidt hvad der egentlig fandtes “i det skjulte”, men på den anden side ville det også risikere at give anledning til følelsen af at være udenfor, når man kunne se hvad der var, men ikke måtte have lov til at være en del af det. De netværk der kom var per automatik synlige i modulet, selvom de var lukklede, men jeg endte med at lave et hack, således at de ikke kunne ses på listen, hvis man skulle inviteres for at blive medlem. Efter princippet hvad man ikke ved har man ikke ondt af. De private lukkede fora skulle være en privat sag for de involverede.

Den del mener jeg egentlig stadig, og derfor vil jeg deaktivere de private netværk og nøjes med at fortsætte med de to typer: åbne og skjulte.

Der er nu disse ting tilbage på todo’en for netværkene:

  1. begrænsing på hvor mange fora man skal kunne oprette som guldmedlem
  2. når et medlemskab udløber, skal medlemmer ikke længere kunne se de netværk hun tilmeldte sig mens hun var betalende, men skal dog automatisk kunne se dem igen når hun atter fornyr medlemskabet.
  3. og det allervigtigste: alle de gamle netværk skal manuelt overføres til det nye system. Finde ud af hvordan og se om det kan gøres smart eller en ad gangen … vi ses om nogle måneder!

Andet:

  1. man kan oprette kategorier til grupperne. Det vil jeg overveje ud fra de grupper der allerede findes, da det vil give bedre overblik over netværkene.
  2. skal testes når alt er på plads.

Så er det vist bare at smøge ærmerne op … once again!

Opgradering af forumsoftware, status del II

Fortsat fra Status del I

Status på opgradering her i starten af uge 44. Ny dato for live opgradering endnu ikke fundet.

Done:

  • kopieret forum og opgraderet til version 3.3 (mere om selve processen i seperat indlæg – skal bruge det når jeg evt. skal opgradere live)
  • installeret et nyt skin til forum: summerstyle
  • installeret subscsriptions manager og få overført de subscriptions der mangler (mere om dette i seperat indlæg senere)
  • instaleret sociale grupper som erstatning for de private netværk (member teams). Mere om udviklingen af dette i seperat indlæg senere
  • ved test af positive likes på indlæg viste det sig at max quota var reached fra start af. Det kunne laves om her: Manage User Groups -> edit hver gruppe -> reputation. Har pt sat den op på 50 likes, men det må gerne være ubegræset. Eller kan der være nogle fordele ved at sætte max på?
  • jeg har installeret en shoutbox, som dog ikke virkede, så enten skal den tilpasses eller jeg skal finde en ny.

Todo:

  • finde en måde at overføre alle de gamle netværk til det nye sociale grupper, evt. manuelt
  • sociale grupper: det er kun guld-medlemmer der skal kunne oprette og kun sølv/guld der skal kunne læse i
  • sociale grupper: kan man sætte et max antal på oprettelse?
  • test af betalingssystem, skal virke med epay.dk samt paypal samt danske bank evt.
  • man skal ikke kunne se hvem der senest har skrevet i et forum man ikke har adgang til
  • indlæg skal ikke tælle op for dem der er i gruppen “medlem”
  • google analytics + adsense + chart.dk på
  • tilpasning af skin + logo
  • tilpasning af resten af sitet
  • —–> todos nedenunder kan evt. vente til efter live opgrade
  • shotbox skal virke
  • arkade skal virke
  • opskrifter – der skal findes et nyt modul eller det gamle skal opgraderes
  • kalender mangler viser det sig – seperat modul der skal købes?
  • mulighed for at se nye indlæg – også som knap nede i bunden
  • problemer med smileys som ikke alle kan ses
  • Installere Nexus for bedre subscription manager? Er købt …

 

Jeg tager fat på en todo ad gangen igen og laver en opdatering herinde, når der er nyt i et emne.

Opgradering af forumsoftware, status del I

Jeg har i meget lang tid skullet opgradere forumsoftwaren (Invision Power Board – IPB) på morsverden fra den oldgamle version 2.4 til det nye 3.3. Efter at have taget mig sammen og kommet i gang, har det i første omgang været planlagt til at blive opgraderet i efterårsferien i uge 42. Det viste sig dog at der stadig var for mange ting der manglede, og jeg blev nødt til at udsætte det. Og derefter gik jeg lidt død på manglende, især de sociale grupper som skulle erstatte de private netværk (som ikke findes i den nye udgave) og betalingssystemet, som fungerer anderledes.

Men efter en lille pause, tager jeg fat igen. Nu må jeg snart få bidt i det sure æble og få den opgradering til at virke. Jeg tænker lidt at det nok kommer til at være uundgåeligt at det ikke vil virke helt perfekt med de 100% af de features der var før – i hvert fald ikke til at starte med. For skal det det, så bliver jeg aldrig færdig, og så sidder vi her og kukkelurer på det gamle og mangler support og udvikling og går glip af alle de dejlige features der er kommet siden sidst. Og samtidig ved jeg at mange brugere helst vil blive i det trygge om have det som det er.

Forandring kan da også være skræmmende, – og derfor vil jeg gerne have så mange ting til at virke “som de er”, men samtidig som regel ret fedt når først man har vænnet sig til den og oplever de fordele det også medfører.

Jeg bliver nødt til lige at få samlet op på alle manglerne forfra, for de gamle logs er ved at blive for udvandede og for spredte.

I næste indlæg kommer der en konkret status med dones and todos.