2015-08-05 10:24:26 +03:00
'use strict' ;
2015-07-24 18:13:42 +03:00
var csrf ;
2015-07-07 20:09:03 +03:00
function initInstall ( ) {
if ( $ ( '.install' ) . length == 0 ) {
return ;
}
// Database type change detection.
$ ( "#db_type" ) . change ( function ( ) {
var db _type = $ ( '#db_type' ) . val ( ) ;
if ( db _type === "SQLite3" ) {
$ ( '#sql_settings' ) . hide ( ) ;
$ ( '#pgsql_settings' ) . hide ( ) ;
$ ( '#sqlite_settings' ) . show ( ) ;
return ;
}
var mysql _default = '127.0.0.1:3306' ;
var postgres _default = '127.0.0.1:5432' ;
$ ( '#sqlite_settings' ) . hide ( ) ;
$ ( '#sql_settings' ) . show ( ) ;
if ( db _type === "PostgreSQL" ) {
$ ( '#pgsql_settings' ) . show ( ) ;
if ( $ ( '#db_host' ) . val ( ) == mysql _default ) {
$ ( '#db_host' ) . val ( postgres _default ) ;
}
} else {
$ ( '#pgsql_settings' ) . hide ( ) ;
if ( $ ( '#db_host' ) . val ( ) == postgres _default ) {
$ ( '#db_host' ) . val ( mysql _default ) ;
}
}
} ) ;
} ;
2015-07-24 18:13:42 +03:00
function initRepository ( ) {
2015-07-24 16:02:49 +03:00
if ( $ ( '.repository' ) . length == 0 ) {
return ;
}
2015-07-24 18:13:42 +03:00
// Labels
2015-08-05 10:24:26 +03:00
if ( $ ( '.repository.labels' ) . length > 0 ) {
$ ( '.color-picker' ) . each ( function ( ) {
$ ( this ) . minicolors ( ) ;
} ) ;
$ ( '.precolors .color' ) . click ( function ( ) {
var color _hex = $ ( this ) . data ( 'color-hex' )
$ ( '.color-picker' ) . val ( color _hex ) ;
$ ( '.minicolors-swatch-color' ) . css ( "background-color" , color _hex ) ;
} ) ;
$ ( '.delete-label-button' ) . click ( function ( ) {
var $this = $ ( this ) ;
$ ( '.delete-label.modal' ) . modal ( {
closable : false ,
onApprove : function ( ) {
$ . post ( $this . data ( 'url' ) , {
"_csrf" : csrf ,
"id" : $this . data ( "id" )
} ) . done ( function ( data ) {
window . location . href = data . redirect ;
} ) ;
}
} ) . modal ( 'show' ) ;
return false ;
} ) ;
$ ( '.edit-label-button' ) . click ( function ( ) {
$ ( '#label-modal-id' ) . val ( $ ( this ) . data ( 'id' ) ) ;
$ ( '#label-modal-title' ) . val ( $ ( this ) . data ( 'title' ) ) ;
$ ( '#label-modal-color' ) . val ( $ ( this ) . data ( 'color' ) )
$ ( '.minicolors-swatch-color' ) . css ( "background-color" , $ ( this ) . data ( 'color' ) ) ;
$ ( '.edit-label.modal' ) . modal ( {
onApprove : function ( ) {
$ ( '.edit-label.form' ) . submit ( ) ;
}
} ) . modal ( 'show' ) ;
return false ;
} ) ;
2015-07-24 16:02:49 +03:00
}
2015-08-05 10:24:26 +03:00
// Milestones
if ( $ ( '.repository.new.milestone' ) . length > 0 ) {
var $datepicker = $ ( '.milestone.datepicker' )
$datepicker . datetimepicker ( {
lang : $datepicker . data ( 'lang' ) ,
inline : true ,
timepicker : false ,
startDate : $datepicker . data ( 'start-date' ) ,
2015-08-05 13:26:18 +03:00
formatDate : 'Y-m-d' ,
2015-08-05 10:24:26 +03:00
onSelectDate : function ( ct ) {
2015-08-05 13:26:18 +03:00
$ ( '#deadline' ) . val ( ct . dateFormat ( 'Y-m-d' ) ) ;
2015-07-24 18:13:42 +03:00
}
2015-08-05 10:24:26 +03:00
} ) ;
$ ( '#clear-date' ) . click ( function ( ) {
$ ( '#deadline' ) . val ( '' ) ;
return false ;
} ) ;
}
2015-07-24 16:02:49 +03:00
} ;
2015-03-07 23:12:13 +03:00
$ ( document ) . ready ( function ( ) {
2015-07-24 18:13:42 +03:00
csrf = $ ( 'meta[name=_csrf]' ) . attr ( "content" ) ;
2015-07-07 20:09:03 +03:00
// Semantic UI modules.
$ ( '.dropdown' ) . dropdown ( ) ;
2015-07-24 11:42:47 +03:00
$ ( '.jump.dropdown' ) . dropdown ( {
2015-07-23 23:50:05 +03:00
action : 'hide'
} ) ;
2015-07-07 20:09:03 +03:00
$ ( '.slide.up.dropdown' ) . dropdown ( {
2015-03-07 23:12:13 +03:00
transition : 'slide up'
} ) ;
2015-07-08 14:47:56 +03:00
$ ( '.ui.accordion' ) . accordion ( ) ;
$ ( '.ui.checkbox' ) . checkbox ( ) ;
2015-08-03 12:42:09 +03:00
$ ( '.ui.progress' ) . progress ( {
showActivity : false
} ) ;
2015-07-09 08:17:48 +03:00
$ ( '.poping.up' ) . popup ( ) ;
2015-07-07 20:09:03 +03:00
initInstall ( ) ;
2015-07-24 16:02:49 +03:00
initRepository ( ) ;
2015-03-07 23:12:13 +03:00
} ) ;