Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
medapp_eksad
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
qorri_di
medapp_eksad
Commits
90e1188c
Commit
90e1188c
authored
Sep 29, 2022
by
Ade Fikriatul Ilmi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
memperbaiki footer web and mobile
parent
acd25f57
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
298 additions
and
153 deletions
+298
-153
footer.dart
lib/screen/footer.dart
+6
-5
small_footer.dart
lib/screen_small/small_footer.dart
+292
-147
componen.dart
lib/widget/componen.dart
+0
-1
No files found.
lib/screen/footer.dart
View file @
90e1188c
...
@@ -99,7 +99,7 @@ class Footer extends StatelessWidget {
...
@@ -99,7 +99,7 @@ class Footer extends StatelessWidget {
ApiLinkedin
(),
ApiLinkedin
(),
ApiTwitter
(),
ApiTwitter
(),
ApiInstagram
(),
ApiInstagram
(),
ApiYoutube
()
ApiYoutube
()
,
],
],
),
),
),
),
...
@@ -244,12 +244,13 @@ class Footer extends StatelessWidget {
...
@@ -244,12 +244,13 @@ class Footer extends StatelessWidget {
child:
ListTile
(
child:
ListTile
(
leading:
const
Icon
(
leading:
const
Icon
(
Icons
.
location_on
,
Icons
.
location_on
,
size:
25
,
size:
28
,
color:
Colors
.
black
,
),
),
title:
Container
(
title:
Container
(
padding:
const
EdgeInsets
.
only
(
left:
14
),
padding:
const
EdgeInsets
.
only
(
left:
25
),
width:
screenSize
.
width
*
0.25
,
width:
screenSize
.
width
*
0.25
,
height:
screenSize
.
height
*
0.
3
,
height:
screenSize
.
height
*
0.
8
,
child:
Text
(
child:
Text
(
'PT. Tiga Daya Digital Indonesia
\n
The East '
'PT. Tiga Daya Digital Indonesia
\n
The East '
'Tower 19th Floor
\n
Jl. Dr. Ide Anak Agung '
'Tower 19th Floor
\n
Jl. Dr. Ide Anak Agung '
...
@@ -478,7 +479,7 @@ class _TelphoneApiState extends State<TelphoneApi> {
...
@@ -478,7 +479,7 @@ class _TelphoneApiState extends State<TelphoneApi> {
return
const
CircularProgressIndicator
();
return
const
CircularProgressIndicator
();
}
}
return
Container
(
return
Container
(
width:
screenSize
.
width
*
0.
19
,
width:
screenSize
.
width
*
0.
20
,
child:
ListTile
(
child:
ListTile
(
leading:
const
Icon
(
leading:
const
Icon
(
Icons
.
phone
,
Icons
.
phone
,
...
...
lib/screen_small/small_footer.dart
View file @
90e1188c
import
'package:flutter/material.dart'
;
import
'package:flutter/material.dart'
;
import
'package:font_awesome_flutter/font_awesome_flutter.dart'
;
import
'package:font_awesome_flutter/font_awesome_flutter.dart'
;
import
'package:google_fonts/google_fonts.dart'
;
import
'package:google_fonts/google_fonts.dart'
;
import
'package:medapp_eksad/api/setting_api.dart'
;
import
'package:medapp_eksad/api/sosmed_api.dart'
;
import
'package:url_launcher/url_launcher.dart'
;
import
'package:url_launcher/url_launcher.dart'
;
class
FooterSmall
extends
StatelessWidget
{
class
FooterSmall
extends
StatelessWidget
{
...
@@ -38,8 +40,20 @@ class FooterSmall extends StatelessWidget {
...
@@ -38,8 +40,20 @@ class FooterSmall extends StatelessWidget {
decoration:
const
BoxDecoration
(
decoration:
const
BoxDecoration
(
//color: Colors.lightBlueAccent,
//color: Colors.lightBlueAccent,
image:
DecorationImage
(
image:
DecorationImage
(
image:
AssetImage
(
image:
'assets/logo/medapp-logo.png'
),
AssetImage
(
'assets/logo/medapp-logo.png'
),
fit:
BoxFit
.
fill
)),
),
SizedBox
(
height:
7
,
),
Container
(
width:
screenSize
.
width
*
0.4
,
height:
screenSize
.
height
*
0.10
,
decoration:
const
BoxDecoration
(
//color: Colors.lightBlueAccent,
image:
DecorationImage
(
image:
AssetImage
(
'assets/logo/logo-eksad.png'
),
fit:
BoxFit
.
fill
)),
fit:
BoxFit
.
fill
)),
),
),
const
Spacer
(),
const
Spacer
(),
...
@@ -65,55 +79,16 @@ class FooterSmall extends StatelessWidget {
...
@@ -65,55 +79,16 @@ class FooterSmall extends StatelessWidget {
Container
(
Container
(
width:
screenSize
.
width
,
width:
screenSize
.
width
,
height:
screenSize
.
height
*
0.03
,
height:
screenSize
.
height
*
0.03
,
padding:
EdgeInsets
.
symmetric
(
horizontal:
screenSize
.
width
*
0.15
),
padding:
EdgeInsets
.
symmetric
(
horizontal:
screenSize
.
width
*
0.15
),
//color: Colors.blue,
//color: Colors.blue,
child:
Row
(
child:
Row
(
mainAxisAlignment:
MainAxisAlignment
.
spaceEvenly
,
mainAxisAlignment:
MainAxisAlignment
.
spaceEvenly
,
children:
[
children:
[
IconButton
(
ApiLinkedin
(),
onPressed:
()
{
ApiTwitter
(),
launch
(
ApiInstagram
(),
'https://www.linkedin.com/company/pt-tiga-daya-digital-indonesia-triputra-group-eksad-technology'
);
ApiYoutube
(),
},
icon:
const
Icon
(
FontAwesomeIcons
.
linkedinIn
,
size:
30
,
),
iconSize:
20
,
),
IconButton
(
onPressed:
()
{
launch
(
'https://twitter.com/eksadtechnology/'
);
},
icon:
const
Icon
(
FontAwesomeIcons
.
twitter
,
size:
30
,
),
iconSize:
20
,
),
IconButton
(
onPressed:
()
{
launch
(
'https://www.instagram.com/eksad_technology/'
);
},
icon:
const
Icon
(
FontAwesomeIcons
.
instagram
,
size:
30
,
),
iconSize:
20
,
),
IconButton
(
onPressed:
()
{
launch
(
'https://www.youtube.com/channel/UCiZgIbpWgrAMrHW-TaS9EPw'
);
},
icon:
const
Icon
(
FontAwesomeIcons
.
youtube
,
size:
30
,
),
iconSize:
20
,
)
],
],
),
),
),
),
...
@@ -163,16 +138,16 @@ class FooterSmall extends StatelessWidget {
...
@@ -163,16 +138,16 @@ class FooterSmall extends StatelessWidget {
width:
screenSize
.
width
,
width:
screenSize
.
width
,
height:
screenSize
.
height
*
0.06
,
height:
screenSize
.
height
*
0.06
,
child:
const
itemBawah_small
(
child:
const
itemBawah_small
(
item:
'S
ervice
'
,
item:
'S
olutions
'
,
routeName:
'/s
ervice
'
,
routeName:
'/s
olutions
'
,
),
),
),
),
Container
(
Container
(
width:
screenSize
.
width
,
width:
screenSize
.
width
,
height:
screenSize
.
height
*
0.06
,
height:
screenSize
.
height
*
0.06
,
child:
const
itemBawah_small
(
child:
const
itemBawah_small
(
item:
'C
areer
'
,
item:
'C
ontact Us
'
,
routeName:
'/c
areer
'
,
routeName:
'/c
ontact
'
,
),
),
),
),
Spacer
()
Spacer
()
...
@@ -180,7 +155,7 @@ class FooterSmall extends StatelessWidget {
...
@@ -180,7 +155,7 @@ class FooterSmall extends StatelessWidget {
)),
)),
Container
(
Container
(
width:
screenSize
.
width
,
width:
screenSize
.
width
,
height:
screenSize
.
height
*
0.
3
5
,
height:
screenSize
.
height
*
0.
2
5
,
child:
Column
(
child:
Column
(
crossAxisAlignment:
CrossAxisAlignment
.
start
,
crossAxisAlignment:
CrossAxisAlignment
.
start
,
mainAxisAlignment:
MainAxisAlignment
.
spaceEvenly
,
mainAxisAlignment:
MainAxisAlignment
.
spaceEvenly
,
...
@@ -198,37 +173,12 @@ class FooterSmall extends StatelessWidget {
...
@@ -198,37 +173,12 @@ class FooterSmall extends StatelessWidget {
),
),
),
),
),
),
Container
(
width:
screenSize
.
width
,
height:
screenSize
.
height
*
0.06
,
child:
const
itemBawah_small
(
item:
'Retained Search'
,
routeName:
'/service'
,
),
),
Container
(
width:
screenSize
.
width
,
height:
screenSize
.
height
*
0.06
,
child:
const
itemBawah_small
(
item:
'Dedicated Services'
,
routeName:
'/service'
,
),
),
Container
(
width:
screenSize
.
width
,
height:
screenSize
.
height
*
0.06
,
child:
const
itemBawah_small
(
item:
'Contract Services'
,
routeName:
'/service'
,
),
),
Container
(
Container
(
width:
screenSize
.
width
,
width:
screenSize
.
width
,
height:
screenSize
.
height
*
0.0
6
,
height:
screenSize
.
height
*
0.0
4
,
child:
const
itemBawah_small
(
child:
itemBawah_small
(
item:
'
Recruitment
'
,
item:
'
Catalog
'
,
routeName:
'/s
ervice
'
,
routeName:
'/s
olutions
'
,
),
),
),
),
],
],
...
@@ -256,56 +206,11 @@ class FooterSmall extends StatelessWidget {
...
@@ -256,56 +206,11 @@ class FooterSmall extends StatelessWidget {
),
),
Column
(
Column
(
children:
[
children:
[
TelphoneApi
(),
EmailAPI
(),
Container
(
Container
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
screenSize
.
width
*
0.15
),
padding:
EdgeInsets
.
symmetric
(
width:
screenSize
.
width
,
horizontal:
screenSize
.
width
*
0.15
),
child:
ListTile
(
minLeadingWidth:
2
,
leading:
const
Icon
(
Icons
.
phone
,
size:
19
,
color:
Colors
.
black
,
),
title:
TextButton
(
onPressed:
()
{
launch
(
'tel:02157958040'
);
},
child:
Text
(
'(021) 5795 - 8040'
,
style:
GoogleFonts
.
poppins
(
fontSize:
14
,
color:
Colors
.
black87
,
),
)),
),
),
Container
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
screenSize
.
width
*
0.15
),
width:
screenSize
.
width
,
child:
ListTile
(
minLeadingWidth:
2
,
leading:
const
Icon
(
Icons
.
mail
,
size:
19
,
color:
Colors
.
black
,
),
title:
TextButton
(
onPressed:
()
{
launch
(
'mailto:Info@eksad.com?subject=Info MCS'
);
},
child:
Text
(
'info@eksad.com'
,
style:
GoogleFonts
.
poppins
(
fontSize:
14
,
color:
Colors
.
black87
,
letterSpacing:
1.1
),
),
),
),
),
Container
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
screenSize
.
width
*
0.15
),
width:
screenSize
.
width
,
width:
screenSize
.
width
,
child:
ListTile
(
child:
ListTile
(
minLeadingWidth:
2
,
minLeadingWidth:
2
,
...
@@ -325,17 +230,13 @@ class FooterSmall extends StatelessWidget {
...
@@ -325,17 +230,13 @@ class FooterSmall extends StatelessWidget {
style:
GoogleFonts
.
poppins
(
style:
GoogleFonts
.
poppins
(
fontSize:
13
,
fontSize:
13
,
height:
1.45
,
height:
1.45
,
letterSpacing:
1.1
letterSpacing:
1.1
),
),
textAlign:
TextAlign
.
center
,
textAlign:
TextAlign
.
left
,
),
),
)),
)),
),
),
],
],
),
),
],
],
)),
)),
),
),
...
@@ -380,8 +281,252 @@ class itemBawah_small extends StatelessWidget {
...
@@ -380,8 +281,252 @@ class itemBawah_small extends StatelessWidget {
color:
const
Color
(
0xff1e5ea8
),
color:
const
Color
(
0xff1e5ea8
),
//decoration: TextDecoration.underline,
//decoration: TextDecoration.underline,
fontSize:
17
,
fontSize:
17
,
letterSpacing:
1.2
letterSpacing:
1.2
),
),
));
));
}
}
}
}
class
ApiLinkedin
extends
StatefulWidget
{
const
ApiLinkedin
({
Key
?
key
})
:
super
(
key:
key
);
@override
State
<
ApiLinkedin
>
createState
()
=>
_ApiLinkedinState
();
}
class
_ApiLinkedinState
extends
State
<
ApiLinkedin
>
{
@override
Widget
build
(
BuildContext
context
)
{
return
FutureBuilder
<
List
<
dynamic
>>(
future:
getLnDesc
(),
builder:
(
BuildContext
context
,
AsyncSnapshot
snapshot
)
{
var
pgm
=
snapshot
.
data
[
0
];
if
(
snapshot
.
hasError
||
snapshot
.
data
==
null
||
snapshot
.
connectionState
==
ConnectionState
.
waiting
)
{
return
const
CircularProgressIndicator
();
}
return
IconButton
(
onPressed:
()
{
// ln = ;
launch
(
pgm
[
'linkedin'
]);
// _launchLinkedIn();
},
icon:
const
Icon
(
FontAwesomeIcons
.
linkedinIn
,
size:
25
,
),
iconSize:
35
,
color:
Colors
.
black
);
},
);
}
}
class
ApiTwitter
extends
StatefulWidget
{
const
ApiTwitter
({
Key
?
key
})
:
super
(
key:
key
);
@override
State
<
ApiTwitter
>
createState
()
=>
_ApiTwitterState
();
}
class
_ApiTwitterState
extends
State
<
ApiTwitter
>
{
@override
Widget
build
(
BuildContext
context
)
{
return
FutureBuilder
<
List
<
dynamic
>>(
future:
getTwDesc
(),
builder:
(
BuildContext
context
,
AsyncSnapshot
snapshot
)
{
var
pgm
=
snapshot
.
data
[
0
];
if
(
snapshot
.
hasError
||
snapshot
.
data
==
null
||
snapshot
.
connectionState
==
ConnectionState
.
waiting
)
{
return
const
CircularProgressIndicator
();
}
return
IconButton
(
onPressed:
()
{
// ln = ;
launch
(
pgm
[
'twitter'
]);
// _launchLinkedIn();
},
icon:
const
Icon
(
FontAwesomeIcons
.
twitter
,
size:
25
,
),
iconSize:
35
,
color:
Colors
.
black
);
},
);
}
}
class
ApiInstagram
extends
StatefulWidget
{
const
ApiInstagram
({
Key
?
key
})
:
super
(
key:
key
);
@override
State
<
ApiInstagram
>
createState
()
=>
_ApiInstagramState
();
}
class
_ApiInstagramState
extends
State
<
ApiInstagram
>
{
@override
Widget
build
(
BuildContext
context
)
{
return
FutureBuilder
<
List
<
dynamic
>>(
future:
getIgDesc
(),
builder:
(
BuildContext
context
,
AsyncSnapshot
snapshot
)
{
var
pgm
=
snapshot
.
data
[
0
];
if
(
snapshot
.
hasError
||
snapshot
.
data
==
null
||
snapshot
.
connectionState
==
ConnectionState
.
waiting
)
{
return
const
CircularProgressIndicator
();
}
return
IconButton
(
onPressed:
()
{
// ln = ;
launch
(
pgm
[
'instagram'
]);
// _launchLinkedIn();
},
icon:
const
Icon
(
FontAwesomeIcons
.
instagram
,
size:
25
,
),
iconSize:
35
,
color:
Colors
.
black
);
},
);
}
}
class
ApiYoutube
extends
StatefulWidget
{
const
ApiYoutube
({
Key
?
key
})
:
super
(
key:
key
);
@override
State
<
ApiYoutube
>
createState
()
=>
_ApiYoutubeState
();
}
class
_ApiYoutubeState
extends
State
<
ApiYoutube
>
{
@override
Widget
build
(
BuildContext
context
)
{
return
FutureBuilder
<
List
<
dynamic
>>(
future:
getYtDesc
(),
builder:
(
BuildContext
context
,
AsyncSnapshot
snapshot
)
{
var
pgm
=
snapshot
.
data
[
0
];
if
(
snapshot
.
hasError
||
snapshot
.
data
==
null
||
snapshot
.
connectionState
==
ConnectionState
.
waiting
)
{
return
const
CircularProgressIndicator
();
}
return
IconButton
(
onPressed:
()
{
// ln = ;
launch
(
pgm
[
'youtube'
]);
// _launchLinkedIn();
},
icon:
const
Icon
(
FontAwesomeIcons
.
youtube
,
size:
25
,
),
iconSize:
35
,
color:
Colors
.
black
);
});
}
}
class
TelphoneApi
extends
StatefulWidget
{
const
TelphoneApi
({
Key
?
key
})
:
super
(
key:
key
);
@override
State
<
TelphoneApi
>
createState
()
=>
_TelphoneApiState
();
}
class
_TelphoneApiState
extends
State
<
TelphoneApi
>
{
String
no
=
''
;
@override
Widget
build
(
BuildContext
context
)
{
var
screenSize
=
MediaQuery
.
of
(
context
).
size
;
return
FutureBuilder
<
List
<
dynamic
>>(
future:
getSettingDesc
(),
builder:
(
BuildContext
context
,
AsyncSnapshot
snapshot
)
{
var
pgm
=
snapshot
.
data
[
0
];
if
(
snapshot
.
hasError
||
snapshot
.
data
==
null
||
snapshot
.
connectionState
==
ConnectionState
.
waiting
)
{
return
const
CircularProgressIndicator
();
}
return
Container
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
screenSize
.
width
*
0.15
),
width:
screenSize
.
width
,
child:
ListTile
(
minLeadingWidth:
2
,
leading:
const
Icon
(
Icons
.
phone
,
size:
19
,
color:
Colors
.
black
,
),
title:
TextButton
(
onPressed:
()
{
no
=
pgm
[
'no'
];
//02157958040
launch
(
'tel:
$no
'
);
},
child:
Text
(
pgm
[
'no'
],
style:
GoogleFonts
.
poppins
(
fontSize:
14
,
color:
Colors
.
black87
,
letterSpacing:
1.5
),
)),
),
);
},
);
}
}
class
EmailAPI
extends
StatefulWidget
{
const
EmailAPI
({
Key
?
key
})
:
super
(
key:
key
);
@override
State
<
EmailAPI
>
createState
()
=>
_EmailAPIState
();
}
class
_EmailAPIState
extends
State
<
EmailAPI
>
{
String
email
=
''
;
@override
Widget
build
(
BuildContext
context
)
{
var
screenSize
=
MediaQuery
.
of
(
context
).
size
;
return
FutureBuilder
<
List
<
dynamic
>>(
future:
getSettingDesc
(),
builder:
(
BuildContext
context
,
AsyncSnapshot
snapshot
)
{
var
pgm
=
snapshot
.
data
[
0
];
if
(
snapshot
.
hasError
||
snapshot
.
data
==
null
||
snapshot
.
connectionState
==
ConnectionState
.
waiting
)
{
return
const
CircularProgressIndicator
();
}
return
Container
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
screenSize
.
width
*
0.15
),
width:
screenSize
.
width
,
child:
ListTile
(
minLeadingWidth:
2
,
leading:
const
Icon
(
Icons
.
mail
,
size:
19
,
color:
Colors
.
black
,
),
title:
TextButton
(
onPressed:
()
{
email
=
pgm
[
'email'
];
launch
(
'mailto:
$email
?subject=Info Medapp'
);
},
// child: SettingAPI(),
child:
Text
(
pgm
[
'email'
],
style:
GoogleFonts
.
poppins
(
fontSize:
14
,
color:
Colors
.
black87
,
letterSpacing:
1.1
),
)),
),
);
},
);
}
}
lib/widget/componen.dart
View file @
90e1188c
...
@@ -11,7 +11,6 @@ export 'package:medapp_eksad/screen/solution/our_solution.dart';
...
@@ -11,7 +11,6 @@ export 'package:medapp_eksad/screen/solution/our_solution.dart';
export
'package:medapp_eksad/screen/solution/our_solution2.dart'
;
export
'package:medapp_eksad/screen/solution/our_solution2.dart'
;
export
'package:medapp_eksad/screen/contact_us/contact_us1.dart'
;
export
'package:medapp_eksad/screen/contact_us/contact_us1.dart'
;
export
'package:medapp_eksad/screen/contact_us/contact_us2.dart'
;
export
'package:medapp_eksad/screen/contact_us/contact_us2.dart'
;
export
'package:medapp_eksad/screen_small/small_footer.dart'
;
export
'package:medapp_eksad/screen_small/small_contact/small_contact_us1.dart'
;
export
'package:medapp_eksad/screen_small/small_contact/small_contact_us1.dart'
;
export
'package:medapp_eksad/screen_small/small_contact/small_contact_us2.dart'
;
export
'package:medapp_eksad/screen_small/small_contact/small_contact_us2.dart'
;
export
'package:medapp_eksad/screen_small/small_home/small_home1.dart'
;
export
'package:medapp_eksad/screen_small/small_home/small_home1.dart'
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment