-
Maxdome oder Watchever?
Ich habe mir einen Zugang für Maxdome sowie Watchever besorgt und ein paar Wochen ausprobiert, welche die beste ist. Dabei gab es ein unerwartet klares Ergebnis: Watchever hat mehr zu bieten, ist einfacher zu bedienen und man wird nicht abgezockt. Was mich bei Maxdome extrem gestört hat, ist die Masche Serien als kostenlos zu kennzeichnen…
-
Yii Griedview ID nicht definiert
Wenn man die Yii Gridview benutzt, um bei Dataprovider Daten schnell in eine Tabelle zu verpacken, muss man aufpassen, dass man definiert, was die eindeutige ID jeder Zeile ist. Bei einem CArrayDataProvider muss man das Attribut „keyField“ setzen : $this->widget(‚zii.widgets.grid.CGridView‘, array( ‚dataProvider‘ => new CArrayDataProvider($myData, array(„keyField“ => „myKeyFieldName“)), ) )); ?> ansonsten…
-
Cross Domain Ajax Requests
Von Hause aus sind Cross Domain Ajax Requests aus Sicherheitsgründen nicht erlaubt, weil so fremder Schad-Code beim Client nachgeladen und ausgeführt werden kann. Um trotzdem einen erfolgreichen Ajax Request auf eine andere Domain oder Subdomain oder auch nur von HTTP auf HTTPS zu senden, muss man die Access-Control-Allow-Origin beachten. Man muss nicht jsonp benutzen, wie…
-
Yii PHP Objekte übergeben nach Javascript
Es gibt verschiedene Varianten die PHP Variablen und Objekte nach Javascript zu übergeben: 1. mit PHP json_encode() var employmentTypesIds = <?php echo json_encode($employmentTypesIds)?>; 2. per Extension mit Active Record Relationen! – carjson 3. per Script Übergabe: $cs->registerScript(‚php_vars‘, ‚messages1 = ‚.CJSON::encode(Yii::app()->createAbsoluteUrl(„/messages/hello“)).‘;‘. ‚messages1 = ‚.CJSON::encode(Yii::app()->createAbsoluteUrl(„/messages/goodbye“)).‘;‘ );
-
Yii Session Handling über die Datenbank aktivieren
Aus Sicherheitsgründen kann man die Session mit Yii nicht über das Dateisystem, sondern über die Datenbank verwalten lassen automatisch und die Sessionvariable verschlüsseln. Folgende Konfiguration ist dafür notwendig: ‚components‘ => array( ’session’=>array( ‚class‘ => ’system.web.CDbHttpSession‘, ‚connectionID‘ => ‚db‘, ’sessionTableName‘ => ’session‘, ‚autoStart’=>true, ‚cookieMode’=>’only‘, //’savePath’=>’/tmp‘, ’sessionName’=>’connected_session‘, ‚timeout’=>60*60,//…
-
Google Analytics Universal Search datenschutzkonform einsetzen
Es hat sich viel verändert! Sehr gut erklärt hier.
-
Yii CGridView Custom Header für Pdf Generierung
Um ein PDF generieren zu können mit mpdf, muss man die thead-Tags entfernen, da diese nicht umgewandelt werden von mpdf. Dazu kann man die folgende Klasse verwenden: Yii::import(‚zii.widgets.grid.CGridView‘); class PDFGridView extends CGridView { public function renderTableHeader() { $options[‚class‘] = ‚pdf-grid-header‘; echo CHtml::openTag(‚tr‘, $options) . „\n“; foreach ($this->columns as $header) { …
-
Redo / Undo Class für kinetic.js
Für den Einbau einer Redo und Undo-History Funktion in ein Porgramm zu integrieren, benötigt man nur die folgende Klasse und muss an den passenden Zeitpunkten die makeHistory() funktion aufrufen: history = new History(stage, layer); histoy.makeHistory(); function History(stage, layer){ var historyStep = 0; var history = Array(); var layer = layer; var…
-
Umrechnung von Bogenmaß (Radians) zu Grad in Javascript
Die folgenden Funktionen rechnen von Bogenmaß (Radians) in Grad um und anders herum: function degreeToRadians($degree) { return $degree * Math.PI / 180; } function radiansToDegrees($radian) { return $radian * 180/ Math.PI; }
-
PHP überprüfen, ob ein String eine valide Asin ist
Um zu überprüfen, ob ein String eine valide Asin ist, muss man die 2 möglichen Regeln für Asins überprüfen: ein „B“ gefolgt von 2 Zahlen und 7 alphanumerischen Werten eine spezial ISBN-Vairiante: 9 Zahlen und am Ende entweder ein „X“ oder eine weitere Zahl (sehr selten) Der passende reguläre Ausdruck in einer Funktion gekapselt in…