anmerkung: snapshot contenido-cvs-2004-09-03.tar

emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

anmerkung: snapshot contenido-cvs-2004-09-03.tar

Beitrag von emergence »

conlib/db_mysql.inc

es wurde ja die variable $cfg["nolock"] eingeführt wenn lock table nicht zur verfügung steht...

diese wird auch in der function lock verwendet

jedoch fehlt sie in der function unlock

diese sollte dann so aussehen...

Code: Alles auswählen

  function unlock() {
    global $cfg;
    if ($cfg["nolock"] == true)
    {
      return true;	
    }

    $res = $this->query("unlock tables");
    if (!$res) {
      $this->halt("unlock() failed.");
    }
    return $res;
  }
anmerkung noch zum setup beim erzeugen der config.php

die variable
$cfg["nolock"] wird nur dann eingefügt wenn lock table nicht gestattet ist...
sollte sie nicht immer vorhanden sein ?
zb standard

Code: Alles auswählen

$cfg["nolock"] = false;
ansonsten true

ach ja, wie siehts eigentlich aus mit
http://www.contenido.de/forum/viewtopic ... highlight=
und
http://www.contenido.de/forum/viewtopic ... 8844#28844
*** make your own tools (wishlist :: thx)
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

ich hab im moment gar keine zeit um mir irgendwas anzusehen.... :(
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

das ist natürlich schlecht...

ich hab da noch einen netten gefunden...

hab mir die setup/index.php angesehen...

bei function screen_enter_mysql_data()

findet sich

Code: Alles auswählen

443:			if ($this -> globals["sql_target"] == 'upgrade')
444:			{
445:				$this -> globals["mode"] = 'upgrade';
das sollte aber

Code: Alles auswählen

445:				$this -> globals["mode"] = 'update';
sein...

es wird bei mode immer auf update geprüft, nicht jedoch auf upgrade...
*** make your own tools (wishlist :: thx)
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ich hab da ne frage
setup/index.php

bei function insert_sql()

findet sich

Code: Alles auswählen

		$result = mysql_query("SELECT idartlang, free_use_01, free_use_02, free_use_03 FROM ". $prefix."_art_lang");
		//echo "SELECT idartlang, free_use_01, free_use_02, free_use_03 FROM ". $prefix."_art_lang";

		$savedTM = "";

		if ($result !== false)
		{
			while ($data = mysql_fetch_array($result, MYSQL_ASSOC))
			{
				$savedTM[] = $data;
			}
		}
		//mysql_query ("ALTER TABLE ".$prefix."_keywords CHANGE 'keyword' 'idkeyword' INT( 10 ) DEFAULT '0' NOT NULL");

...


		if (is_array($savedTM))
		{
			foreach ($savedTM as $entry)
			{
				mysql_query("UPDATE ".$prefix."_art_lang SET time_move_cat = '".$entry["free_use_01"]."',".
			            	" time_target_cat ='".$entry["free_use_02"]."', time_online_move = '".$entry["free_use_03"]."' WHERE idartlang ='".$entry["idartlang"]."'");

			}
		}


ähm was macht die routine hier ?

anscheinend wurde das timemanagment mal damit gesteuert... ähm und in welcher version war das ?
*** make your own tools (wishlist :: thx)
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ich hab mir momentan etwas praktisches eingebaut...

in classes/class.inuse.php
bei function checkAndMark

Code: Alles auswählen

		global $sess, $auth, $notification, $area, $frame;
und

Code: Alles auswählen

if ($allowOverride == true && $auth->auth["uid"] == $obj->get("userid"))
durch

Code: Alles auswählen

		global $sess, $auth, $notification, $area, $frame, $perm;
und

Code: Alles auswählen

				if ($allowOverride == true && ($auth->auth["uid"] == $obj->get("userid") || $perm->have_perm()))
ersetzen...
das hat jetzt für mich den vorteil das es dem admin und sysadmin immer gestattet ist ein objekt zu entsperren unabhängig davon ob ein bearbeiter gerade mit diesem objekt arbeitet...
*** make your own tools (wishlist :: thx)
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

noch was intressantes

bei con_inuse wird zeitweise das feld objectid leer gelassen...
das hat jetzt zur folge, das der artikel beim speichern von einem element zb CMS_HTML die meldung auftaucht zb:

Code: Alles auswählen

Artikel wird bearbeitet von test ()
ein entsperren mit override lock ist für den test user leider auch nicht möglich... das taucht dann immer wieder auf...
springt man in die übersicht oder editor wird keine sperre angezeigt...

ebenso intressant
ich bin bearbeiter eines artikels -> in con_inuse ist ein eintrag vorhanden...
dann wechsele ich in zb in den spaw und die url -> http://localhost/contenido/includes/inc ... ndedit.php?
wird geladen wird der eintrag in con_inuse wieder gelöscht...
sollte dieser nicht eingetragen bleiben ?
*** make your own tools (wishlist :: thx)
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ad.

Code: Alles auswählen

Artikel wird bearbeitet von test ()
das läßt sich doch relativ einfach nachvollziehen...

beispiel artikel auswählen - und man befindet sich im editor
in con_inuse ist alles korrekt vorhanden...
dann bei einem CMS_HTML element einfach mal auf save klicken...
in con_inuse fehlt nun die objectid *
nun schließt man einfach den browser ohne sich abzumelden
der eintrag in der con_inuse bleibt natürlich erhalten...
meldet man sich nun erneut an und wechselt in den artikel und versucht nochmal zu speichern kommt die obrige fehlermeldung...
lustigerweise kann dieser fall auch eintreten wenn man dann zulange im backend ist und rauskatapultiert wird...

* ich schätze es hängt damit zusammen dass die $idartlang bei
<form name="editcontent"...
nicht eingetragen wird...
*** make your own tools (wishlist :: thx)
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

ähm das mit dem leeren Feld in der con_inuse hatte ich noch nie...könnte das eventuell von deiner Änderung kommen?
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

timo hat geschrieben:ähm das mit dem leeren Feld in der con_inuse hatte ich noch nie...könnte das eventuell von deiner Änderung kommen?
nein, ich habs gefunden

in einem älteren snapshot ist etwas enthalten, das in dem neuen nicht mehr an der selben position vorhanden war....

in der front_content.php fand sich vor

Code: Alles auswählen

	$col = new InUseCollection;
folgendes

Code: Alles auswählen

	$idartlang = getArtLang($idart, $lang);
ich habs aus versehen nicht mitkopiert...

nun gehts ohne probleme und die objectid wird immer gesetzt...
ein entsperren ist jetzt immer möglich, wenn man selbst der bearbeiter ist...
Zuletzt geändert von emergence am Mo 13. Sep 2004, 11:50, insgesamt 1-mal geändert.
*** make your own tools (wishlist :: thx)
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ach ja noch was nettes...

beim installieren mit modulen und beispielen werden keine kategorien mehr in der db angelegt...
hängt vermutlich mit den tests der category_kickoff.php zusammen...
*** make your own tools (wishlist :: thx)
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

die category_kickoff wird aber nicht verwendet, soweit ich weiß?
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ad.
setup/index.php

bei function insert_sql()

hab mir das jetzt noch ein wenig angesehen...

bei einem upgrade hat das zur folge das alle zeitsteuerungseinstellungen
gelöscht werden...
ist glaube ich so nicht beabsichtigt... oder ?

vielleicht sollte dieser teil in das upgrade script der 4.2 version hinein...
*** make your own tools (wishlist :: thx)
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

öhm nicht wirklich?
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

timo hat geschrieben:öhm nicht wirklich?
habs gerade getestet...
hab ne zeitsteuerung gesetzt...
upgrade
zeitsteuerung weg...

ergo schlecht...
*** make your own tools (wishlist :: thx)
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

aber das sind so code-teile, wo sich einerseits debugging nicht wirklich lohnt -> wegwerfen und neu machen

und andererseits problem ergeben, nicht nur von der 4.2 aus, sondern weil die konzepte da mehrfach geändert wurden...und trotz konzeptänderung der prozess der zeitsteuerung immer noch nicht richtig funktioniert.
Gesperrt